[YU Yureka Original Android Development] Shoaib05:
Update---

Velocity Kernel v14.0!!! :cool:

Changelog---

1. Merged Latest CM's Source Updates into Velocity's Source (contains many improvements).

2. Updated the Linux Base Version to the latest one of 3.10 branch i.e., 3.10.104 (contains BUG-Fixes). *NEW

3. Updated the PowerSuspend Drivers to the latest version i.e., v1.7 (should improve Battery-Life).

4. Added Support for Impulse 2016 Edition Governor (a Balanced Governor for smooth performance and decent Battery-Life). *NEW

5. Added Support for State Notifier Driver (an Optimized mechanism for knowing about Panel's State). *NEW

6. Tuned the LionFish Governor (for better Performance). *NEW

7. Modified the Touch-Boost to be user-controllable (In CM, it is enabled by default and is not user-controllable. This makes the Battery deplete much faster. In my kernel, it is disabled by default and is also user-controllable.). *NEW

8. Improved the Thermal Mechanism (better Heat-Management without much degradation in Performance). *NEW

9. Tuned the Interactive Governor for Efficient operation and more Power-Savings. *NEW

10. Removed Franco's Sound Control (Although, I ported it in the best possible manner, it still wasn't quite upto my standards.).

11. Removed the stock CyanogenMOD Core Control Feature (the current implementation wasn't as Efficient as it should have been in reducing Heat and improving Battery-Life). *NEW

12. Minor BUG-Fixes and Improvements.

Now, the Highlights of v14.0 (unique features which only Velocity Kernel offers for Yu-Devices)---

1. Core Control v2.0---

Built from scratch by me, this version of Core Control is much more efficient than the stock one. In this version, Cores are disabled according to temperature in a much more optimized manner. Further, this Core Control of mine, offers efficient Heat-Management as well as improved Battery-Life. To sum up, this is the best Core-Based Heat-Management Technique for Yu-Devices.

2. Faux Sound Control v4.1---

In this Sound Control, I have used Faux Sound v3.6 as base and on top of it, I have modified, fixed and enhanced the Driver. All of the changes are done by me! I have named this version as v4.1 because I have made 5 changes to the Driver (v3.6 + 5 Changes = v4.1). Coming to the point, this Sound Control is finally the best one. I have worked hours on it to port and fix it in the best way. Thus, now, there is no Low-Volume issue. Further, even the Negative Values work too. Also, the Volumes are boosted without distortion now i.e., higher Volumes can be achieved easily. Also, now, there is a fully functional Enable/Disable Toggle for Sound Control. To bring this feature and make it Compatible with the Modified Kernel Adiutor, I did a very clever workaround too. To sum up, this is indeed the best Sound Control for Yu-Devices with No BUGs.

3. Perfect Core-HotPlug Mechanism---

In this version of my kernel, I have added two HotPlugs, AutoSMP and State Helper. Now, you may ask what is unique about it? Well, I have just used these HotPlugs as base. On top of these HotPlugs, I have done huge modifications, wrote many new Codes and worked on them many hours and I am very happy with the results.

AutoSMP (Modified)---

I have modified this HotPlug to only work as an On/Off Toggle. I have removed all the Options and Codes to make this HotPlug lightweight. Th only function of this HotPlug now is to turn an Octa-Core Soc into a Quad-Core one retaining the HMP or big.LITTLE technique. This will allow much more Power-Savings without degrading Performance as well as lesser Heat too.

State Helper (Modified) v2.0---

I have modified this HotPlug to a great extent. The original State Helper was only meant for Normal Architectures and not big.LITTLE architectures. I worked on this HotPlug to make it support big.LITTLE architecture as well as I have Optimized it to Perform in an efficient way too. Also, I have fixed a critical BUG of this HotPlug. Further, I have removed the unnecessary Codes to make it lightweight. Since I have Optimized this HotPlug for big.LITTLE architecture, this HotPlug now offers the ability to disable the big Cluster completely. Further, this HotPlug also offers the ability to turn an Octa-Core HMP Soc to a Hexa-Core one just like the setup of Snapdragon 650. This Optimization allows for Extreme Power-Savings.

These Core-HotPlug mechanisms offer the best way to Control the Cores for managing Heat and Improving Battery-Life. The best part is that users can control these HotPlugs to find the Perfect Combination according their usage. Also, an important point about these HotPlugs is that they are not Load-Based ones. These HotPlugs don't use CPU-Resources and thus offer Better Battery-Life and Lesser CPU-Usage. To sum up, I have Modified and Optimized these HotPlug in the best possible manner. These HotPlugs are the best ones for Yu-Yureka/Yureka PLUS.

4. Perfect OverClock for Snapdragon 615 1st Gen SoC---

As you all know, our devices seem to use the 1st Gen of SD615 SoC. Probably, that's why, we have 1.5 GHz of Max. Frequency. Further, due to great variations among the same SoC, developing OC to work on every device is a very difficult task. The Max. Frequency that our SoC can run properly is 1.7GHz. Above it, the SoC fails to boot. Further, kernels which were offering OCs above 1.7GHz were containing fake OCs i.e., only the numbers change, not the actual Frequency. Now, after weeks of testing by myself as well as some very good testers, I have managed to find the perfect way of implementing the 1.7GHz and 1.2GHz OC Frequency for big and LITTLE Cluster respectively. In my implementation of the OC, I have applied an Efficient Voltage Distribution technique. This allows to not only consume the least amount of Power but also helps in achieving Perfect Stability i.e., the OC will work on every Device irrespective of Revisions. Further, people who choose to not use the OCs, then the kernel will return to use the stock voltages thus providing the same level of efficiency as the stock kernel.

5. Load Shifter---

As I have already discussed in the Load Shifter's own thread, this feature transfers the Workload from the big Cluster to the LITTLE CLuster. Even the Android Background Processes are forced to run on the LITTLE Cluster with the help of this feature. Since we use LITTLE Cluster for most of the tasks except Gaming, there are considerable Gains in Battery-Life as well as Lesser Production of Heat.

Notes---

1. Due to variations in SoC, the Sound Control will work properly at different levels of Volume for different people. For ex, value 5 of Mic Gain may be too loud for some but too low for others. So, you people have to find out the perfect value for yourselves. By the way, value 10 of Mic Gain is known to be the most suitable for every device.

2. In order to avoid conflicts, I have added a failsafe regarding Core-Control and Core-HotPlug Mechanism. This means, out of AutoSMP, State Helper and Core Control, only one can be used at a time. Even if you try to enable each one of them simultanouesly, they won't get enabled. I have done this to avoid malfunctions.

3. After manually changing the CPU Governor or Frequency, all the Cores will come online even if any HotPlug is enabled. So, you just need to re-enable any HotPlugs you were using in order to disable the Cores again.

4. Currently, AOSParadox ROM and a few other voLTE enabled ROMs too have 100% Core-Load Issue. This leads to more Heat-Generation. Further, High CPU-Usage makes Charging Time a lot slower as well as decreases the Battery-Life by a large margin. Until this BUG is fixed, nothing much can be done to improve upon these areas.

5. Sometimes, enabling Core Control may cause the ROM to hang. In this case, rebooting via ROM doesn't work. So, just press and hold Power button until the phone restarts.

6. When Core 0 gets disabled (due to Core Control or State Helper HotPlug), Adiutor fails to get Frequency and Governor information and hence shows 0MHz in Frequency Panel and Blank Space in Governor Panel. This is normal. In this case, if you need to change Governor or Frequency, then you need to disable Core Control or State Helper HotPlug as the case may be. After this, force close Adiutor and then re-open it. This will make Adiutor get CPU information again.

Recommended Settings are also updated!!!

That's it folks! My best creation till date for Yu-Devices. My aim was always to improve the experience we get from our phones and provide the users with control over everything. Today, I have achieved that goal. This became possible only due to months of hard-work by me and testing-work done by some very reliable testers.

Testers (without these people, developing a Stable and BUG-Free Kernel would be near to impossible)---

dixan43

Bijendra barman

Frozen_Lemon

Ryuk and many others were there, thanks to all of you!!!

Download Links---

For all Lollipop (5.1.1) and Yu-OS ROMs---

https://www.androidfilehost.com/?fid=385035244224394352

For Marshmallow (6.0.x) ROMs only---

https://www.androidfilehost.com/?fid=529152257862677379

For AOSParadox 3.x (6.0.x) ROM only---

https://www.androidfilehost.com/?fid=529152257862677377

Enjoy the most efficient and thoughtfully made Kernel.