[Kernel]Vivid ICS(v007)OC~1.73GHz/UV/ZRAM/Intellidemand/DualCore/PowerSaving[Jun-07] - HTC Vivid, Raider, Velocity

NOTICE: This is COMPATIBLE with ALL Vivid Rooted Stock and Custom ROMs
For frequency control use fauxclock from Google Play
Just a statement regarding kernel source: The Kernel Source is of course covered under GPL version 2. Free software does NOT mean no work or time was spent working on it. I have donated a large sum of my free time to hack this kernel. If you use my modified kernel source in parts or in its entirety, I kindly ask you mention its origins and to send me a github pull request or PM whenever you find bugs or think you can help improve my kernel hack further. This way the entire community will truly benefit from the spirit of open source. Thank you
​
Hi XDA members and fellow Vivid users:
This is my tenth kernel hack. I want to thank Erasmux, and several others I cannot recall for inspiring me to venture into this unfamiliar territory for me.
What is a Kernel? The Kernel is the Foundation in which everything else builds upon in any software system.
[Car Analogy]: Kernel is like the Engine, Electrical system and the Transmission to a car. The Library, Framework and the Apps [AKA ROM] are the body frame and the rest of the Car.
​
THIS KERNEL is BASED ON HTC Source Code. So it is COMPATIBLE ONLY WITH HTC ICS Vivid Builds.
Please DO NOT use any task killers, they DO NOT improve performance nor battery life. They INTERFERE with your phone's stability (more crashes) and App compatibilities (Forced Close).
CleanCache (via ZCache backend)
ZCACHE is a new technology I introduced to HTC Kernel. ZCACHE is a compressed cache similar to ZRAM but the similarity ends there. ZCache is meant to provide as many "cleancache" pages (non-dirty or untouched "virgin" memory) to apps that request for new memory. CleanCache is very easy to allocate and no additional penalty are required to hand them out, so having more CleanCache pages will improve performance. Under heavy memory pressure, often times the kernel will NOT have enough CleanCache pages, so the kernel has to do EXTRA work to reclaim dirty cache pages and clean them for the new apps that's requesting for them. The described process creates a performance hit for the kernel and the app, so the idea is to use compression to create more CleanCache pages available for use. Of course there's a penalty to pay for using compression, but the trade-off between compression penalty and the penalty for reclaiming dirty cache pages and allocating them after cleaning is smaller for compression, so in the end, CleanCache should add more performance.
ZRAM (aka CompCache aka RAMZSwap)
ZRAM is an updated version formally known as CompCache and RAMZSwap. It was originally designed for 2.6.38.xx kernels, I have backported to our 2.6.35.xx kernel. ZRAM allows real-time compression of memory objects in RAM thus reducing memory pressure for the Linux kernel and can keep more apps in memory longer (more apps in RAM == better performance, less fetching from slower MMC or SDCard). Compression, however, is not Free. Some CPU cycles are required to do the compress/decompression, so there's a slight penalty for it. The original CompCache / RAMZSwap required a user space binary to control its behavior which adds additional penalty to performance, but the new version ZRAM eliminated the need for a separate dedicated daemon, thus reducing the overhead and increased performance from the old CompCache by 20%. Therefore, with the newer implementation of ZRAM interface, the performance penalty is almost negligible.
Joe's RCU (Optimized for Small SMP systems)
Joe Korty has created an RCU for small SMP systems (> 32 cores). His approach is to isolate all the Garbage Collection (GC, a slow time consuming but necessary processing) to a single core, thus allowing other cores to ONLY work on real required processing. This will allow the additional cores to complete their assigned tasks as fast as possible (not bogged down by GC) then immediately go back to a suspended state (saving battery).
Fast No Hz RCU (Optimized for SMP operations)
Fast NoHz is an optimized version of the traditional Tree RCU. Many new kernels are using the Tickless NoHz design. This RCU is tailored and designed to work with the new NoHz kernel system.
SmartAssV2 Governor (Balanced)
This governor has a built-in "profile" similar to SetCPU, so screen off will use lower clock rate thus conserve more battery, but it also has a fast wake up feature so that user interaction will not see the lag when switching from Sleep to Wake state.... (So SetCPU Profiles are sorta redundant when using this governor, you can still use SetCPU to OC to higher than default Clock frequency).
Interactive Governor (Performance)
This governor is designed to put more priority to User Interface (UI aka Apps) tasks, therefore appears more responsive then the traditional OnDemand governor. So if you want the smoothest UI interaction, this governor is for you...
Brain F*ck Scheduler - (BFS)
This scheduler is designed to be simple and speedy tailor specifically for user interface type systems such as desktop/smart phone devices where user interaction is MORE important than serving 1 million web requests (CFS, the default scheduler) at the same time (think of nimble desktop workstations vs large corporate servers).
SLQB - (SLAB allocator with Queue)
This memory allocator is designed for small number of CPUs system (such as desktop or smart phone devices). This allocator is design to be simple and it is optimized for using order-0 pages as much as possible (order-0 pages are the simplest therefore quickest type of memory in a Linux system to allocate). Not all kernels are using SLQB including CM7 main line...
Fair Budget Queue (BFQ I/O scheduler)
This I/O scheduler is an improvement on top of Completely Fair Queue (CFQ). CFQ is fair in terms of time but not in terms of throughput / bandwidth, so BFQ make sure that both time and throughput / bandwidth are balanced across all requests.
Kernel Files:
******* Ice Cream Sandwich (Android 4.0.x) ******* (Linux 3.0.33)
[ CFS ] (Ultimate Edition) *** S-ON ***
The File ==> Vivid Kernel 007 (1.73 GHz, GPU @ 320MHz, ZRAM) <==
[ CFS ] (Ultimate Edition) *** S-OFF ***
The File ==> Vivid Kernel 007 (1.73 GHz, GPU @ 320MHz, ZRAM) <==
[ Optional: ]
Files to DISABLE Sweep2Wake:
http://forum.xda-developers.com/showpost.php?p=25538084&postcount=6616
[ For Kernel Devlopers ONLY: ]
The File ==> My Global VDD_TABLE for under volt patch <==
The File ==> KGSL Ring Buffer Power Management Patch for Cordy and Ninja Jump <==
Optional Under voltage: Version 0.1.4+ ONLY
Code:
[ to over volt ALL frequencies by 25000 uv (microvolts) ]
echo "+25000" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels
[ to under volt ALL frequencies by 25000 uv (microvolts) ]
echo "-25000" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels
[ to set a specific frequency (ie 1.18 GHz)
with a specific voltage (ie 1.0875 volts) ]
echo "1188000 1087500" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels
CPU Frequency Voltage Table Example
Code:
192000: 812500
310500: 812500
384000: 812500
432000: 812500
486000: 837500
540000: 850000
594000: 862500
648000: 875000
702000: 900000
756000: 925000
810000: 937500
864000: 962500
918000: 962500
972000: 962500
1026000: 975000
1080000: 987500
1134000: 1000000
1188000: 1012500
1242000: 1025000
1296000: 1050000
1350000: 1075000
1404000: 1100000
1458000: 1112500
1512000: 1125000
1566000: 1150000
Optional: Stock Clock Frequencies for Dual CPUs
Code:
su
echo 192000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo 1188000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
echo 1 > /sys/devices/system/cpu/cpu1/cpufreq/online
echo 192000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
echo 1188000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq
Optional: ZRAM (Compressed RAM swap space )
Code:
su
mkswap /dev/block/zram0
swapon /dev/block/zram0
Low Voltage - Under Volt the processor, therefore uses Less Battery, but NOT ALL CHIPS can handle Under Volt.. If you experience instability, try the Stock Voltage Version.
Stock Voltage - Uses the voltage values from ORIGINAL HTC Kernel Source.
There are NO PERFORMANCE DIFFERENCE between the Under Volted and Stock Voltage versions!
Installation Instructions:
Here's a step by step instruction to install this kernel:
1. download the above file (via phone directly or to a PC)
2. copy the downloaded zip file to /sdcard/download/
3. Open ROM Manager and select "Reboot into Recovery" and select "OK"
4. Once in recovery, select "wipe cache partition", select "Yes", then select "advanced", then select "Wipe Dalvik Cache", then select "Yes" again. Once finished, click the back button to go back to the main recovery menu. On that menu, select "Install Zip From SDCad", then select "Choose zip from SDCard", then go to /sdcard/download and select the downloaded zip file and let it run its script.
5. Once the script is done, select "reboot system now"
Note: After FLASHING, the first reboot may take longer than usual, please be patient... After the first reboot, it may lag during initial load (let everything finish loading). Once everything is loaded and phone is ready for use, reboot the phone a 2nd time and the lag will be gone and everything should be silky smooth...
NEWS BULLETIN:
Ice Cream Sandwich Version 007 is out. More intelligent intellidemand! Completely free yourselves from mpdecision, thermald and now with intellidemand, complete CPU/Thermal Management by the kernel.
Please don't hesitate to talk among yourselves and help each other out... The XDA community is what inspired me to hack kernels for everyone since everyone here is nice and helpful to each other... Keep helping each other.... Famous proverb: It's better to give than to receive...
BUGS:
Not All CHIPS ARE CREATED EQUAL
TO DO:
version 1.x.x -- Haven't thought about it yet...
History:
[ Change Log ]
Standard Disclaimer: Not responsible for bricking your phone, voiding your warranty, or any other pain or suffering you may feel as result of using this kernel!!!
My Github Complying with GPL and XDA rulez
Follow me on
:
If you find this Kernel useful, feel free to hit the [Thanks] button below

Awesome!! Can't wait to try it!
Sent from my HTC PH39100 using XDA

Thank you so much.. faux123~

Faux your a god.

Sweet....
Anyone install yet and have feedback to report?

Boot Loop
No go for me.
It gave me a reason to update to the new AT&T RUU.
May try again after clean install.

Going to flash stock rooted cwm then maybe this will report back.

ismoore said:
Anyone install yet and have feedback to report?
Click to expand...
Click to collapse
Well it's fast in quadrant scores. I got like a 3560 and in that test CPU scores are significantly higher. Antutu benchmark scores with no overclock are the same as stock. All else felt the same. I'm running this kernel with WC's 3.6 Vivid ROM. Still appreciate the contribution faux! I have run your kernels on other phones and they are always the best!

Now why would Window XP forget my android 1.0 drivers for hboot? can't flash anything in hboot now...

Great, thanks for the info. May try this tonight when I get home. Thanks for your efforts faux.
brwnohno said:
Well it's fast in quadrant scores. I got like a 3560 and in that test CPU scores are significantly higher. Antutu benchmark scores with no overclock are the same as stock. All else felt the same. I'm running this kernel with WC's 3.6 Vivid ROM. Still appreciate the contribution faux! I have run your kernels on other phones and they are always the best!
Click to expand...
Click to collapse

My wifi isn't working, it just says "turning on...". Other than that, it works great

**** mines bootlooping its get the att and loops what should i dooo? I got the latest cwm, and hboot, stock rooted rom. Is it because I let it try to boot right after I flashed the boot.img and didn't flash cwm strait after?

haloXgod117 said:
My wifi isn't working, it just says "turning on...". Other than that, it works great
Click to expand...
Click to collapse
Brand New said:
**** mines bootlooping its get the att and loops what should i dooo? I got the latest cwm, and hboot, stock rooted rom. Is it because I let it try to boot right after I flashed the boot.img and didn't flash cwm strait after?
Click to expand...
Click to collapse
You shouldn't be flashing via cwm. I've included a script for pc tethered flashing. Just run flash.bat on pc with USB cable connected to the phone. You may need to run it twice if it failed to load the modules.
Sent from my HTC Sensation 4G using Tapatalk

faux123 said:
You shouldn't be flashing via cwm. I've included a script for pc tethered flashing. Just run flash.bat on pc with USB cable connected to the phone. You may need to run it twice if it failed to load the modules.
Sent from my HTC Sensation 4G using Tapatalk
Click to expand...
Click to collapse
So I could of flashed this on stock ICS? I didn't think you could OC with a non-rooted phone And I was bootlooping on the stock rooted rom not because of the your kernal I believe
iff this will help
Code:
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
D:\Documents and Settings\Noah>cd D:\Documents and Settings\Noah\Desktop\New Fol
der
D:\Documents and Settings\Noah\Desktop\New Folder>flash.bat
D:\Documents and Settings\Noah\Desktop\New Folder>adb kill-server
D:\Documents and Settings\Noah\Desktop\New Folder>adb remount
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
error: device not found
D:\Documents and Settings\Noah\Desktop\New Folder>adb push Modules/system /syste
m
error: device not found
D:\Documents and Settings\Noah\Desktop\New Folder>adb shell mv /system/bin/mpdec
ision /system/bin/mpdecision_dis
error: device not found
D:\Documents and Settings\Noah\Desktop\New Folder>adb shell mv /system/bin/therm
ald /system/bin/thermald_dis
error: device not found
D:\Documents and Settings\Noah\Desktop\New Folder>adb reboot bootloader
error: device not found
D:\Documents and Settings\Noah\Desktop\New Folder>fastboot flash boot Kernel-Her
e/boot.img
sending 'boot' (4348 KB)... OKAY [ 0.875s]
writing 'boot'... OKAY [ 4.984s]
finished. total time: 5.859s
D:\Documents and Settings\Noah\Desktop\New Folder>fastboot reboot
rebooting...
finished. total time: 0.188s
D:\Documents and Settings\Noah\Desktop\New Folder>pause
Press any key to continue . . .
D:\Documents and Settings\Noah\Desktop\New Folder>

can you make a aosp kernal

