I'm interested in learning how to develop for the Android OS so that I can begin contributing bug fixes and patches. I'm not interested in developing apps for Android. I've been a software developer for several years, although I don't have any Linux or OS development experience. Where is a good place for someone like me to start?
I've gone to developer.android.com, which seems to be only for developing apps on android. source.android.com seems like the place to get the source and learn how to set up my build environment, but it doesn't really seem to have much information on how the guts of the system work or provide much of a introduction to the source code itself. I imagine that I can probably make use of documents out there related to developing for other distributions, but are there any resources specifically for developing on Android? Are there any major differences between developing for Android vs other major distributions that I should take into account when doing research?
How can I get any other technical information I might need in regards to my specific hardware? When browsing through forums, there are some who seem to know the specific radio or GPS hardware models that exist on different phones, and even have some knowledge on how one model may function differently from another. I've looked briefly, but it doesn't seem like I can just google "Samsung Fascinate Hardware" and get a list of components and their documentation. How do people who do advanced device programming get this information?
Thanks,
Mike