This guide provides a high-level overview of GKI development.
Review existing documentation
Before you begin GKI development, read the following documents:
For an overview of the GKI project, read GKI project.
For an explanation of how Android Common Kernels (ACKs), GKI kernels, and KMI relate, read Android Common Kernels (ACK).
To learn how to contribute to the kernel, read Developing kernel code for GKI, Contribution guidelines for Android Common Kernels, and Linux kernel coding standards.
To learn about GKI and vendor modules, read Kernel modules overview and other documents in the modules section.
Build, monitor, and test
When building, monitoring, and testing your GKI implementations, follow these guidelines:
Submit your KMI symbol list to the appropriate ACK.
Set up a continuous ABI monitoring system in your internal kernel development workflows. For additional details, see Maintaining a Stable KMI.
Run full system validation tests with GKI. If you experience any regressions in power and performance and don't have mechanisms to address these issues in the ACK code, email kernel-team@android.com for help.
Follow the patch process
Before creating and sending a patch, send patches upstream to LKML. If the patch can't be upstreamed first, explain the rationale in a bug. For further information on patching, see Develop kernel code for GKI.
How to file a kernel bug or contact us
To report a bug, click the Kernel (GKI) File a bug link on the Reporting bugs page.
If you have GKI or kernel-related questions, email the kernel-team@android.com.