Nevermind Faux I figured it out! I just need to flash the boot.img that came with the stock rooted rom, then yours! I can't wait to test my battery now, games fly to!! Thanks for your support!!

SetCPU voltage tables are still nonfunctional, just like every other kernel I've tried.
come at me bro said:
can you make a aosp kernal
Click to expand...
Click to collapse
It would be easier to do so if we had a booting AOSP build right now, I think.

Having no issues here. Kernel is definitely smoother and faster than stock. Running fine on WC ROM. Hitting about 3350 on quadrant afer 5 consecutive runs. I haven't made and changes with setcpu, I'm assuming 1.5MHz from initial flash.
Sent from my HTC PH39100 using xda premium

Aus_Azn said:
SetCPU voltage tables are still nonfunctional, just like every other kernel I've tried.
It would be easier to do so if we had a booting AOSP build right now, I think.
Click to expand...
Click to collapse
thecubed's build boots but just barely and someone is working on a build right now I believe, so one day we might have working rom

Brand New said:
thecubed's build boots but just barely and someone is working on a build right now I believe, so one day we might have working rom
Click to expand...
Click to collapse
it boot loops with the proper builds , the one that boots is hacked up to hell

Related

[REF] Ext4 speed improvement with a safe mount option on /data

Hey everyone.
As I spend some time on studying Ext4 for the Galaxy S devices, working on Voodoo lagfix, and based on what I saw in mount logs it's possible that the performances could be increased without altering data integrity nor filesystem integrity in case of crash.
On /data, noauto_da_alloc is not used.
This option activates a sort of Ext3 emulation mode, which force sync on write close without sync.
It also comes with a speed penalty for SQLite writes, and is unneccessary when hardware barriers are enabled.
Barriers allow usage of delayed allocations without risk. Delayed allocations are the key to performance for modern filesystems.
as root:
Code:
mount -o remount,noauto_da_alloc /data /data
You can count on me to cook a kernel with this mount option as default
PS: this option is already used in Voodoo kernels for Galaxy S devices / has been chosen after extensive performance and reliability tests.
Okay, kevin_teslacoil run quadrant:
before:
<kevin_teslacoil> 1676 for the full quadrant bench mark
after:
<kevin_teslacoil> interesting
<kevin_teslacoil> 2422 this time
<GuiPer> :O
<Ibanez33> wtf?
I'm not a fan of quadrant, but used as a tool, it can give some useful infos
Also, note that this dramatic change in benchmark result won't be as incredible in real life usage.
But still, it's a better choice of configuration, using the filesystem driver like it should be given the hardware parameters.
Can this be implemented in Voodoo for SGS?
Reference, from man mount.
auto_da_alloc|noauto_da_alloc
Many broken applications don't use fsync() when noauto_da_alloc replacing existing files
via patterns such as
fd = open("foo.new")/write(fd,..)/close(fd)/ rename("foo.new", "foo")
or worse yet
fd = open("foo", O_TRUNC)/write(fd,..)/close(fd).
If auto_da_alloc is enabled, ext4 will detect the replace-via-rename and replace-via-trun‐
cate patterns and force that any delayed allocation blocks are allocated such that at the
next journal commit, in the default data=ordered mode, the data blocks of the new file are
forced to disk before the rename() operation is commited. This provides roughly the same
level of guarantees as ext3, and avoids the "zero-length" problem that can happen when a
system crashes before the delayed allocation blocks are forced to disk.
Click to expand...
Click to collapse
I'm trying this now.
jaju123 said:
Can this be implemented in Voodoo for SGS?
Click to expand...
Click to collapse
It's already implemented in Voodoo
Okay thanks
Still at it I see?
We lose this whenever we reboot I'm assuming?
Quadrant scores:
Before: 1672
After: 2334
Cook this into some good 1.2GHz OC/UV
We already know the Hummingbird can potentially hit 1.6
Its late, nevermid
Preparing a kernel with this option activated as default.
Anderdroid said:
We lose this whenever we reboot I'm assuming?
Quadrant scores:
Before: 1672
After: 2334
Cook this into some good 1.2GHz OC/UV
We already know the Hummingbird can potentially hit 1.6
Click to expand...
Click to collapse
fstab
10 char
Could you please implement this new mount option in your Vibrant "voodoo" kernels? Much appreciated! Thanks for your hard work, Curio!
zimphishmonger said:
Could you please implement this new mount option in your Vibrant "voodoo" kernels? Much appreciated! Thanks for your hard work, Curio!
Click to expand...
Click to collapse
Already told. This is the default mount option for Voodoo, after extensive analysis for both performance and filesystem+data integrity
I am using the latest of the trasig OC kernel for JPO and tried this options with no changes in quadrant. (1720)
deleted...................
Does this work on the galaxy tab?
futuregerald said:
Does this work on the galaxy tab?
Click to expand...
Click to collapse
no.
go to the galaxy tab section
Lagfix
So does this revert upon a reboot? I tried it on my SGTab and nothing happened, just want to make sure there is nothing i need to "undo" other than just rebooting. Thanks!
cba1986 said:
I am using the latest of the trasig OC kernel for JPO and tried this options with no changes in quadrant. (1720)
Click to expand...
Click to collapse
Doesn't work for me either on Galaxy S with JH3 (stock Telstra ROM other than root). Quadrant score actually dropped (916 to 896).

[Q] Does OB Kernel support init.d ?

