Showing posts with label kernel. Show all posts
Showing posts with label kernel. Show all posts

November 6, 2011

Download: Nexus S 2.6.35.14 Kernel Update


Three months ago I released a kernel for the Nexus S (all variants) here on my blog. The feedback I received was beyond what I expected. I read various places on the web that stability, battery life, and performance was phenomenal. Rather than update this kernel every week as others may do, I am going to abide by the old saying "If it ain't broke, don't fix it". The only changes I could see fit to make were to add a 1.1GHz slot and pawitp's fix to allow the battery to charge to 100%. 

For those of you new to my work, this kernel can work on ALL Nexus S ROMs. Simply flash in recovery, without wiping. Also can be found in ROM Manager.


Source (for devs): platform_kernel_samsung.zip

August 12, 2011

Download: Nexus S 2.6.35.14 Kernel


I spent some time today working on the Nexus S kernel. This kernel has been updated by 7 subversions, bringing it from 2.6.35.7 to 2.6.35.14. I have also added BLN and CIFS support to this build. Other features include Overclocking to 1.4GHz, Interactive governor, Voodoo support, updated Wi-Fi driver, TUN, color tint tweaks, and various bug fixes from upstream kernels.

I need this tested thoroughly before I feel comfortable including it in my build. Please let me know how it performs or if you come across any issues. This will work on ALL Nexus S phones (AT&T, T-Mobile, Sprint) and ALL ROMs.

Update: It proved to be completely stable and is now in my builds as of 08-13-11

Download: 2.6.35.14_CRESPO.zip

June 29, 2011

Download: Droid Kernels V0.3

It's been two full months since my last kernel set, I'd say we are overdue for an update! A lot of work went into these and I am extremely happy with the results, hopefully you will be too...

Features:
  • Low (LV), standard (SV), and increased (IV) voltages
  • Interactive governor ported from .38 kernel
  • Newest compcache module: zram.ko
  • USB switches from .35 kernel
  • Increased sdcard throughput (faster read/write speeds)
  • Bug fixes from upstream/newer kernels
  • Built in OMAP temperature sensor
  • All of the official governors
  • Lightweight, stripped of unneeded features
  • Added most popular, requested modules and features 
  • 5 CPU slots rather than 7 (better performance)

Download:
  • 600MHz   | LV | SV | IV | 125/250/500/550/600
  • 700MHz   | LV | SV | IV | 250/500/550/600/700
  • 800MHz   | LV | SV | IV | 250/550/600/700/800
  • 900MHz   | LV | SV | IV | 250/550/700/800/900
  • 1000MHz | LV | SV | IV | 250/550/800/900/1000
  • 1100MHz | LV | SV | IV | 250/550/800/1000/1100
  • 1200MHz | LV | SV | IV | 250/550/800/1000/1200
  • 1250MHz | LV | SV | IV | 250/550/800/1000/1250
  • 1300MHz | LV | SV | IV | 250/550/900/1100/1300

Note:
  • Increased voltage is not available for 600, 700, and 800 MHz due to the fact that you do not need higher than standard voltage for these speeds.
  • If your Droid seems sluggish you may need to use a higher voltage kernel.
  • These work on Froyo and Gingerbread as well as ALL ROMs

April 26, 2011

Download: Droid Kernels V0.2

It's been a while since my last set, so I am happy to present to you the most advanced kernels for Droid to date. This set is built from the latest source, I did not build upon someone else's, I started from scratch. Changes from my last version include updating the Interactive governor to the version found in the .38 kernels. No other kernels out have this governor yet, it has two tuneables rather than just one. I also updated the compcache module to the new zram.ko, meaning these kernels will be fully compatible with CyanogenMod and others. Thanks to cvpcs, the new .35 kernel USB switches have also been added, fixing USB tethering in Gingerbread. SDCard throughput has also been increased, for faster read/write speeds.

