Yah, subpsyke looks like he's doing some great work. Basically, I wanted to get the build system up and running so I could actually be in a position to help. I wrote it all down partly for me, but also so that other eager folks could give it a shot. Information wants to be free! Now that I've successfully built everything synced to the latest CM sources, I'm sure I'll get curious about trying to fix some stuff. His device tree on github should be of particular interest (as it was based on tilal's in the first place).
Awesome. Got 8 gigs of bandwidth to spare for the repo cloning? Then you can help me with the hard stuff!
Otherwise, here's the September 21 nightly I compiled lastnight: http://bayfiles.com/file/13Kv/AZ0Kip/update-cm-7.1.0-RC1-U8150-KANG-signed-21092011.zip. I haven't fixed any bugs, merely compiled CM7 with tilal's device tree against newer CM sources. It's using the multi-touch kernel; for some reason the non-multi-touch kernel doesn't boot on my U8150-D, and I've never understood why this happens with CM7 on IDEOS. Hit "thanks" if you download it... I'm curious how many people are still interested in CM7 on U8150.
No pressure to try it... no guarantees either. I'm just glad to have someone else willing to hang around and help!
Thanks for the excellent overview of how to integrate a device into the CM sources. I've one request though.
As we work with repo and git, it would be nice when the steps described by you would be placed in the context of repo/git, so that the issue, patch, fix or whatever you name it, is placed in its own local work branch and results in a commit that can be pushed or for which a pull request can be send to a repository like those of tilal (U8150), psyke83 (U8160) or tas0s (U8120).
It would give a clear example of the workflow required to work together.
Paul
p.s.
Still struggling myself with the workflow, so ...
@aorth wonderful work.
i have a little problem: i must use headphones due to driving restrictions and time i spend at phone.
so, as your build will be the same of tilal's it won't work
i've diffed you git with psykes'
apart binary files, that's a little wifi path difference and few script renamed.
plus of course the kernel....but this is a different thing....and the famous libaudio where i can see 90% are for FM radio and a device lookup (which may affect the routing we need).
just try to plug in the headphones and dial for a call: sound won't be output from headphones but from speakers or nowhere at all.
Oops... the Error 7 is printed in ClockworkMod Recovery?
Alright, I'll test it when I find some headphones around here... Edit: I see, headphones work for music, but not for the phone application. Strange! I'll try to look at subpsyke's repo tonight.
are you using the stock headphones shipped with ideos?
generally that's a problem that after trying to call (and this fails as you've seen) headphones won't even play music and you need to reboot.
what about power draining? last v7 was good, nightly terrible.
i did a nandroid restore the v7 because i was on a fusion for a while,i did a reboot and then i went back to recovery and i flashed the latest nightly....and error 7.i will try again for a clean install,first the v7 and then without wipe the nightly.
If you've got a nandroid backup from a previous CM7, then what I'd do is wipe, install my nightly, and then restore just the data partition from your previous nandroid ("backup and restore -> Advanced restore" in CWM recovery).
When I tested the nightly last night I was coming from a Froyo stock ROM...
As for subspyke's libaudio, I have tried a modified version (I had just remove the fm related things) and in my test build the headphones were working as expected (u8120).Tomorrow I will make a commit in my repo(Im waiting for joilarois recheck ).
# Hardware drivers
PRODUCT_COPY_FILES += \
vendor/huawei/u8160/proprietary/lib/hw/gralloc.msm7k.so:system/lib/hw/gralloc.msm7k.so
BOARD_CUSTOM_USB_CONTROLLER := ../../device/huawei/u8150/UsbController.cpp
Good to know. I would also recommend that you try the FM code too. Setting the FM volume via the F8 register seems to work on most Broadcom chips (even the BCM204x on my Samsung I5500).
I have to made some research about fm chip in u8120 because I think that it is different from u8150 and u8160.
(Off topic: at last all (well 1-2 missing but ok) the huawei ports devs in one thread!)
I have to made some research about fm chip in u8120 because I think that it is different from u8150 and u8160.
(Off topic: at last all (well 1-2 missing but ok) the huawei ports devs in one thread!)
I'll check it out later. Thanks for the tip about making bacon .
- When you want to build a .zip package, "mka bacon" is better, as it does optimizations such as zipaligning.
- Add "gps.ideos" to line 30 of your device_u8150.mk file.
- You could probably add "lights.msm7k" to line 31, right after "gps.ideos". That will install the generic msm7k lights driver, but you should verify that your screen brightness etc. works.
- Are you missing the gralloc.msm7k file in /system/lib/hw? Judging from your device file it should be missing, but that doesn't make sense, as your phone shouldn't start properly without it. Anyway, the open-source gralloc generally works on the U8160, but it prevents the camera/video codecs from working. That's why I use the stock ROM's version:
Code:# Hardware drivers PRODUCT_COPY_FILES += \ vendor/huawei/u8160/proprietary/lib/hw/gralloc.msm7k.so:system/lib/hw/gralloc.msm7k.so
Man, it's working. I just copied all your libaudio stuff verbatim into my device tree. Audio is now working in the head phones . I guess people have been waiting for this for a long time! Also, I checked and the msm_audio* headers in your libaudio are the exact same as the ones in our U8150 kernel. Go figure.I'm fairly sure you could replace the whole libaudio folder with my version (apart from msm_audio*.h - copy the versions from your kernel). That should get the FM radio working.
Yay
What chip does the U8120 use? Also, what wifi driver?
Another question: your thread indicates that Bluetooth works on your port, but does it really work properly? I thought that I got Bluetooth working on my phone at first - the hciattach service could bring up the HCI device, and the Bluetooth stack would load with the icon displaying properly. However, when I tried to actually pair or search for BT devices, the system would crash. I discovered that the CM7 version of brcm_patchram_plus wasn't working correctly, so I just used the stock ROM's binary (with the patchram file in /system/etc/bluetooth/ on the stock ROM). You may want to try this too.
Even if the chip is different, give the code a try. I see that you're using the same kernel as me, so the sound endpoints for the FM speaker and headset should be correct. I've confirmed that the F8 register can control volume on BCM204x and BCM40xx chips at the very least, so if your Bluetooth chip is Broadcom, and Bluetooth actually works properly on your port (see the last paragraph), there's a good chance it could work.
Did you hear me, people?! Headphone audio appears to be fixed! I just plugged and unplugged my headphones several times, pressed some numbers in the dialer, made a call, and then went back to music. All in the headphones
Alon can you please post a newer build of cm 7 which incorporates light sensor.
Thank you