Referring to this post [LINK], i'd like to know if someone have experience or tried this script
Don't know about original firmware, but Quasar kernel inside Nova ROM does support init.d indeed. Knzo already initializes lowmemorykiller adj and minfree parameters in his init.d script to 0,3,5,7,14,15 and 1536,2048,6656,7168,7680,8192 accordingly. What exactly is affected is still a mystery to me but I'll intend to find it out. Same goes for VM parameters. This is all just some kind of low level tweaking and I'm sure there are threads in this forum explaining it. I'll look around and post a follow-up here if I'll find anything useful.
Concerning the script itself it really doesn't hurt to try it out and just keep using it if you feel the difference. If not - delete it.
I don't know what it is with me and short scripts, but you can ditch the conditional statements as these files are there without checking anyway. The following script does the same as Juwe11's original script. Added comments with current values. Keep in mind that first 2 parameters are set by Nova ROM.
Code:
#!/system/bin/sh
# values taken from Juwe11 script
echo "0,1,2,4,6,15" > /sys/module/lowmemorykiller/parameters/adj # 0,3,5,7,14,15
echo "2560,4096,6144,12288,14336,18432" > /sys/module/lowmemorykiller/parameters/minfree # 1536,2048,6656,7168,7680,8192
echo "10" > /proc/sys/vm/swappiness # 0
echo "50" > /proc/sys/vm/vfs_cache_pressure # 1
echo "3000" > /proc/sys/vm/dirty_expire_centisecs # 1000
echo "500" > /proc/sys/vm/dirty_writeback_centisecs # 2000
echo "22" > /proc/sys/vm/dirty_ratio # 90
echo "4" > /proc/sys/vm/dirty_background_ratio # 70
At the moment i'm using the stock rom with original kernel, so i have to understand if this one use or not init.d.
@aprold: thanks for your input
Stock ROM doesn't support init.d.
I also don't recommend those values, the dirty ratios are too low and you shouldn't set adj values without their respective oom groupings.
Besides, swappiness=10 doesn't make any sense for us.
aprold said:
Keep in mind that first 2 parameters are set by Nova ROM.
Click to expand...
Click to collapse
Nope, Nova changes them all.
knzo said:
Nope, Nova changes them all.
Click to expand...
Click to collapse
Thank you for correcting me! Forgot that sysctl.conf is modified by you as well. Still educating myself on these kernel parameters...
knzo said:
Stock ROM doesn't support init.d.
...............
Click to expand...
Click to collapse
Does "stock" ROM + Quasarv8 kernel support init.d? How to take advance of it? I tried to make init.d folder with root explorer and put a script inside, but my script seems to be ignored..
Is there a way to achieve this?
@rgabi88: Sorry, not here to answer your question, came to fulfil my promise to comment on the before-mentioned script. Although I sincerely recommend to ditch the stock ROM.
Here are the things I learned today, please correct me if you find anything incorrect. The information below is gathered mostly from around here and you've probably already seen the bits and pieces of it. I've just written it down here to organize my thoughts and conclude the topic. I'll try to compare Juwe's script values to Nova values and come up with some kind of conclusion on the differences. I don't pretend to answer here many questions, on the contrary - this little investigation of mine raised them even more. Perhaps someone can comment on the questions in red? It's sad that kernel.org has been down for couple of weeks by now due to the security breach and there was no single source to turn to.
/sys/module/lowmemorykiller/parameters/adj
This file contains oom_adj values that specify which processes are killed of when minfree low memory limit is reached. Valid values range from -17 to 15 and value for each process is stored in /proc/<pid>/oom_adj file. The following script (purely for illustration) shows you oom_adj value for all the processes where this values is greater than 0:
Code:
#!/system/bin/sh
ps > $TMPDIR/ps.txt
echo -e "ADJ\tPID\tPPID\tUSER\tNAME"
while read user pid ppid vsize rss wchan pc s name; do
[ -f "/proc/$pid/oom_adj" ] && adj=$(head -n1 /proc/$pid/oom_adj) || adj=0
[ $adj -gt 0 ] && echo -e "$adj\t$name"
done < $TMPDIR/ps.txt
rm $TMPDIR/ps.txt
Juwe's values 0,1,2,4,6,15
Nova values 0,3,5,7,14,15
Here you can see that processes with negative oom_adj values are never killed off. Also Nova tries to kill processes later than Juwe. Question: who does (and based on what) specify the oom_adj values for processes in the first place?
Useful info here and here.
/sys/module/lowmemorykiller/parameters/minfree
This file contains numbers that represent amount of free memory when certain kind of applications get killed off. Values are in 4 kB pages (e.g. 1024 pages equals 4 MB). Applications fall into these categories:
FOREGROUND_APP: running currently on the screen
VISIBLE_APP: open and running in the background
SECONDARY_SERVER: service ready for use by an application
HIDDEN_APP: idle but still alive
CONTENT_PROVIDER: application that provides data to the system
EMPTY_APP: open but not used any more
So, the minfree file format is:
FOREGROUND_APP,VISIBLE_APP,SECONDARY_SERVER,HIDDEN_APP,CONTENT_PROVIDER,EMPTY_APP
Juwe's values: 2560,4096,6144,12288,14336,18432
Nova values 1536,2048,6656,7168,7680,8192
As you can also see that Nova is not in such a hurry to kill applications off which is good in a way that RAM is always in use as much as possible. Why would it be good to have free RAM in Android anyway?
This link has been very informative: http://www.androidcentral.com/fine-tuning-minfree-settings-improving-androids-multi-tasking
/proc/sys/vm/swappiness
This determines how aggressively the kernel swaps memory pages
Juwe 10
Nova 0
Does 0 for Nova mean that swap is completely turned off there?
/proc/sys/vm/vfs_cache_pressure
Controls the tendency of the kernel to reclaim the memory which is used for caching of directory and inode objects.
Juwe 50
Nova 1
Based on these values one would say that Nova tries to cache directories and inodes for as long as possible. When exactly does it get flushed then?
/proc/sys/vm/dirty_expire_centisecs
Defines when dirty data is old enough to be eligible for writeout by the pdflush daemons (in 100ths of a second).
Juwe 3000
Nova 1000
Nova will do this after 10 seconds, this is 3 times faster compared to Juwe. Is this timekeeping done for every data page or in larger blocks?
/proc/sys/vm/dirty_writeback_centisecs
Interval between pdflush writeback wakeups where 'old' data is written out to disk (again in 100ths of a second)
Juwe 500
Nova 2000
I understand that compared to Juwe this is done 4 times less frequently after every 20 seconds. Aren't these two values related in the sense that dirty_expire_centisecs/dirty_writeback_centisecs 1000/2000 is the same as 2000/1000?
/proc/sys/vm/dirty_ratio
Percentage of total system memory, the number of pages at which a process which is generating disk writes will itself start writing out dirty data.
Juwe 22
Nova 90
Here we can see again that Nova delays the actual disk writes for as long as possible.
/proc/sys/vm/dirty_background_ratio
Here is the percentage where pdflush does the job itself.
Juwe 4
Nova 70
dirty_ratio and dirty_background_ratio must be percentages from two different things otherwise pdflush would do the job at 70 % and there would be nothing left for process to do at 90 %. The link below says it to be MemFree + Cached - Mapped which is whole different thing than MemTotal
More info here
I must apologise to you who looked for the answers here but encountered only more and more questions. I know now that I don't know anything yet.
Regards,
Aprold
Wow!!!!!!!
rgabi88 said:
Does "stock" ROM + Quasarv8 kernel support init.d? How to take advance of it? I tried to make init.d folder with root explorer and put a script inside, but my script seems to be ignored..
Is there a way to achieve this?
Click to expand...
Click to collapse
The answer is NO....stock Rom + Quasarv8 Kernel don't support init.d.
But I have another question to knzo!? Why Nova doesn't use init.d !?
Maybe i'll be a newbie in this kind of kitchen, but reading init.rc inside boot.img I don't see the script to initialize init.d, while in system/etc the dir /init.d exists.
Could u explain me why don't u use init.d !?
Nova USES init.d!
Huexxx said:
Nova USES init.d!
Click to expand...
Click to collapse
furb3t said:
.......... but reading init.rc inside boot.img I don't see the script to initialize init.d, ................
Click to expand...
Click to collapse
I'm confused...where i'm wronging?!?! to read init.rc or to decompile boot.img (i don't believe) or init.d can be initialized by another script !?

[KERNEL][ROOT]The Ultimate Kernel for the HTC Desire 500

The Ultimate kernel for the HTC Desire 500, both one sim and dual sim!
Software version 1.32/1.26 only! It probably won't work on earlier versions, but it might work on later versions (1.34), I haven't tested that.
Use at your own risk!
Features:
/system write protection removed
two new frequencies added: 1300 and 1400 mhz
init.d support
intelli_plug
sweep2sleep
sweep2wake and doubletap2wake, both with pocket detection
ntfs read/write support
Governors added: SmartassV2 and Lulzactive
ioschedulers added: sio and fiops Default: sio
Fastcharge
Unsecure (ro.secure=0)
Click to expand...
Click to collapse
If you don't want to overclock your device, then simply choose the download link with no overclocking.
Requirements:
Unlocked bootloader
Custom recovery (cwm or twrp)
Fastboot installed
Click to expand...
Click to collapse
Installation instructions:
Download the latest boot.img
Boot your phone into fastboot mode
Open up your commandline
cd to the directory containing the boot.img
In the command line type: fastboot flash boot boot5.img
Boot into cwm/twrp
Wipe cache and dalvik-cache
If you don't have it yet (your phone is not rooted), flash SuperSU or superuser
Click to expand...
Click to collapse
Downloads:
Version 8: Not overclocked: boot8_no_oc.img, Overclocked: boot8_oc.img
Version 7: Not overclocked: boot7_no_oc.img, Overclocked: boot7_oc.img
Version 6: boot6.img
Version 5: boot5.img
Version 4: boot4.img
SuperSU: SuperSU
Click to expand...
Click to collapse
If your phone does not boot after installing an overclocked kernel, then try installing the not overclocked kernel.
Changelog:
Version 8:
Removed the underclocking, it was way too low, and caused wakeup issues
Added 1300 mhz frequency
Updated intelli plug from faux123's github
Updated to 1.34, many thanks to @0lvin
Little fixups on sweep2wake/doubletap2wake
Version 7:
Added overclocking up to 1400 mhz
Underclocking down to 19 mhz
Added sweep2wake and doubletap2wake
Added intelli plug, a replacement for Qualcomm's closed source mpdecision
Enabled perflock again
Version 6:
Add fastcharge
Version 5:
Disabled -O3 optimization
Version 4:
-O3 optimization
ntfs read/write support
Governors added: SmartassV2 and Lulzactive
ioschedulers added: sio and fiops Default: sio
Version 3 and below:
Check the Ultimate Thread
Click to expand...
Click to collapse
Kernel source:
https://github.com/dummie999/android_kernel_htc_z4u
Click to expand...
Click to collapse
Credits:
@flar2 for sweep2sleep
@xpirt for helping me with Smartass
@GreatEmerald for helping me with kernels in general
@eexter for testing for 1.26
@0lvin for updating to 1.34
To the devs:
Feel free to include this kernel in your rom/rooting tool. Just give proper credits and put a link to this thread in your rom thread (Required for GPL).
XDA:DevDB Information
The Ultimate Kernel, Kernel for the HTC Desire 500
Contributors
dummie999, 0lvin
Kernel Special Features: dt2w | s2w | intelli_plug | fastcharge | oc | init.d
Version Information
Status: Stable
Created 2014-10-14
Last Updated 2014-10-14
Reserved
Reserved
Upcoming features
* Intellidemand (implemented - needs tweaking)
* F2FS
Tips
How to change sleep/wake options:
The options for sweep2sleep, sweep2wake and doubletap2wake:
sweep2sleep: 0 - disabled, 1 - enabled, both directions, 2 - enabled, left->right only, 3 - enabled, right->left only
sweep2wake: 0 - disabled, 1 - enabled, both directions, 2 - enabled, left->right only, 3 - enabled, right->left only
doubletap2wake: 0 - disabled, 1 - enabled, full screen, 2 - enabled, bottom half screen, 3 - enabled, center down of the screen (hope you get it)
To change the options, put a script in /system/etc/init.d:
Code:
#!/bin/sh
echo "0" > /sys/android_touch/sweep2sleep
echo "0" > /sys/android_touch/sweep2wake
echo "0" > /sys/android_touch/doubletap2wake
This setting disables all the sweep/wake options
Code:
#!/bin/sh
echo "1" > /sys/android_touch/sweep2sleep
echo "1" > /sys/android_touch/sweep2wake
echo "2" > /sys/android_touch/doubletap2wake
This setting enables sweep2sleep and sweep2wake, and enables doubletap2wake bottom half of the screen
Click to expand...
Click to collapse
How to use fastcharge:
If you charge your phone via usb (from your computer) then it will only charge at 500mA even while most usb ports are capable of supplying 1000mA. Enabling fastcharge will allow your phone to charge at 1000mA via usb.
!!! Warning: you must be sure your usb can supply 1000mA !!!
Fastcharge is disabled by default. You can enable it in 2 different ways:
1. Writing a 1 to /sys/kernel/fast_charge/force_fast_charge. You can do this with a text editor, or with a script in init.d (see above)
2. Or you can simply install an app. I tested Fast Charge by Mathew Winters and Fast Charge by Chris Conley, both worked.
Click to expand...
Click to collapse
To hard? Use this app by Ufonek: Kernel Settings
A word about governors:
Some governors lower the frequencies to fast. For example, when I play angry birds when using lulzactive, the phone laggs a lot. This is, however, not the fault of the kernel, but the fault of the way the governor is tweaked. It is the price you pay for the better battery life you have. If you want to do something about it, tweak your governor, there are a lot of tutorials about this.
Don't come here complaining the phone laggs, and that I should fix it, I won't, because I can't. Everyone has his own preferences, and if you can't live with this, then I recommend you use the ondemand governor.
Compilation instructions
Instructions for compiling the kernel yourself.
Prerequisites:
1. A linux computer
2. Basic bash knowledge
3. ~120 MB free space
4. The android-eabi toolchain:
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6 for 4.6
(use darwin-x86 instead of linux-x86 for mac)
And then add it to your $PATH (You need to have the arm-eabi-4.6/bin folder in your path)
Instructions:
1. Download the kernel source
2. Open the cmdline and cd to the directory with all the files (Documentation, arch, block etc.)
3. type: make dummie_z4u_defconfig
4. type: make menuconfig
........A menu will open, and you can change some settings. If you want everything to be the way I built it, then skip this step.
5. type: make
The actual building will begin.
Troubleshoot:
If you run into a python problem, you might want to change, in android_kernel_htc_z4u/scripts/gcc-wrapper.py this:
"#! /usr/bin/env python" into "#! /usr/bin/env python2", credits @svalo
If the building succeeds, then you will find the file zImage in arch/arm/boot.
Next step: turn the zImage into a boot.img
1. Download imgtools, and add it to you $PATH
2. Download my boot.img
3. Open cmdline, cd to the directory containing boot.img and type: unpack boot.img
........You will end up with: ramdisk.cpio.gz, ramdisk and zImage (and the boot.img that was already there)
4. Replace the zImage with the zImage you build earlier (arch/arm/boot)
5. Rebuild the kernel:
Code:
repack_ramdisk ramdisk initramfs.cpio.gz
mkbootimg --kernel zImage --ramdisk initramfs.cpio.gz --base 0x3b00000 --cmdline 'no_console_suspend=1 console=null' -o new_boot.img
You will now see a file called new_boot.img, containing your own kernel, which you can install the very same way
Good luck:good:
Note that -O3 does not work for the kernel, at all, and never has. You can set it but it won't do anything. The compiler will still use -O2, because all the parts where performance matters are written in assembly or through GCC-specific extensions already. There is nothing that automatic code optimisation would improve. Meanwhile -O3 enables non-safe options that can result in imprecise calculations, which can lead to disasters in things that are as important as the kernel. So you should disable that.
GreatEmerald said:
Note that -O3 does not work for the kernel, at all, and never has. You can set it but it won't do anything. The compiler will still use -O2, because all the parts where performance matters are written in assembly or through GCC-specific extensions already. There is nothing that automatic code optimisation would improve. Meanwhile -O3 enables non-safe options that can result in imprecise calculations, which can lead to disasters in things that are as important as the kernel. So you should disable that.
Click to expand...
Click to collapse
Then why do people use it?
dummie999 said:
Then why do people use it?
Click to expand...
Click to collapse
Placebo. It makes them think they're gaining something, even though in truth they aren't (but are not certain).
so i need to flash the boot image than flash the kangbang kernel????
joe-khalil said:
so i need to flash the boot image than flash the kangbang kernel????
Click to expand...
Click to collapse
No, you don't need to flash the kangbang kernel. This is a replacement of the kangbang kernel, for 1.32
Replacement?? That means if i flash the boot image i'll have the kernel installed?
Dual SIM doesn't have the 1.32 update, so i don't think this kernel would work on the dual sim version.
joe-khalil said:
Replacement?? That means if i flash the boot image i'll have the kernel installed?
Click to expand...
Click to collapse
yes, lol
I have installed.. It works fine. Thanks !!!
gayTony said:
Dual SIM doesn't have the 1.32 update, so i don't think this kernel would work on the dual sim version.
Click to expand...
Click to collapse
1.32 for Single SIM = 1.26 for Dual SIM (kernel is the same)
dummie999 said:
Fastcharge
Overclocking?
If you have any requests, post them!
Click to expand...
Click to collapse
Overclocking would be nice!
And don't forget to add a link to your kernel sources, to prevent unfortunate things from happening to this thread
GreatEmerald said:
And don't forget to add a link to your kernel sources, to prevent unfortunate things from happening to this thread
Click to expand...
Click to collapse
lol, I knew I had forgotten sth
dummie999 said:
lol, I knew I had forgotten sth
Click to expand...
Click to collapse
any news about CM @dummie999

[KERNEL][G800F][exynos][G800FXXU1*][TW Only][MM Only]Custom Kernel

hennymcc:
Important notice:
- You flash this image at your own responsibility. I am not responsible for any damage that might be caused by flashing this image (bricked device, lost data, ...)
- Flashing this kernel image will trigger the KNOX counter, so your warranty will be void.
- The image is only for S5 Mini SM-G800F (Exynos)
- The kernel is not tested well. It might be instable, crash your device, drain your battery, or even might damage your smartphone (e.g. if an OTG device drains too much power)
- Backup your data before flashing and check if the original firmware is present (e.g. at SamMobile)
Click to expand...
Click to collapse
Side note: Tripping KNOX counter might break some Samsung applications even after a factory reset. This might be due to secure storage(which is fixable), but for now be cautious if you depend on these features! This image will likley damage the Qualcomm variant of the S5 Mini, do not flash if you have a G800H!
Hello! :laugh:
I've been working on a custom kernel for a while for personal use but I thought some of you might like it.
Current feature list:
Patched to Linux 3.4.113
Fading LED notification (default disabled)
Added row I/O Scheduler
Added zzmoove CPU Governor(with temperature export)
Added PIE network scheduler(supposed to reduce latency, default disabled)
DriveDroid support
Universal Control Interface[UCI] (use the Synapse app to configure)
USB OTG
Boeffla sound engine (Only configurable via Synapse! default disabled)
Powersuspend with LCD panel hooks
1.5GHZ clock speed on processors with revision 2 and above
Double Tap 2 Wake
Voltage Control
MDNIE Hijack
F2FS Support
Haptic Feedback for soft keys
Compiled with Self built Linaro 5.3 toolchain
This kernel is currently only designed to work with the corresponding TouchWiz ROM and likely won't be able to boot custom ROMs. KitKat/Lollipop TouchWiz is also not supported!
If you have any questions about the included features (how to enable, what they do) you may ask in the Q&A until I update the thread.
About 1.5GHZ clock speed
So, as it turns out, Samsung had already done the work to push the 3470 to 1.5GHZ. The frequency tables were already there and all that needed to be done was to remove a soft limit set on it and voila! 1.5GHZ! The catch is that these tables only applied to the second revision of the SoC and above.
Possible reasons why Samsung set the limit:
The S5 mini comes out with both the older and newer revisions of the 3470 and Samsung wanted to avoid getting in legal trouble for selling a higher clocked phone as the same product
The higher clock speeds legitimately can damage the phone
As I don't have multiple S5 Mini's at hand I can't prove the first point, but the second point is more likely true. If you don't feel comfortable with the higher clock speeds you may lower the maximum to 1.4GHZ via Synapse, but the default clock is always 1.5GHZ due to the way in which the frequency controller works.
Current status : BETA
Credits:
andip71(Boeffla sound), faux123(Powersuspend), FrozenCow(DriveDroid support), ZaneZam(zzmoove), Linux Foundation(kernel patches), AndreiLux(Voltage patches for INT and MIF bus), Yank(MDNIE hijack), Samsung(F2FS)
On-board BusyBox by meefik https://play.google.com/store/apps/details?id=ru.meefik.busybox&hl=en
The authors are not responsible for the way in which their features have been implemented in this kernel. Do not post bug reports to them!
Flashing procedure will be the same as with this kernel.
Download current image here:http://forum.xda-developers.com/devdb/project/?id=10241#downloads
Chaneglog:
Code:
1.0
-Initial Release
1.1
-ZZMoove Update to 1.0 Beta 8
- Linux Update to 3.4.108
- Toolchain update
- 1.5ghz unlock for higher revision SoC's
1.2
- Ramdisk update
- Double Tap 2 Wake!
- UCI update
- USB OTG now permanently enabled
1.3
- Voltage Control (CPU, GPU, bus)
- Fixes for DT2W
- Linux Update to 3.4.109
1.4
- Intelliactive Removed
- Linux Update to 3.4.110
- MDNIE Hijack
1.4_L
- Lollipop Variant Now Live
1.4_L2
- Second Lollipop release
- Fixed OTG
- System partition can be remounted again
- Removed Frandom (Does not work so well in Lollipop)
1.5
- KitKat support terminated
- Fix annoying bootloader warning ("KERNEL IS NOT SEANDROID ENFORCING")
- F2FS Drivers updated and F2FS support improved (/data and /cache)
- Patch to Linux 3.4.111
- UKSM removed due to stability concerns
- SELinux policy support update (Latest SuperSU betas might need this)
- Switch to self built linaro toolchain
1.6
- Update to Linux 3.4.112
- F2FS drivers updated
1.7
- F2FS drivers update
- NTFS support enabled (eg. for reading USB HDDs)
- Kernel side haptic feedback on soft keys added (see second post)
1.8
- patch to 3.4.113
1.9
- Switchable OTG
2.0
- Updated to MM
- No longer need to install BusyBox manually to use Synapse
XDA:DevDB Information
G800F Custom Kernel, Kernel for the Samsung Galaxy S5 Mini
Contributors
CurtisMJ
Source Code: https://github.com/CurtisMJ/g800f_custom_kernel
Kernel Special Features: Boeffla Sound, Fading LED, Linux 3.4.113, row I/O Scheduler, zzmoove CPU governor, PIE netsched, DriveDroid support, UCI, USB OTG, DT2W, Voltage Control, MDNIE Hijack, F2FS, Haptic feedback
YOU MAY NEED TO REFLASH SUPERSU AFTER FLASHING THE KERNEL!
Version Information
Status: Beta EOL
Current Beta Version: 2.0
Beta Release Date: 2017-03-07
Created 2015-06-08
Last Updated 2017-03-07
Reserved
OTG switching
Credit to tobigun for the original code (I actually attempted it at some point but failed miserably).
Execute the commands in a terminal:
Turn on OTG
Code:
su -c echo OTG > /sys/class/sec/switch/otg_cable_type
Turn off OTG
Code:
su -c echo USB > /sys/class/sec/switch/otg_cable_type
(Haven't touched Synapse in forever, cannot make sense of it anymore, so no Synapse switch soz)
Synapse Issues
I had some trouble with colour choosers crashing Synapse under specific conditions. If Synapse keeps crashing when picking colours for MDNIE, please try the custom build available in the downloads section of this project.
IF THE DEVICE IS CRASHING WHEN USING SYNAPSE, THEN YOU HAVE LIKELY SET UNSTABLE SETTINGS! SYNAPSE WILL NOT PREVENT THIS, SO PLEASE BE CAREFUL WHEN CHANGING SETTINGS!
There are two ways to recover:
- Use your recovery to delete Synapse's data folder
- Factory Reset your device (Only in extreme cases)
Using PIE netsched:(likely not working with Android at this point in time)
Run following in root terminal or as init.d script
Code:
tc qdisc replace dev wlan0 root pie
tc qdisc replace dev p2p0 root pie
tc qdisc replace dev rmnet0 root pie
ZZMoove and profiles:
The zzmoove governor is highly recommended. It can be set to various profiles to mimic the benefits of various other governors. It'll even ensure the device doesn't overheat!
The profile can be set by setting the "profile number" tunable in Synapse to one of the number values mentioned here. Setting it will change a bunch of other tunables. You'll need to restart Synapse after setting it and save the changes for future application.
Notes on DVFS
Samsung's DVFS feature in their TouchWiz ROMs seems to get a bit shouty when anything other than the "interactive" CPU governor is active. It could also be the cause of rare kernel panics relating to CPU frequency tables(frequency controller expects something from the governor, governor doesn't deliver, panic). Since it also seems to cause a couple other unrelated issues, I'd recommended simply disabling it altogether(the easiest way being via Xposed)
Double Tap 2 Wake
This feature allows you to wake the device by double tapping on the screen while it is off. NOTE:Deep sleep is near totally inhibited while this feature is active, this means extra battery may be consumed. On a tweaked ROM you'll get 2-3%/hr on full standby, on non tweaked you'll get about 4-5%/hr, please keep this in mind while using the feature! Android OS suspension should be unaffected. The feature disables itself when a Samsung branded flip cover is closed, including S-View covers(no double tapping on the window). The feature makes use of the light and proximity sensors in order to detect whether the device is in a dark enclosed place (eg. A pocket) and disables itself in these situations as well in order to prevent accidental wakes (though that may still happen...)
MDNIE Hijack Example
Profile based of iPhone 6+ screen:
R: FF 00 00 - G: 12 FC 12 - Bu: 00 00 FF - C: 12 FF FF
M: FF 00 FF - Y: FF FF 00 - W: FF FF FF - Bl: 00 00 00
Feel free to post any other nice looking profiles you find
Init.d in Lollipop
I did not add Init.d support when building the Lollipop variant's ramdisk. Instead, /su/su.d should be used to run boot scripts. The functionality is exactly the same as the old Init.d.
Haptic feedback on soft keys
In order to avoid conflict with ROM side solutions, haptic feedback is disabled by default. It can be enabled via the following command which can be run as a boot script (eg. in /su/su.d). Command must run as root.
Code:
echo 1 > /sys/class/misc/abov_touckey/vibrate
NOTE: Above "touchkey" was misspelled in code. It should be fixed in a future update. Sorry for any inconvenience
still not fixed lol
Extra Compatibility Notes:
[url]http://forum.xda-developers.com/showpost.php?p=62226500&postcount=2[/URL]
Awesome, thanks !
Installed it and testing now
After a few days of testing !!! All I can say is, Great Kernel :good:
Good performance, great battery life
No issues so far.:highfive:
Working fine on G800FXXU1AOE3
And works great on G800FXXU1AOG2 too.
Again big Thanks Curtis ! :angel:
kernel is damn good.
Games running very fast for me with the new updated kernel
The 1.5Ghz CPU overclock is .. awesome
For additional gaming performance you can lock the GPU Frequency like this:
Shell command:
cd sys/module/mali/parameters
echo 533 > mali_dvfs_control
thats it, gpu locked to 533 mhz. Thanks to hennymcc for this commands
for example:
GTA San Andreas running now with maximum resolution+visibility graphical settings
Solid 30+ FPS :cyclops:
Sorry for noob question - can someone show me the exact syntax to enter in Terminal (or procedure) to activate OTG ? I don't seem to figure it out .
seaman5705 said:
Sorry for noob question - can someone show me the exact syntax to enter in Terminal (or procedure) to activate OTG ? I don't seem to figure it out .
Click to expand...
Click to collapse
To turn on:
Code:
su -t echo 1 > /sys/devices/virtual/sec/switch/otg
And off:
Code:
su -t echo 0 > /sys/devices/virtual/sec/switch/otg
Will ask for root.
EDIT: Enter exact commands in terminal emulator or adb shell
Thanks Curtis , but something is wrong in my case . It doesn't work and I don't understand why . After running the script , I granted the root access
, everything seemed to be ok , but nothing happens when I connect and USB key which is recognized in my S4 phone .
seaman5705 said:
Thanks Curtis , but something is wrong in my case . It doesn't work and I don't understand why . After running the script , I granted the root access
, everything seemed to be ok , but nothing happens when I connect and USB key which is recognized in my S4 phone .
Click to expand...
Click to collapse
Does anything else work? OTG also gets reset on boot, maybe it needs to be in an init.d script. I'll admit, I don't have an OTG cable to test, perhaps I should get hold of one, but the code definitely creates the right behavior (exactly the same as the other OTG kernel around here actually). Maybe switchable isn't the right way to go about it and OTG must be enabled permanently. I'll have to look into this, but in the meantime could you perhaps test with the other OTG kernel and see if it works? Also, the stick maybe might not be automatically mounting. Run "mount" in a terminal and see if it pops up. Apologies for the inconvenience.
CurtisMJ said:
Does anything else work? OTG also gets reset on boot, maybe it needs to be in an init.d script. I'll admit, I don't have an OTG cable to test, perhaps I should get hold of one, but the code definitely creates the right behavior (exactly the same as the other OTG kernel around here actually). Maybe switchable isn't the right way to go about it and OTG must be enabled permanently. I'll have to look into this, but in the meantime could you perhaps test with the other OTG kernel and see if it works? Also, the stick maybe might not be automatically mounting. Run "mount" in a terminal and see if it pops up. Apologies for the inconvenience.
Click to expand...
Click to collapse
No, it will not mount . I tested and OTG works with henny's kernel . Otherwise you made a great kernel - thanks for your work and your advices !
seaman5705 said:
No, it will not mount . I tested and OTG works with henny's kernel . Otherwise you made a great kernel - thanks for your work and your advices !
Click to expand...
Click to collapse
Attached is a build of the kernel with OTG enabled on a permanent basis. If you would not mind, could you test to see if it works? If so it will be done this way in future release, if not I will have to have a good look at any related code...
(P.S, sorry for the wait, my dual-boot was giving me issues)
CurtisMJ said:
Attached is a build of the kernel with OTG enabled on a permanent basis. If you would not mind, could you test to see if it works? If so it will be done this way in future release, if not I will have to have a good look at any related code...
(P.S, sorry for the wait, my dual-boot was giving me issues)
Click to expand...
Click to collapse
Yes , OTG works with this kernel . Great !
Note that after flashing, another reboot is needed to have the usb key properly mounting and poping up the file explorer with the key's content on connection .
Thanks !
New Version!
New version of my custom kernel released. Now includes Double Tap 2 Wake.
Is it possible to add voltage control to your kernel ? thanks .
CPU Voltage control is now implemented. Will work on a Synapse interface and the int and mif buses later today.
New Version!
Voltage control, Linux patches and fixes for DT2W waking up the screen while a call is in progress(sorry 'bout that)
Working great - I achieved good undervolting . Thanks
Hope to see a modified kernel for Lollipop too .

[magisk][kernel]lazy v2

LAZY V2
LAZY IS another optimizer than gives overall optimizations, to a specific chipset sdm439/msm8937.
FEATURES
LAZY ALGORITHM- AN ALGORITHM THAT IS MADE TO PROVIDE PERFORMANCE WHILE STOPPING THE DEVICE FROM OVERHEATING TOO MUCH, AUTOMATICALLY ADJUSTS CPU USAGE BASED ON TEMPERATURE.
KTWEAKS BY @tytydraco - FOLLOWS ALL KERNEL OPTIMIZATIONS APPLIED TO THE ORIGINAL KTWEAKS
4 MODES - GAMING, MULTITASKING, POWERSAVE AND LAZY ALGO
OPTIMIZATIONS FROM PERFD OPTS CREDITS TO MATT YHANG
link to tytydraco's thread
https://forum.xda-developers.com/android/software/module-ktweak-evidence-t4148447/amp/
HOW TO USE
FLASH LAZY AT MAGISK MANAGER MODIFY/CREATE /SDCARD/MODE.TXT (0/LAZY IS DEFAULT) REBOOT, WAIT FOR 2 MINS SEE IF ZZZ.LOG EXISTS
MODES: 1-GAMING - MAXIMUM PERFORMANCE TO CPU AND GPU BUT UNLIKE LAZY COOLS DOWN START AT 40°C AND STARTS MAXIMUM PERF AT 30°C.
2-MULTITASKING-NO TEMP CONTROL ONLY MUTITASKING PROFILES SET TO PROVIDE STABLE MULTITASKING.
3.BATTERY-PROVIDES BATTERY PROFILES, PROBABLY LIMITS CPU AND RAM USAGE TO CERTAIN VALUE.
0. (DEFAULT)LAZY-AUTOMATICALLY COOLS DOWN CPU EVEN UNDER HEAVY LOAD. AUTOMATICALLY SETS CPU USAGE WHEN ITS NEEDED, WHEN TEMPERATURE RISES TO 35°C IT SPEEDS UP AND WHEN ITS EQUAL OR ABOVE 40, LAZY WILL TRY TO REDUCE TEMPERATURE.
BENCHMARKS
https://forum.xda-developers.com/showpost.php?p=83412957&postcount=16
THIS AN INITIAL RELEASE AND I HOPE I CAN IMPROVE IT EVERY UPDATE. ENJOY​
credits:
yc9559
@tytydraco for his script and knowledge on his thread
xda
redmi 7a community
redmi 8a community
Changelogs
changelogs:
v2.3.3
less aggressive memory management
updated to ktweaks 1.4
highest score achieved vs previous jankbenchmarks
https://jankbenchx.now.sh/results/276062212128244237​
Okay so
1. Install BusyBox module in magisk
2. Flash "Redmi8a.zip" in Magisk
3. Flash "Binaries for swift 8a.zip in TWRP or OrangeFox Recovery"
And I've attached an image of the files in /data. Is it correctly working ?
ways2 said:
Okay so
1. Install BusyBox module in magisk
2. Flash "Redmi8a.zip" in Magisk
3. Flash "Binaries for swift 8a.zip in TWRP or OrangeFox Recovery"
And I've attached an image of the files in /data. Is it correctly working ?
Click to expand...
Click to collapse
yes it is when you see swiftgappsopts that means all swift features are executed
Tried this in my phone. My problem is it feels like I'm not connected to the internet even if I am connected to the WIFI. Tried while downloading an app from the Play Store. It just says "Waiting for download" for 30 minutes, not starting the download at all.
So what I did beforehand is backup "boot" and "vendor" from TWRP (Orangefox has no "vendor", only "vendor image"), then restore those after installing the zip files. I now have downloaded and installed the app I need.

Categories

Resources