I did not include the "new" governors that are floating around (SmartAss, SmartMod, BumbleBee, etc). All of these are hacked versions of the old Interactive governor (not the new .38 kernel one), meaning they are outdated. All of these governors are modifications of eachother. I will not be adding any of these governors so do not ask. I assure you, using the Interactive governor built into my kernels will yield better results anyways. Here is a quote straight from the .38 kernel source, "Use the CPUFreq governor 'interactive' as default. This allows you to get a full dynamic cpu frequency capable system by simply loading your cpufreq low-level hardware driver, using the 'interactive' governor for latency-sensitive workloads." This would explain why manufacturers have chosen it to be the default governor on most of the new devices, including the Motorola Xoom.

I also kept the default compression method of the kernel. After conducting a bit of research, LZMA compression and others seen in some kernels take longer to decompress. To put this in other words, the phone will take longer to boot by not using the default compression method.

Features:
  • Available in low, standard, or increased voltages
  • Interactive governor ported from .38 kernel
  • New compcache module: zram.ko
  • USB switches from .35 kernel
  • Increased sdcard throughput
  • Bug fixes from newer kernels
  • Built in OMAP temperature sensor
  • All of the official governors
  • Lightweight, stripped of unneeded features
  • Added most popular, requested modules and features

    Downloads:

    Increased voltage (IV)
    Low voltage (LV)
    Standard voltage (SV)

    Note: You will need to use an app or script to have these kernels overclock themselves. If not they will default to whatever the ROM developer has in the ramdisk (most likely 600MHz). To overclock any GPA build, flash AutoOverClock.zip

    Update: I just wanted to give you guys/gals more info about the Interactive governor. I have seen some users on a variety of ROMs saying that the phone takes a while to wake up after pressing the battery button. It all depends on the governor and settings the ROM dev has made in the ramdisk or elsewhere (init.d). You can make a fast kernel, and have the ramdisk or other files slow it to a crawl. On my GPA builds, using the interactive governor there is no wake up delay. That being said, on other ROMs I would suggest switching to, if not already using, the interactive governor. From there if you still see a wake up delay lower this tuneable:

    /sys/devices/system/cpu/cpufreq/interactive/go_maxspeed_load

    The default is 85, a good number for battery saving, but not for performance. For example, you may lower this number to 80 so the governor will ramp up to max speed (highest slot) faster. You may also want to note that the Motorola Xoom uses the value of 80 by default, maybe you will be happy with this value as well.

    Just FYI there is yet another tuneable in this governor:

    /sys/devices/system/cpu/cpufreq/interactive/min_sample_time

    This tuneable represents the minimum amount of time to spend at the current frequency before ramping down. This is to ensure that the governor has seen enough historic CPU load data to determine the appropriate workload. Default is 80000 uS.

    Unfortunately, SetCPU and possibly other applications have yet to put these tuneables to use via a GUI. So one must have a script or command change them. As you can see, this governor will allow you to save battery or crank out the performance so adjust it to your liking.

      February 23, 2011

      Download: Droid Kernels V0.1

      Alright guys and gals, as promised I am releasing my first kernels. My nightly builds have been being tested for about a week now and I am confident they are ready for the masses. Version 0.1 consist of the following features:

      • Kernel version in "About phone" screen (e.g. 2.6.32.9_1Ghz_LV_V0.1)
      • All cpu scaling governors including "interactive"
      • Most debugging turned off including "time in state" 
      • Built from latest source
      • Most requested modules: compcache, ext 2, 3, & 4, tun, ipv6, etc. 
      • Low voltages (based on collected data) for less battery consumption *

      * Low voltage kernels are not suitable for all devices. Your device may not boot or may go into a "bootloop" if it can not handle the selected kernel. Simply flash another one if that happens.
        LV (Low Voltage)
        SV (Standard/Stock Voltage)


        Download:
        0.60GHz_SV_V0.1.zip 
        0.60GHz_LV_V0.1.zip
        1.00GHz_LV_V0.1.zip
        1.10GHz_LV_V0.1.zip
        1.20GHz_LV_V0.1.zip
        1.25GHz_LV_V0.1.zip


        Note:
        • The ext modules are quite large, if you do not need support for ext you may remove them from the .zip with no ill effect 
          • Wifi may not work if your ROM does not have enough room to fit all of the modules
        • These kernels have not been tested on Froyo ROMs
        • Compcache works "out of the box" no need for an additional .zip simply execute "compcache start" in a terminal

        February 21, 2011

        Kernel Input Needed

        If you haven't realised it yet, I am a perfectionist. This trait has been instilled in me since I was a child by my dad. Because of that, I want to not just make a kernel, but make a great kernel. I have created a chart (using Google Docs) comparing the voltage levels/values of each popular "Low Voltage" kernel who's source is available. I want your input on what values I should use for my kernel. Keep in mind if the voltage is too low it may become unstable. The lower the voltage value, the lower the overall power consumption. Should I take the average, should I go with the lowest value, should I make a new value, should I round high or low? What do you think? Comment below and let me know...

        Update (2-21-11): After conducting more research on modifying kernels I have compiled another one that I am quite happy with. So far it is running amazing on my Droid. I disabled more debugging, added cpu temp monitoring, changed the slots to 225, 450, 600, 700, 800, 900, 1000, and appended _1GHz_LV to the kernel version. I thought compcache would be included in this release but it looks like it will have to wait until the next one. The lowest slot is still below stock at 250 yet seems to be a perfect minimum to eliminate the lag we experience in Gingerbread. I have tried 125, 175, and 200 as minimum slots but they just don't do the trick. Based on the chart below, I have selected what I think are great low voltage values for stability and less power consumption. After more trial runs and feedback from you all I will publish my values. This kernel is in Koush's anykernel.zip format meaning it will work on any Gingerbread ROM. Once again, I would like to thank RaidZero for helping me with my questions.

        Download:
        Update in my latest post!


        February 19, 2011

        Download: 900MHz Overclocked Gingerbread Kernel

        Who dares test my first kernel? If you are willing let me go ahead and state a disclaimer, flash this at your own risk! I will not be held responsible if your phone explodes, catches on fire, your girlfriend dumps you, etc. I literally just made this kernel so I have not had time to fully test it, things may be broken! Having said that, this kernel still needs a few features, but I think for my first effort, its pretty darn good. After flashing many kernels through the time I have owned my Droid I have never been satisfied with the slots available, so I modified the slots to my liking; 175, 275, 400, 500, 600, 750, and 900 MHz. I have included all of the popular scaling  governors; interactive, conservative, userspace, powersave, ondemand, and performance. For now, the voltage levels remain completely stock, I feel I need to educate myself a bit more before I decide what levels I will be satisfied with. For those of you running my stock Gingerbread ROM this kernel will automatically set is maximum frequency to 900 and its minimum frequency to 175 at boot via a script I created. The default governor that will be applied is ondemand. If you wish to change any of these settings you may need a cpu application such as "SetCPU" by Michael Huang. Again, for those on my ROM, typing "cpuinfo" into the terminal will print out a list of details that you may be interested in. Future features will come with time, compcache, processor temperature reporting, and time in state stats, are on the priority list.

        Please note that this .zip is not in the "anykernel.zip" format by Koush meaning it was created to work on my Gingerbread ROM. If you flash this on someone else's Gingerbread ROM, it may not work. This will absolutely not work on any Froyo ROM so do not even try it. Also note, this will only work on the Droid 1, if you try to flash it on any other device it will fail.


        Special thanks goes out to raidzero for answering my questions! Apparently I was compiling the wrong wifi module at first, no wonder it wasn't working...

        Download Link:
        Outdated, now up to 1Ghz, download here.