The other touchpad kernel source from HP (android dump)


Hi all!

So finally there is progress on this front that I am happy to make a public update about.

HP supports the community and was kind enough to provide us with the Android kernel source and some other GPL components that they modified for the few Touchpads that were accidentally released running Android.

Many thanks go to attorney Benjamin E. Maskell from Roetzel & Andress for helping with this.
Also I'd like to thank phil86 for providing his Android-running touchpad to me and to Snow02 to help with covering some shipping costs.

Now without further delays here's the meat:

I uploaded the code to github, so you can take a look here: https://github.com/d...p-topaz-android

You can get the raw files here:
Kernel: http://crimea.edu/~g...-Kernel.tar.bz2
Additionally we've got the code to two other components:
androidvncserver: http://crimea.edu/~g...910_vnc.tar.bz2
i2c-tools: http://crimea.edu/~g...910_i2c.tar.bz2

Now the source provided so far misses one component still, the wifi driver. I did some digging around and it appears that the wifi driver shipped with both webOS and with the Android are GPL, there are multiple evidences of that including the driver licensing string. Plus the driver is linked against 10+ GPLONLy kernel symbols which makes it kernel derivative. HP is still investigating this matter and we hope to hear from them soon.

What's interesting about this kernel is it seems to be a totally separate development from the webOS kernel (this was suspected from the very beginning), but now the comments in the code seem to imply that HP had another team working on Android port to Touchpad and that team appears to be totally separate from the webOS team. I wonder if that means there was a plan to ship the Touchpad with Android that were then preempted by webOS plans after Palm purchase.
Latest change in the code is from March 2011.

From this code we have already found a way to enable the debug serial console routed via audio jack.
Also it's interesting that audio ports are different and we are looking into how this could potentially be leveraged.
BT is implemented in a more straightforward way and I hope to adopt this into CM9 kernel as making more sense over what we have now.

source