Page 1 of 1

Linux on S31

Posted: Sun Jul 05, 2026 5:59 am
by GrieferPig
Just want to show that MMU linux on s31 is possible: https://github.com/GrieferPig/esp32-s31-linux

Both OpenSBI and Linux are patched to accomodate for S31's CLIC-centric (I presume?) interrupt architecture and XIP support. Not much are usable atm, but it reaches init and shell.

You can download the kernel, bootloader and OpenSBI on the Release page: https://github.com/GrieferPig/esp32-s31 ... ag/initial

Some outputs:

Code: Select all

~ # grep -E '^isa|^mmu' /proc/cpuinfo
isa             : rv32imafc_zicntr_zicsr_zifencei_zca_zcf_zbb
mmu             : sv32
~ # free -h
              total        used        free      shared  buff/cache   available
Mem:          14.7M        3.0M        8.9M           0        2.8M        8.2M
Swap:             0           0           0
~ # coremark | grep teration
Iterations/Sec   : 8.278146
Iterations       : 110

Re: Linux on S31

Posted: Mon Jul 06, 2026 3:59 pm
by hehongbo
Holy shit, why are u so fast :o
I am still struggling with u-boot

Re: Linux on S31

Posted: Wed Jul 08, 2026 10:10 am
by andylinpersonal
For such an XIP kernel and constrained 16MiB device, we can skip u-boot entirely and jump into kernel from OpenSBI directly.
But u-boot may be useful to load a normal kernel from external device if later s31 SoC comes with larger PSRAM.