Google has spent nearly half a decade making it easier for OEMs to keep their devices updated, especially with the launch of Project Treble in 2017. The company previously proposed efforts to bring Android closer to the Linux kernel what it’s finally trying to do with the upcoming release of Android 12. At this week’s Linux Plumbers Conference, Google set out how it intends to achieve its lofty goal.

As reported by Ars Technica, Android is moving to a new “upstream” model and moving away from the traditional forked layout that can lead to software delays. Before a device is updated, the Linux kernel goes through several forks – from Linux to “Android Common”, then to the SoC-specific version, before finally reaching its device-specific iteration. That is a lot of work for every company involved and one of the main contributing factors to Android’s fragmentation problem.

However, since the Generic Kernel Image (GKI) is finally being delivered with the latest Android version, this process should simplify itself over the next few years. Ultimately, Google wants manufacturers to switch to a kernel module interface or KMI system in which they only have to make their respective changes to the kernel. Instead of implementing three or four different forks, you only need to do it once. As explained by Google software engineer Todd Kjos:

“The big pressure is getting all of the hardware-specific code out of the generic kernel and into the vendor modules. One of the big parts of this effort is that we need to have a stable interface between these vendor modules and the generic kernel so that we can have a stable interface that they can send asynchronously. “

If this all sounds complicated, it’s because it is. Kjos admitted in his presentation that this is a “multi-year project” and not even the team expects it to be completed. The timeline for transitioning to an “upstream-first” cycle for new features begins in 2023, with 2020-2022 focused on getting existing features up and running. The Pixel 6 is expected to be the first Android device to ship with the GKI and Linux kernel 5.10, which is an important step in the process.