<i>drivers, [..] which by nature don't need to be part of the kernel itself</i><p>Yes and no. The Linux kernel is very much a moving target, so getting the drivers merged means the hardware is usable for a long time. I recently tried to get the ipw2200-ap driver to build on a new-ish kernel, and so much had changed that I gave up after a while. That code is just over 3 years old; the oldest Android phone (G1/Dream) is almost 1 1/2 years old.<p>There was a story on HN some months ago (I can't seem to find it right now) which was about how Google had all these patches against Linux (unrelated to Android) and various other Open Source projects lying around, but never got around to submitting them back for inclusion into the main tree, which caused the code to eventually go "stale" and become essentially unmergeable. So Google are stuck with an old kernel and the rest of the world never gets to see Google's improvements. Both parties lose.