Hardware abstraction in Android

Search This thread


Mar 15, 2009
I have some general questions about the differences and particularities of Android ROM programming:

1. AOSP is the device-independent source of all ROMs. Where exactly is the dividing line between the general device-independent code and the device-specific code, or, in other words: Which diretories are relevant when you want to fix hardware problems or port a ROM to another device?

2. How deep do you have to dig into the system in order to port a ROM? On the lowest level you have ARM assembly, on the intermediate level C/C++ and on the highest Java. Do you need much knowledge about Linux
kernel programming in order to port a ROM and make all hardware work properly?

3. Is it possible to trace a hardware-specific function call in the stock ROM and then paste the relevant code from the stock ROM into the custom ROM?

I'm asking because I would like to port a ROM, but I need some background information in order to assess my skills. Thanks for any help.