Custom kernel booting on CM7 on the Huawei U8150

Now that I’ve gotten the hang of compiling custom kernels for U8150 stock ROMs, I wanted to experiment with the dev builds of CyanogenMod* 7. To my surprise, with a little bit of hacking I was able to get a custom kernel to boot up on the latest nightly build of the IDEOS Dev team‘s CM7 port. It’s not pretty, but at least it boots!

Steps to reproduce:

  1. Extract the ramdisk from a recent IDEOS Dev Team CM7 build (using BootBuilder-U8150)
  2. Compile a kernel from Huawei’s October, 2010 Froyo kernel source drop (see the froyo-huawei branch of my U8150 kernel repository)
  3. Glue the kernel and the ramdisk together using mkbootimg-U8150 (part of BootBuilder-U8150, see my custom kernel compilation tutorial)
  4. Flash the resulting boot.img to phone using fastboot (phone must be in bootloader mode)
  5. Pat yourself on the back

Well that was fun, but it’s f%$^ng useless (tilal and marcnvidc have done a much better job!). Working with these kernel sources is a bit of a pain in the ass, because of the closed-source wireless drivers; we can only tweak so much before the something inevitably breaks compatibility with the binary wireless driver. Maybe when/if Huawei releases Gingerbread for this handset we’ll get some more modern kernel sources to work with. 😉

But hey, this is all just for the lulz and the self edjumacation anyways, ain’t it? The hope is that one day, I’ll inspire someone, somewhere to help out on one of these projects! Until then I’ll just keep hacking by myself and writing stuff down.


CyanogenMod is an after-market, community-built version of Android, based on the code from the Android Open Source Project‘s publicly-available source code repository. CyanogenMod 7 corresponds to Google’s “Gingerbread” release of Android, Android 2.3. In case you ain’t following: this is the same exact code base that Samsung, HTC, Huawei, Motorola, etc base their code on. The only difference is that CyanogenMod is entirely community-based; everything from the website hosting to the development itself is done on a purely volunteer basis!

4 thoughts on “Custom kernel booting on CM7 on the Huawei U8150

  1. I’ve been reading the blog for a while but never really posted a comment. I’ve got an ideos u8150, managed to install cyanogen 7.1 from ideosdevteam. It’s running great although I don’t have multitouch or haptic feedback from the softkeys. Could you please help me understand why I can install PES 2012 but it crashes showing me some marmalade error that it requires floating points to run thanks.

  2. not sure what I am doing wrong, but I have tried flashing the various kernels to the device, but with no luck. Every time it just stalls out at the IDEOS screen for a long time (like it is in fastboot mode, but its not), and then after 10 minutes, the phone just dies. I can rip out the battery, boot back into the bootloader and reflash a different kernel, but I can no longer get any OS to actually load (using your CM7.2 ROM). I have gone through the four most recent kernels from your github site, flashing from ubuntu, but no luck. so now i am stuck with no phone. any ideas?

    1. The kernels on my github site are for the stock Froyo ROM. CM needs a different ramdisk (ie, init scripts, kernel modules, service definitions, etc) to boot. 🙂

      If you’re stuck, just extract the boot.img from one of the CM7 files, that will work. Also, you should be able to flash an itself from recovery, right?

Comments are closed.