Google dropped RISC-V support from the Android’s Generic Kernel Image in recently merged patches. Filed under the name “Remove ACK’s support for riscv64,” the patches with the description “support for risc64 GKI kernels is discontinued” on the AOSP tracker removed RISC-V kernel support, RISC-V kernel build support, and RISC-V emulator support.
In simple terms, the next Android OS implementation that will use the latest GKI release won’t work on devices powered by RISC-V chips. Therefore, companies wanting to compile a RISC-V Android build will have to create and maintain their own branch from the Linux kernel (ACK RISC-V patches).
These abbreviations can be confusing, so let’s focus on them starting with ACK. There’s the official Linux kernel, and Google does not certify Android devices that ship with this mainline Linux kernel. Google only maintains and certifies the ACK (Android Common Kernel), which are downstream branches from the official Linux kernel. One of the main ACK branches is the android-mainline because it is the primary development branch that is forked into the Generic Kernel Branch to correspond to a specific combination of a supported Linux kernel and the Android OS version.
In a nutshell, ACK refers to a Linux core with some patches of interest to the Android community that haven’t been merged to the Mainline or Long Term Supported (LTS) Linux kernels. On the other hand, GKI refers to a kernel built from one of these ACK branches. Every Android device ships to the market while running one of these GKI branches.
Matthias Männich, a senior staff software engineer at Google, uploaded these patches for review on 26th April, and they passed the review process by 1st May, resulting in successful merging on the branches android15-6.6 and android-mainline.
This update might inconvenience chip companies that were planning to launch RISC-V CPUs for Android devices. Qualcomm, for instance, was planning to power the next generation of Wear OS solutions (wearable platforms) using RISC-V CPUs.
However, this merged patch is not permanent. Google hasn’t killed RISC-V support forever. According to a Google spokesperson, the company is not ready to provide a single supported image to all vendors due to the rapid rate of iteration. Therefore, Android will continue to support RISC-V, but not for now, at later at an unknown date.
In the meantime, the RISC-V community has provided a RISC-V boot and runtime services specification to system vendors and operating system vendors to help them interoperate with one another. This specification enables the OS to utilize system management and device discovery when running on a RISC-V chip and could help with OS ports including future Android RISC-V implementations.
Dennis Mwihia is a technical writer specializing in IoT, PCBs, SBCs, and single-board microcontrollers. He has worked with several companies in those areas and has over 5 years of research, writing, and software development experience.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
Is this another sign of the extreme fragmentation of the ecosystem with each vendor having their own extensions and toolchain ? It seems to me that riscv currently is in an even worse state than ARMv5 was in its time before everyone converged to arm926, then again armv7 with neon/vfpv3/vfpv3-d16/vfpv4/idiv-a/idiv-t/crc etc differing between chips supposedly using almost the same cores. It’s critical that vendors and toolchains can agree on a large enough base specification that should make most extensions really optional and harmless not to have.
That. Or whispered in by US lawmakers as they want to block RISC-V to China. With this step they make an introduction of Android on RISC-V harder.
Probably a self-defeating approach…
Also, this is Google cancelling yet another project. It’s literally a meme now.
I still remember the “Google Apps free forever” where we could get a few email addresses with our own domain.
A few years later (OK, about 12+ years)… Google “retires” Google Apps so it doesn’t exist anymore, changes its name to “Google Workspace”, and…. “your five email addresses are now $40 a month, thank you very much!”
Don’t be evil © yep.
I thought about that one as well but I think it would be totally stupid as it would just mean China doesn’t have to wait for others anymore and will make RISC-V progress even faster without being slowed down by the west. Plus they’d fork android and maintain their own, and byebye international cybersurveillance etc. The best way to know what the neighbor is doing is to be present in a legitimate way there, not by closing all doors. Now maybe they just wanted to show that they can decide who has and has not access to android but showing… Read more »
I don’t think the ISA fragmentation has anything to do with this, as far as I can tell this change is only for the kernel build, and it reflects that there is no common SoC level target either, so any RISC-V Android system now has to ship a custom kernel binary. I don’t know how many such products are out there or in development today, but there is a good chance that all of them were doing that anyway.
Do you know what the difference in that situation between the Android and Linux kernels is, if any?