I pulled the latest kernel tarball, fixed and tweaked a few things, then compiled it on my Rhodium. Although it works well on my Rhodium, I cannot guarantee that it will work on yours. In addition, it is guaranteed NOT to work on any other since I disabled support for it in .config.
You can install this kernel just like the one you would off the autobuild. The kernel is named -fox-YYDDMM where the date is when I pulled the tarball. While suggestions and feature request are welcome, it takes me ~2.5hr to go through one compile, so don't expect a new build very often.
You need the patched haret.exe as well as an additional line in startup.txt to boot this kernel. Instructions for that can be found at http://xdaforums.com/showpost.php?p=14519408&postcount=1.
Latest (8/20) at http://db.tt/OeRyLYu
Changelog:
8/20 http://db.tt/OeRyLYu
microp: Upstream version of LED patch from Detule. Please note the requirement of updated lights.msm7k.so still applies.
8/16 http://db.tt/3UWBs3y
microp: Updated microp LED patch from Detule, now with more blinkenlights goodness (and yes, it even blinks). In order to use this, however, you need an updated liblights from http://db.tt/ZUjymT9. The file should be bind-mounted on startup in your froyo.user.conf, ie: mount --bind /sdcard/lights.msm7k.so /system/lib/hw/lights.msm7k.so
8/15
microp: Proposed LED patch from Detule, mailing list has instruction on how to play with the blinkenlights.
.config:
Enabled IP_NF_TARGET_REDIRECT as a module because it's needed for certain app.
Started from clean source to get rid of any residuals.
8/11
Compcache: Included 0.5.4, patched kernel to support the swap notify
clock-wince: Added a debug output that shows freq requested, closest set, and the calc, without needing clock_wince.debug_mask=15.
.config notes:
LZOCOMPRESS/DECOMPRESS is built-in to the kernel. Therefore if you want compcache, you just need to insmod xvmalloc.ko and ramzswap.ko.
8/9
Upstream: htc_headset_microp fix
acpuclock: Changed turbo mode+20mhz only when acpuclock.force_turbo=2 is set. Also, overclock by 20mhz for any bus speed >100MHz.
modules: Use strip --strip-unneeded.
8/6
acpuclock: Change turbo mode t->axiclk_khz from 160000 to 180000. AXI clock control the bus freq, and upping it should make overall performance better.
clock-wince: Add supposed support for 48Mhz SD clock from .35. HOWEVER the kernel claims calc_freq is 61.44Mhz according to clock_wince.debug_mask=15. You also need to add msmsdcc_fmax=48000000 in order to use this clock anyway.
proc_comm_wince: Fix long-standing issue with msm_proc_comm_wince_pending_ints & DEX_INT_VBUS check which clobbered pending_int. You should no longer have a SoD during transition changes to/from suspending while inserting/removing the USB cable.
microp-k*: Got rid of the printk spam of backlight/keyled status changes.
.config changes:
1) Change default I/O scheduler to deadline. Our kernel does not do well with noop.
2) Change default AMSS firmware interface to 6125 which is what I have on my RHOD400. You can check yours (which is in the modem) by running dmesg | grep AMSS.
3) Change kernel default sleep_mode from CONFIG_MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND to POWER_COLLAPSE. This is usually overridden but makes pm.sleep_mode=1 unnecessary.
4) Change CONFIG_MSM_CPU_FREQ_ONDEMAND_MIN from 128MHz to 112Mhz. This meant that the kernel never used the 112MHz clock because it was below the ondemand minimum. No-frills CPU can confirm this.
5) arm6k support enabled. Not sure if it makes a difference but the kernel hasn't complained.
6) Conservative and Powersave governor enabled.
7) CONFIG_INPUT_TABLET disabled, nothing was enabled in there anyway and ours uses TOUCHSCREEN.
8) CONFIG_USB_ANDROID_RNDIS_WCEIS enabled, supposedly makes Windows think it's dealing with a NDIS ICS device.
9) Enabled ext4 and disabled yaffs2. Ted T'so backported fixes for ext4 for .27 release. This contains all the patches available on his ext4 git for the 2.6.27 kernel, but still should be considered EXPERIMENTAL.
GPL availability notice:
kernel source as available from http://gitorious.org/linux-on-qualcomm-s-msm/linux-msm/commits/htc-msm-2.6.27
compcache module+patch from http://code.google.com/p/compcache/downloads/detail?name=compcache-0.5.4.tar.gz
.config used to compile available from within /proc/config.gz
Minor patches to the kernel source can be made against the git tree upon request. Please PM me if you are in need of that.
-- Starfox
You can install this kernel just like the one you would off the autobuild. The kernel is named -fox-YYDDMM where the date is when I pulled the tarball. While suggestions and feature request are welcome, it takes me ~2.5hr to go through one compile, so don't expect a new build very often.
You need the patched haret.exe as well as an additional line in startup.txt to boot this kernel. Instructions for that can be found at http://xdaforums.com/showpost.php?p=14519408&postcount=1.
Latest (8/20) at http://db.tt/OeRyLYu
Changelog:
8/20 http://db.tt/OeRyLYu
microp: Upstream version of LED patch from Detule. Please note the requirement of updated lights.msm7k.so still applies.
8/16 http://db.tt/3UWBs3y
microp: Updated microp LED patch from Detule, now with more blinkenlights goodness (and yes, it even blinks). In order to use this, however, you need an updated liblights from http://db.tt/ZUjymT9. The file should be bind-mounted on startup in your froyo.user.conf, ie: mount --bind /sdcard/lights.msm7k.so /system/lib/hw/lights.msm7k.so
8/15
microp: Proposed LED patch from Detule, mailing list has instruction on how to play with the blinkenlights.
.config:
Enabled IP_NF_TARGET_REDIRECT as a module because it's needed for certain app.
Started from clean source to get rid of any residuals.
8/11
Compcache: Included 0.5.4, patched kernel to support the swap notify
clock-wince: Added a debug output that shows freq requested, closest set, and the calc, without needing clock_wince.debug_mask=15.
.config notes:
LZOCOMPRESS/DECOMPRESS is built-in to the kernel. Therefore if you want compcache, you just need to insmod xvmalloc.ko and ramzswap.ko.
8/9
Upstream: htc_headset_microp fix
acpuclock: Changed turbo mode+20mhz only when acpuclock.force_turbo=2 is set. Also, overclock by 20mhz for any bus speed >100MHz.
modules: Use strip --strip-unneeded.
8/6
acpuclock: Change turbo mode t->axiclk_khz from 160000 to 180000. AXI clock control the bus freq, and upping it should make overall performance better.
clock-wince: Add supposed support for 48Mhz SD clock from .35. HOWEVER the kernel claims calc_freq is 61.44Mhz according to clock_wince.debug_mask=15. You also need to add msmsdcc_fmax=48000000 in order to use this clock anyway.
proc_comm_wince: Fix long-standing issue with msm_proc_comm_wince_pending_ints & DEX_INT_VBUS check which clobbered pending_int. You should no longer have a SoD during transition changes to/from suspending while inserting/removing the USB cable.
microp-k*: Got rid of the printk spam of backlight/keyled status changes.
.config changes:
1) Change default I/O scheduler to deadline. Our kernel does not do well with noop.
2) Change default AMSS firmware interface to 6125 which is what I have on my RHOD400. You can check yours (which is in the modem) by running dmesg | grep AMSS.
3) Change kernel default sleep_mode from CONFIG_MSM7X00A_SLEEP_MODE_POWER_COLLAPSE_SUSPEND to POWER_COLLAPSE. This is usually overridden but makes pm.sleep_mode=1 unnecessary.
4) Change CONFIG_MSM_CPU_FREQ_ONDEMAND_MIN from 128MHz to 112Mhz. This meant that the kernel never used the 112MHz clock because it was below the ondemand minimum. No-frills CPU can confirm this.
5) arm6k support enabled. Not sure if it makes a difference but the kernel hasn't complained.
6) Conservative and Powersave governor enabled.
7) CONFIG_INPUT_TABLET disabled, nothing was enabled in there anyway and ours uses TOUCHSCREEN.
8) CONFIG_USB_ANDROID_RNDIS_WCEIS enabled, supposedly makes Windows think it's dealing with a NDIS ICS device.
9) Enabled ext4 and disabled yaffs2. Ted T'so backported fixes for ext4 for .27 release. This contains all the patches available on his ext4 git for the 2.6.27 kernel, but still should be considered EXPERIMENTAL.
GPL availability notice:
kernel source as available from http://gitorious.org/linux-on-qualcomm-s-msm/linux-msm/commits/htc-msm-2.6.27
compcache module+patch from http://code.google.com/p/compcache/downloads/detail?name=compcache-0.5.4.tar.gz
.config used to compile available from within /proc/config.gz
Minor patches to the kernel source can be made against the git tree upon request. Please PM me if you are in need of that.
-- Starfox
Last edited: