Yes, this is yet another (shameless) attempt to optimise the kernel for our Galaxy-S (i9000) by taking tweaks implemented by various xda developers. The aim at this moment is to 'integrate' all the desirable tweaks, since I'm still grasping the ins and outs of Linux kernel to experiment some of the possible tweaks myself.
Not sure how far I would bring this thread forward, because I will be working on a project (my day job) very soon again, so I'm going to enjoy/do while I can.
based on JPM kernel
sztupy's Universal Lag Fix (v0.3)
hardcore's Free Memory config (341MB)
raspdeep's Overclock (v1.1)
hardcore's SpeedMod (Tweaks + Compiler Optimisation) with Jhash update
supercurio Voodoo Display tweak (Gamma Correction and Improve Sharpness)
neldar's Backlight Notification (BLN, v2.2, enabled via ULF in recovery mode)
Budget Fair Queuing (BFQ) I/O Scheduler
I also made some minor modification to other codes to experiment the overclock enhancement. It's in this build but may not have any effect.
Updated Kernel Scheduler parameter (sched_min_granularity_ns & sched_wakeup_granularity_ns) to give more priority to foreground application, therefore improving the fluidity of the UI experience. From brief research, these are the key parameters used to tune kernel between a server (therefore higher values) and a desktop.
Refined voltage level for cpu frequency 100/200 MHz. Effectively, reduce 75mV for 100/200, and 25mV for 400/800 (same as 1.2b). Again not user configurable for now, though I may implement it if people are finding the UV feature is causing unstability.
Upgraded Backlight Notification (BLN) to v2.2 (Please test and feedback)
Minor optimisation on kernel configuration (PREEMPT_VOLUNTARY, UACCESS_WITH_MEMCPY)
v1.2b - 2nd November (2585 downloads)
Refined voltage level for cpu frequency 100/200 MHz. Effectively, reduce 50mV for 100/200, and 25mV for 400/800. Again not user configurable for now, and once raspdeep released his UV code I may implement it if people are finding the UV feature is causing unstability.
v1.2a - 31st October (668 downloads)
Implemented lower voltage for cpu frequency 100/200/400/800MHz.
Note: Not user configurable
v1.1 - 30th October (1168 downloads)
Implemented Voodoo Display Sharpness & Color Gamma
Does it have a recovery of some sort built in then. Maybe CWR..
Universal Lagfix Kernel (ULK) comes with Clockworkmod so yes it has the recovery function!
Does this works on my XXX ROM?
This kernel is compiled based on the available Froyo JPM source, so it'll definitely work on JPM-based ROM (custom or stock). For the rest of Froyo ROM, it has been reported that YA-OK is compatible with the following Froyo-based firmwares; JP6, JPO, JPP, JPD, JPA (all the above are based off Android 2.2 kernel) JPU ROM is however not supported at this moment. (See next FAQ point for more information)
Does this work on JPU-based ROM? When will you support it and/or Why does XXX kernel support JPU and not yours?
JPU-based ROM is apparently based on Android 2.2.1 firmware. Since the YA-OK kernel is based on version 2.2.0 kernel, there is a high chance YA-OK will not work well with JPU-based ROM. I have not tried personally myself but from what has been reported by other users, this does not work. Only when Samsung release the source code for JPU will YA-OK be able to support JPU (and later) ROM. As to why other kernel developers has already started releasing kernel to supporting JPU-based ROM, they are merely injecting lagfix and tweaks into the kernel through initramfs, instead of the tweaks that require source code modification (e.g. Overclocking, Undervolt, Display Fix, Kernel optimization through compiler optimization).
I installed this kernel on a JPO-based ROM. But it seems that there are no changes, reported RAM is 341 mb but Quadrant is about 1000.
You need to enable lagfix yourself by going to recovery mode, and select ULK option for all the possible choices of lagfix.
If I install this kernel on my rom, is it still necessary for me to install "voodoo"?
All the tweak and optimisation features mentioned in this thread are implemented within the kernel, so flashing or updating another kernel will lose whatever features found in YAOK kernel unless the said feature is also implemented in the other kernel. In the case of lagfix, it is important that if you flash another kernel over YAOK (for whatever reason), you need to be sure that kernel supports the relevant lagfix feature otherwise your phone may not boot.
I face alot of FC (Force close) with your kernel, what's wrong?
One of the common cause for the "FC" problem, particularly with custom kernel, is that you has chosen to enable the BIND option in the Lagfix setting. You should turn that off, and observe further if the FC issue stil persists.
How do I install this kernel?
First of all, make sure you have a compatible Froyo firmware (refer to above for a list of compatible firmware)
To install this kernel, download and unzip the zip file. Flash the .tar file using Odin, without selecting re-partition and you can omit the PIT setting.
After updating v1.31 (build 31), my Galaxy gets stuck at the bootscreen. What happens?
This is a sign of corrupted file system on the /system partition. Try this one time fix procedure
flash back v1.30 build 30
boot to recovery, do a backup
flash v1.31 build 31
boot to recovery, do a advance restore on /system
still at recovery, go to CWM and wipe davik cache
reboot your device (you may have to wait a few minutes for the system to rebuild the davik cache)
I was playing/running XXX game/application, the screen freezes halfway, what gives?
From experience, some applications (game or graphic intensive application such as video playback application) may not handle overclock feature very well, especially if the application rely solely on CPU (the main processor for computing process needs other than graphics), instead of GPU (the processor dedicated for graphic processing needs), to render graphics. In particular, Rock player seems to have problem handling video playback via software mode (instead of hardware), for HD video. This is understandable given that constant overclocking is usually undesirable. Remember our device can do dynamic CPU frequency scaling, which means it will never always run at overclocked frequency unless you manually set it to be.
Some games such as Asphalt were reported to freeze the device but from my observation, it is very rare it happens and I would usually would not bother about that. If it really bothers you, just set the CPU scaling threshold to 1GHz (instead of 1.12GHz or 1.2Ghz) via SetCPU app. Personally I won't bother and I think you should do the same. Afterall, it is probably a bad app out of many apps installed that is causing the problem, so why cripped your phone permanently for that?
I have a docomo Galaxy, and seems the only thing between me and rooted bliss is a kernel....
I have access to recovery but it is 3e and wont flash non-signed files...
I also have access to download mode, so i have odin should work... I am just thinking that the main difference between Docomo's version and most is the missing FFC and video out...
Would that make a difference? I am thinking to try... I have done soo much reading... not only here but having google translate scour the Japanese side of the internet tring to see if there has been anyone else out there that has tried it and what was the out come...
So if I were to just go for it.... let me see if i the process strait... since i have an incompatible rom, first I need to flash the rom... like JPA with the correct pit, 512... and then flash the kernel... and then i have access to CMR... and no need for 2e recovery....
I shouldn't have to worry about phone or csc... correct?
for folks who have flash v1.31 build 31 and have problem booting, it's a sign of corrupted partition.
try doing this
1. flash back v1.30 build 30
2. boot to recovery, do a backup
3. flash v1.31 build 31
4. boot to recovery, do a advance restore on /system
5. still at recovery, go to CWM and wipe davik cache
6. reboot your device (you may have to wait a few minutes for the system to rebuild the davik cache)
XDA Developers was founded by developers, for developers. It is now a valuable resource for people who want to make the most of their mobile devices, from customizing the look and feel to adding new functionality. Are you a developer?