Isn't Android a common kernel that is used across all devices? For example CentOS will install on Dell, HP, and a variety of other hardware. Sure there are different modules but it's still CentOS nonetheless. What is the reason why CyanogenMod is always "broken"? I always hear in forums they are working on porting this driver or that driver. If they used the same kernel wouldn't the drivers just work with it? I also see a million different types of Kernels for different devices.