[Lenovo A7000 ROMs, Kernels, Recoveries, & Other De] tanish2k09:
Venom v4 - DP6 MTKILLER 20180513

Kernel link :

Unified zip for all MM+N+O : http://bit.ly/Venomv4-DP6

This is a completely revamped zip which is smart enough to select the correct kernel, and flash with correctly on the correct android version. The Marshmallow ROMs which used to bootloop before will no longer bootloop. You can flash this zip on ANY rom and the zip will handle the rest. :D

How to install :

1) Download

2) Flash from twrp

3) Reboot.

CHANGELOG (Spoiler : It's HUUUUGGEEEEEE)

​

Fastest ever build. Buttery smooth and fluid. The best MTK kernel ever built. #TheSpeedYouNeed

In MM/N kernels, LED hybrid for vibe and custom ROMs. This means that there is no need to make separate kernels for vibe ROMs.

Added voltage interface (But that's majorly for very advanced users. Don't use it if you don't know what it can do).

Added ability to overclock CPU to 1.7ghz. By default only stock frequencies are used. (Open kernel adiutor and increase max freq to overclock).

Fixed mt_cpufreq.c and cpufreq.c (scaling_max_freq) to forcefully make CPU follow the frequency limits. You can see in devil or daredevil or any other kernel that if you set max frequency at 1287mhz, the CPU will still go to 1495mhz if you try to add load on CPU (like scrolling). That is what this point fixes.

Disabled MTK's low-battery performance restrictions on CPU and GPU. Now CPU can stay at max frequency even below 15% battery but only max 4 CPU cores will be allowed by default. You can change it from /proc/cpufreq/cpufreq_mtk_cpunum_throttle files. GPU has no performance restrictions now, thanks to me. :D

MTK's own limited_max_freq_by_user is now READ-ONLY in kernel, to remove conflict with my files in above point.

Disabled MTK's cpufreq boost and added dynamic boost+touch boost instead for CPU.

GPU can now be overclocked from 598 to 728 along with input boost which now obeys my policy instead of mtk bumping. Overclock bool path is /proc/gpufreq/allow_gpu_oc_700.

Added gaming_mode in poison. It will keep max frequency, or above 1495 if limits permit it, when screen is on. On screen off poison will return to the normal "smart" mode which scales according to load. Gaming mode also keeps 4 cores enabled all the time. This will give a much better frame rate and performance but will use more battery.

Added config.gz support. You can literally see the kernel config which the kernel was compiled with from /proc/config.gz

Disabled battery-related performance drops on the GPU. No longer frame rate drop at 15%

Added frandom

Game mode will now lock 4 cores permanently on screen on. Screen off will become normal.

Dynamic boost + touch boost added. Input now boosts 4 cores externally but frequency is set using poison's algorithms.

Busted minor warnings in Poison.

Removed KSM. This means more battery.

Revamped twrp scripts completely! Unified zip with mtk legacy support. Just flash the zip on any ROM and zip will handle rest automatically.

More secure flashing (no loopholes)

Fixed phone call gesture activation. Gestures won't work in call now. If you face any issues with gestures in call, lemme know.

Tweaked cpufreq voltages to stabilize the overclocked frequencies. Higher frequency generates more heat.

Made MM/N kernel engineer build instead of normal. Engineer builds have all internal settings unlocked in procfs and sysfs. Oreo is normal build and will not be made engineer build.

Changed ramp up step default value in Poison to 1495000 for smoother scrolling.

Battery drain config set to 60. This means that the battery drain will come around 60-50%

Added haptic feedback vibration factor to make the vibes "shorter". Path : /sys/devices/virtual/timed_output/vibrator/haptic_factor (Higher value = Shorter vibe) (Value range : 100-1000)

(Danger : Not recommended above 200. Vibrator is practically not working at that value and above.)

Improved cust_vibrator by reducing the activation timer which results in a quicker ting like the better devices. However, we are restricted by the hardware so it can only be improved to a limit.

MM/N kernel are now forced-permissive in kernel source. No external command or app or ROM can make it enforcing.

Fixed init.d patch in script

Maxed out the entropy to max-pool-size for the best snappy experience. And it helps with I/O also. Good for gaming.

All the gestures are now in a single build. For more battery without gestures you can go to poison tunables and enable force_disable_gestures_hard. For RRN5.8.5 and ViperOS 3.1.1 smartwake gestures are enabled by default. For other ROMs, there's a switch for smartwake_overrides_customgestures which can be disabled to use the wake gestures of ElementalX kernel using this app : Wake-gestures-app. Wake gestures give you full control of the actions of the gestures. Swipe up,down,left,right, double-tap to toggle flash, open apps or trigger actions. Anything. Huge thanks to ceco89 and flar2.

Gestures sysfs files now change dynamically according to the selected gestures mode. Smartwake mode will hide s2w,s2s and wake gestures files. Enabling wake gestures will now hide smartwake files and enable s2s,s2w,wakegestures files. DT2W has been rewritten to work independently in case of smartwake and when wakegestures are disabled. DT2W attaches to wake gestures when wake gestures are enabled via changing smartwake_overrides_customgestures to 0 and opening the app linked above.

Added customisable haptic feedback for wake gestures and s2w via poison tunable "s2w_vibe".

Adding all gestures together means that any ROM can use gestures in one way or the other. Everyone benefits together. No need for separate gestureless builds, wake gesture builds and smartwake builds. Just one build to rule them all. #Hybrid

Fixed a bug in gestures when disabling dt2w causes every other gesture to stop working.

Changed Venom's overall theme. The theme is a CPU filled with poisonous green liquid. The zip will flash a venom bootlogo on your device, special thanks for making logos to Oppa Rudy.

Added automatic brightness dimmer at display-level which can activate and deactivate itself automatically at set hours. To enable timed brightness dimmer, go to Poison and change brightness_lvl_auto_enable to 1. Start and end times are controlled by brightness_lvl_auto_hour_start and brightness_lvl_auto_hour_end. The reduction of brightness level is set by brightness_lvl (lower is darker)

Added tunable "force_enable_gestures_charging" which can enable screen gestures when charging. Use along with force_disable_gestures_HARD to save battery while not charging and enable gestures when charging. By default both are disabled and gestures work all the time.

Improved Livedisplay a lot internally in Poison and mtk_disp_mgr. Now if you enable livedisplay from kernel, it will remove lineageOS's access and it won't conflict anymore. Only kernel part will work.

Removed extra useless CPU governors. Who would even need anything other than poison.

Removed the "modes" from Poison. Only kept rewritten (and much better) gaming_mode.

Latest wireguard patch added.

Disabled 5Ghz WiFi support to fix open hotspot