Additional problems are the Android-specific augmentations to the Linux kernel which have not been accepted in mainline, such as the Atomic Display Framework (ADF).
ADF is a feature of 3.10 AOSP kernels which provides a dma-buf-centric framework between Android's hwcomposer HAL and the kernel driver.
ADF significantly overlaps with the DRM-KMS framework.
ADF has not been accepted into mainline, but a different set of solutions addressing the same problems (known as atomic mode setting) is under development.
Projects such as libhybris harness Android device drivers to run on Linux platforms other than Android.