We’ve first covered Alibaba T-Head work on Android 10 for RISC-V in January 2021, and later that year they started selling the T-Head RVB-ICE dual-core RISC-V board with GPU for software development. The company has now provided an update for Android 12 RISC-V port, instructions to build Android RISC-V to run it in an emulator, as well as a 2022-2023 roadmap.
Alibaba T-head is working on hardware platforms, which appears to be similar to T-Head RVB-ICE board, with the following minimal specifications:
- CPU – At least Dual-core XuanTie C910 (rv64imafdcv) processor
- GPU – Compatible with OpenGL ES and OpenCL
- VPU – HW Video/Picture codec
- Neural Network Accelerator
- System Memory – 4GB or more DDR Memory
- Display – MIPI/HDMI
- Audio – Multi-Channel Audio output & input
- Camera – ISP with support for multiple MIPI CSI lanes
- USB interface(s)
They built upon the work done on Android 10 to add support for new features, tools like Android Studio, as well as software/drivers from third parties. Performance was also optimized, and the company added support for TF Lite runing on the processor’s NPU. Camera and video decoding drivers are also being worked on, but this will take more time.
Based on the roadmap above, it seems Android 12 has already passed some CTS/VTS certifications, and upstreamed some source code. I also understand they are working on Android 13 (AOSP) to refine RISC-V patches for core components, and hopefully Android 14 will fully support RISC-V targets with commercial RISC-V Android devices coming late next year.
You’ll find the RISC-V Android Source repository on Github, and if you don’t feel like spending $400 on T-Head RB-ICE board, you could try the Android 12 RISC-V port in an emulator after building it from source.
First, you’d need to get the code:
1 2 3 4 5 6 7 8 9 10 |
mkdir ~/riscv-android-src && cd ~/riscv-android-src repo init -u git@github.com:riscv-android-src/manifest.git -b riscv64-android-12.0.0_dev repo sync cd prebuilts/rust/ git lfs pull cd - cd prebuilts/clang/host/linux-x86/ git lfs pull cd - rm external/angle/Android.bp |
This require a fast Internet connection, which I don’t have right now, and “repo sync” have been running for three hours so far on my laptop with only 12% of the code retrieved…
Somehow you’re asked to change the “/dev/block/vdc/” line in ~/riscv-android-src/device/generic/goldfish/fstab.ranchu.riscv.ex file manually…
1 |
/dev/block/vdc /data ext4 noatime,nosuid,nodev,nomblk_io_submit,errors=panic wait,check,quota,latemount |
… before starting the build:
1 2 3 |
source build/envsetup.sh lunch sdk_phone64_riscv64 m -j |
This will also take a while, but you should finally be able to launch he RISC-V 64 AVD system image in the Android Emulator as follows:
1 |
emulator -no-qt -show-kernel -noaudio -selinux permissive -qemu -smp 1 -m 3584M -bios kernel/prebuilts/5.10/riscv64/fw_jump.bin |
You’ll probably need a machine with at least 8GB RAM to run the emulator.
Via Drew Fustini

Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress