i-RISCV Linux Support

The i-RISCV SoC boots an unmodified, stock Linux kernel. Both v6.6 and v7.2 are maintained as sibling boot harnesses sharing the same RTL, both firmware paths, and one device tree – a release 2.5 years newer booting with zero RTL or firmware changes is itself a stability test, and v7.2’s extension-detection table additionally recognizes six extensions v6.6’s doesn’t (Zicond, Zfa, Zawrs, Zicbop, Zihintpause, Zkt).

What Boots

  • Unmodified upstream Linux (v6.6 and v7.2), configured for every extension this core implements
  • Two interchangeable M-mode boot-firmware paths: unmodified upstream OpenSBI (default) or this project’s own standalone SBI – both hand off to the exact same kernel image at the same address from the same device tree (see SBI)
  • A single generated device tree (firmware/dts/gen_soc_dts.py) advertising all ratified ISA strings plus the real UART, PLIC, APLIC, IOMMU, and IMSIC nodes – v6.6 leaves the IOMMU/IMSIC/APLIC nodes unprobed (it has no in-tree drivers for them), while v7.2 genuinely resolves all three

What Works During Boot

  • Full extension detection by the kernel itself (base ISA plus every Z/S extension its version recognizes)
  • Sstc: the kernel writes stimecmp directly from S-mode for every tick – no SBI TIME calls at all
  • Real serial console: the stock 8250 driver binds to the ns16550a UART (earlycon bootconsole, then ttyS0)
  • Full boot-to-poweroff confirmed end to end: memory management, RCU, the ASID allocator, devtmpfs, IOMMU/IMSIC/APLIC driver init (v7.2), a real clocksource switch, and KVM all initialize; the non-interactive /init then dumps /proc/cpuinfo and powers off cleanly at roughly 143M-234M simulated cycles with no panic or hang
  • Real 2-hart SMP boot on both kernel versions (CONFIG_SMP=y against the multicore top): the second hart is parked at reset and released by SBI HSM, with IPIs via CLINT MSIP and synchronous cross-hart RFENCE TLB shootdowns (see SBI)
  • KVM: on v6.6 riscv_kvm_init() completes cleanly; on v7.2 the full KVM AIA SGEI path resolves against the real IMSIC S-file node and returns success within seconds of kernel time
  • This project’s own IOPMP platform driver binds on both kernels
  • Non-interactive userspace: PID 1 is a minimal POSIX-C program built against the kernel’s own vendored nolibc – it mounts devtmpfs/proc/sysfs, dumps /proc/cpuinfo to the console between fixed delimiters, and powers off; no interactive shell (an honest scope cut: one would need a full userspace cross-toolchain)
  • The simulator polls a testbench-only DBG_EXIT register that both firmware paths write on SRST shutdown, so a completed run stops itself immediately instead of idling to its cycle ceiling – the register is dead-code-eliminated from any real synthesis

Linux Boot Log + /proc/cpuinfo Output

The following listing is taken from a Verilator simulation run showing the unmodified OpenSBI booting an unmodified Linux 7.2.4 kernel.

At the end of the log the init process mounts /proc and /sys and dumps the content of /proc/cpuinfo.

The logs provide a glimpse on the support. The common regression testing of the i-RISCV SoC include the following testing:

SBI type Number of Harts Linux Kernel
OpenSBI 1 Linux kernel 7.2.4 without SMP support
OpenSBI 2 Linux kernel 7.2.4 with SMP support
OpenSBI 1 Linux kernel 6.6 without SMP support
OpenSBI 2 Linux kernel 6.6 with SMP support
standalone SBI 1 Linux kernel 7.2.4 without SMP support
standalone SBI 2 Linux kernel 7.2.4 with SMP support
standalone SBI 1 Linux kernel 6.6 without SMP support
standalone SBI 2 Linux kernel 6.6 with SMP support

All Linux kernels and OpenSBI code are used unmodified.

Linux Boot with OpenSBI and Single Core

OpenSBI v1.9
   ____                    _____ ____ _____
  / __ \                  / ____|  _ \_   _|
 | |  | |_ __   ___ _ __ | (___ | |_) || |
 | |  | | '_ \ / _ \ '_ \ \___ \|  _ < | |
 | |__| | |_) |  __/ | | |____) | |_) || |_
  \____/| .__/ \___|_| |_|_____/|____/_____|
        | |
        |_|

Platform Name               : Chronox i-RISCV RVA23U64 SoC 2.0.0 1-hart
Platform Features           : medeleg
Platform HART Count         : 1
Platform HART Protection    : epmp
Platform IPI Device         : aclint-mswi
Platform Timer Device       : aclint-mtimer @ 50000000Hz
Platform Console Device     : uart8250
Platform HSM Device         : ---
Platform PMU Device         : ---
Platform Reboot Device      : ---
Platform Shutdown Device    : syscon-poweroff
Platform Suspend Device     : ---
Platform CPPC Device        : ---
Firmware Base               : 0x80100000
Firmware Size               : 321 KB
Firmware RW Offset          : 0x40000
Firmware RW Size            : 65 KB
Firmware Heap Offset        : 0x47000
Firmware Heap Size          : 37 KB (total), 0 KB (reserved), 12 KB (used), 24 KB (free)
Firmware Scratch Size       : 4096 B (total), 1472 B (used), 2624 B (free)
Runtime SBI Version         : 3.0
Standard SBI Extensions     : rfnc,ipi,base,hsm,srst,pmu,dbcn,fwft,legacy,sse,time
Experimental SBI Extensions : none

Domain0 Name                : root
Domain0 Boot HART           : 0
Domain0 HARTs               : 0x0*
Domain0 Region00            : 0x0000000080140000-0x000000008015ffff M: (F,R,W) S/U: ()
Domain0 Region01            : 0x0000000080100000-0x000000008013ffff M: (F,R,X) S/U: ()
Domain0 Region02            : 0x000000003f000000-0x000000003f000007 M: (I,R,W) S/U: (R,W)
Domain0 Region03            : 0x0000000010000000-0x0000000010000fff M: (I,R,W) S/U: (R,W)
Domain0 Region04            : 0x0000000002000000-0x000000000200ffff M: (I,R,W) S/U: ()
Domain0 Region05            : 0x000000000c000000-0x000000000fffffff M: (I,R,W) S/U: (R,W)
Domain0 Region06            : 0x0000000000000000-0xffffffffffffffff M: () S/U: (R,W,X)
Domain0 Next Address        : 0x0000000080200000
Domain0 Next Arg1           : 0x0000000082300000
Domain0 Next Mode           : S-mode
Domain0 SysReset            : yes
Domain0 SysSuspend          : yes

Boot HART ID                : 0
Boot HART Domain            : root
Boot HART Priv Version      : v1.12
Boot HART Base ISA          : rv64imafdcvh
Boot HART ISA Extensions    : smaia,smepmp,sstc,zicntr,zicboz,zicbom,svpbmt,svade,svadu,zicfilp,zicfiss,ssdbltrp,v,f,d
Boot HART PMP Count         : 64
Boot HART PMP Granularity   : 2 bits
Boot HART PMP Address Bits  : 54
Boot HART MHPM Info         : 0 (0x00000000)
Boot HART Debug Triggers    : 0 triggers
Boot HART MIDELEG           : 0x0000000000001666
Boot HART MEDELEG           : 0x0000000000f4b509
[    0.000000] Linux version 7.2.4 (sm@GravitonMB.lan) (riscv64-elf-gcc (GCC) 16.2.0, GNU ld (GNU Binutils) 2.42) #1 PREEMPT Thu Oct  1 13:05:56 CEST 2026
[    0.000000] Machine model: Chronox i-RISCV RVA23U64 SoC 2.0.0 1-hart
[    0.000000] SBI specification v3.0 detected
[    0.000000] SBI implementation ID=0x1 Version=0x10009
[    0.000000] SBI TIME extension detected
[    0.000000] SBI IPI extension detected
[    0.000000] SBI RFENCE extension detected
[    0.000000] SBI SRST extension detected
[    0.000000] SBI DBCN extension detected
[    0.000000] SBI FWFT extension detected
[    0.000000] earlycon: uart8250 at MMIO 0x0000000010000000 (options '115200n8,50000000')
[    0.000000] printk: legacy bootconsole [uart8250] enabled
[    0.000000] OF: reserved mem: 0x0000000080100000..0x000000008013ffff (256 KiB) nomap non-reusable mmode_resv1@80100000
[    0.000000] OF: reserved mem: 0x0000000080140000..0x000000008015ffff (128 KiB) nomap non-reusable mmode_resv0@80140000
[    0.000000] OF: reserved mem: 0x0000000080000000..0x00000000801fffff (2048 KiB) nomap non-reusable firmware@80000000
[    0.000000] OF: reserved mem: OVERLAP DETECTED!
[    0.000000] firmware@80000000 (0x0000000080000000--0x0000000080200000) overlaps with mmode_resv1@80100000 (0x0000000080100000--0x0000000080140000)
[    0.000000] riscv: base ISA extensions acdfhimv
[    0.000000] riscv: ELF capabilities acdfimv
[    0.000000] Ticket spinlock: enabled
[    0.000000] Zone ranges:
[    0.000000]   DMA32    [mem 0x0000000080000000-0x000000008fffffff]
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000080000000-0x00000000801fffff]
[    0.000000]   node   0: [mem 0x0000000080200000-0x000000008fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x000000008fffffff]
[    0.000000] Kernel command line: earlycon=uart8250,mmio,0x10000000,115200n8,50000000 console=ttyS0,115200 panic=-1
[    0.000000] printk: log buffer data + meta data: 131072 + 458752 = 589824 bytes
[    0.000000] Dentry cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.000000] Inode-cache hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted to 0MB
[    0.000000] software IO TLB: area num 1.
[    0.000000] software IO TLB: mapped [mem 0x000000008ef4e000-0x000000008ef8e000] (0MB)
[    0.000000] Virtual kernel memory layout:
[    0.000000]       fixmap : 0xffffffc4fea00000 - 0xffffffc4ff000000   (6144 kB)
[    0.000000]       pci io : 0xffffffc4ff000000 - 0xffffffc500000000   (  16 MB)
[    0.000000]      vmemmap : 0xffffffc500000000 - 0xffffffc600000000   (4096 MB)
[    0.000000]      vmalloc : 0xffffffc600000000 - 0xffffffd600000000   (  64 GB)
[    0.000000]      modules : 0xffffffff00d07000 - 0xffffffff80000000   (2034 MB)
[    0.000000]       lowmem : 0xffffffd600000000 - 0xffffffd610000000   ( 256 MB)
[    0.000000]       kernel : 0xffffffff80000000 - 0xffffffffffffffff   (2047 MB)
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 65536
[    0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] RCU Tasks: Setting shift to 0 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=1.
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] riscv-intc: 64 local interrupts mapped using AIA
[    0.000000] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.000000] clocksource: riscv_clocksource: mask: 0xffffffffffffffff max_cycles: 0xb8812736b, max_idle_ns: 440795202655 ns
[    0.000015] sched_clock: 64 bits at 50MHz, resolution 20ns, wraps every 4398046511100ns
[    0.008646] riscv-timer: Timer interrupt in S-mode is available via sstc extension
[    0.019614] Calibrating delay loop (skipped), value calculated using timer frequency.. 100.00 BogoMIPS (lpj=200000)
[    0.030923] pid_max: default: 32768 minimum: 301
[    0.041707] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.049645] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.065359] VFS: Finished mounting rootfs on nullfs
[    0.101805] riscv: ELF compat mode unsupported
[    0.102098] ASID allocator using 16 bits (65536 entries)
[    0.118696] Memory: 223376K/262144K available (3970K kernel code, 4759K rwdata, 2048K rodata, 2188K init, 244K bss, 37584K reserved, 0K cma-reserved)
[    0.140539] devtmpfs: initialized
[    0.183883] posixtimers hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.193230] futex hash table entries: 256 (12288 bytes on 1 NUMA nodes, total 12 KiB, linear).
[    0.214265] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.225457] cpuidle: using governor menu
[    0.306757] iommu: Default domain type: Translated
[    0.312073] iommu: DMA domain TLB invalidation policy: strict mode
[    0.324128] clocksource: Switched to clocksource riscv_clocksource
[    0.384867] cpu0: scalar unaligned word access speed is 3.30x byte access speed (fast)
[    0.413240] cpu0: vector unaligned word access speed is 2.94x byte access speed (fast)
[    0.428757] kvm [1]: hypervisor extension available
[    0.440926] kvm [1]: highest G-stage page table mode is Sv57x4
[    0.451725] kvm [1]: VMID 14 bits available
[    0.460261] kvm [1]: AIA available with 0 guest external interrupts
[    0.481461] workingset: timestamp_bits=46 (anon: 41) max_order=16 bucket_order=0 (anon: 0)
[    0.498698] io scheduler mq-deadline registered
[    0.503789] io scheduler kyber registered
[    0.508966] io scheduler bfq registered
[    0.516814] riscv-imsic: interrupt-controller@28000000:  hart-index-bits: 0,  guest-index-bits: 0
[    0.526446] riscv-imsic: interrupt-controller@28000000: group-index-bits: 0, group-index-shift: 24
[    0.536325] riscv-imsic: interrupt-controller@28000000: per-CPU IDs 63 at base address 0x0000000028000000
[    0.546695] riscv-imsic: interrupt-controller@28000000: total 62 interrupts available
[    0.560313] riscv-plic: interrupt-controller@c000000: mapped 9 interrupts with 0 handlers for 2 contexts.
[    0.619239] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    0.673387] of_serial 10000000.serial: error -ENXIO: IRQ index 0 not found
[    0.687580] printk: legacy console [ttyS0] disabled
[    0.705365] 10000000.serial: ttyS0 at MMIO 0x10000000 (irq = 0, base_baud = 3125000) is a 16550A
[    0.716003] printk: legacy console [ttyS0] enabled
[    0.716003] printk: legacy console [ttyS0] enabled
[    0.726950] printk: legacy bootconsole [uart8250] disabled
[    0.726950] printk: legacy bootconsole [uart8250] disabled
[    1.560799] debug_vm_pgtable: [debug_vm_pgtable         ]: Validating architecture page table helpers
[    1.574771] riscv-aplic 2c000000.interrupt-controller: 8 interrupts forwarded to MSI base 0x0000000028000000
[    1.594902] riscv,iommu 30000000.iommu: using wire-signaled interrupts
[    1.618206] riscv-iopmp 34000000.iopmp: IOPMP found: spec v8.0, impl 0x00000001, 16 entries, 16 RRIDs, not yet armed (HWCFG0.enable=0, every access currently granted)
[    1.641227] clk: Disabling unused clocks
[    1.645586] PM: genpd: Disabling unused power domains
[    1.651319] Warning: unable to open an initial console.
[    1.697504] Freeing unused kernel image (initmem) memory: 2188K
[    1.704634] Run /init as init process
[    1.718407] [init] setup_console: mount=0 open1=0

[init] POSIX-C init starting (nolibc, riscv64)
=== BEGIN STATUS/CSR DUMP ===
IRISCV_STATUS_NAME: 0x4952562d54535431 ("IRV-TST1")
IRISCV_STATUS_VERSION: 0x0000000000000002
IRISCV_STATUS_MECHANISMS: 0x0000000000003fff
CSR_IRISCV_ES_FUSE_DATA: 0x00000000000061a8
CSR_IRISCV_ES_FUSE_KEYS: 0x0000000000000000
CSR_IRISCV_ES_FUSE_LOCK: 0x0000000000000001
CSR_IRISCV_ES_FUSE_SEL: 0x0000000000000050
CSR_IRISCV_ES_HEALTH: 0x0000000000000000
IRISCV_CRYPTO_SELFTEST_NOT_EXECUTED: 0xfffffffffffffec8
IRISCV_CRYPTO_SELFTEST_PASSED: 0x0000000000000137
IRISCV_CRYPTO_SELFTEST_FAILED: 0x0000000000000000
IRISCV_CRYPTO_FIPS_APPROVED: 0x0000000000000135
=== END STATUS/CSR DUMP ===
[init] mount /proc (proc): OK
[init] mount /sys (sysfs): OK
=== BEGIN /proc/cpuinfo ===
processor	: 0
hart		: 0
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt
mmu		: sv39
mvendorid	: 0x0
marchid		: 0x0
mimpid		: 0x0
hart isa	: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt

=== END /proc/cpuinfo ===
[init] userspace checks complete -- powering off
[    2.469642] kvm: exiting hardware virtualization
[    2.474703] reboot: Power down

Linux Boot with OpenSBI and Two Core SMP

OpenSBI v1.9
   ____                    _____ ____ _____
  / __ \                  / ____|  _ \_   _|
 | |  | |_ __   ___ _ __ | (___ | |_) || |
 | |  | | '_ \ / _ \ '_ \ \___ \|  _ < | |
 | |__| | |_) |  __/ | | |____) | |_) || |_
  \____/| .__/ \___|_| |_|_____/|____/_____|
        | |
        |_|

Platform Name               : Chronox i-RISCV RVA23U64 SoC 2.0.0 2-hart
Platform Features           : medeleg
Platform HART Count         : 2
Platform HART Protection    : epmp
Platform IPI Device         : aclint-mswi
Platform Timer Device       : aclint-mtimer @ 50000000Hz
Platform Console Device     : uart8250
Platform HSM Device         : ---
Platform PMU Device         : ---
Platform Reboot Device      : ---
Platform Shutdown Device    : syscon-poweroff
Platform Suspend Device     : ---
Platform CPPC Device        : ---
Firmware Base               : 0x80100000
Firmware Size               : 333 KB
Firmware RW Offset          : 0x40000
Firmware RW Size            : 77 KB
Firmware Heap Offset        : 0x49000
Firmware Heap Size          : 41 KB (total), 0 KB (reserved), 12 KB (used), 28 KB (free)
Firmware Scratch Size       : 4096 B (total), 1472 B (used), 2624 B (free)
Runtime SBI Version         : 3.0
Standard SBI Extensions     : rfnc,ipi,base,hsm,srst,pmu,dbcn,fwft,legacy,sse,time
Experimental SBI Extensions : none

Domain0 Name                : root
Domain0 Boot HART           : 0
Domain0 HARTs               : 0x0*,0x1*
Domain0 Region00            : 0x0000000080140000-0x000000008015ffff M: (F,R,W) S/U: ()
Domain0 Region01            : 0x0000000080100000-0x000000008013ffff M: (F,R,X) S/U: ()
Domain0 Region02            : 0x000000003f000000-0x000000003f000007 M: (I,R,W) S/U: (R,W)
Domain0 Region03            : 0x0000000010000000-0x0000000010000fff M: (I,R,W) S/U: (R,W)
Domain0 Region04            : 0x0000000002000000-0x000000000200ffff M: (I,R,W) S/U: ()
Domain0 Region05            : 0x000000000c000000-0x000000000fffffff M: (I,R,W) S/U: (R,W)
Domain0 Region06            : 0x0000000000000000-0xffffffffffffffff M: () S/U: (R,W,X)
Domain0 Next Address        : 0x0000000080200000
Domain0 Next Arg1           : 0x0000000082300000
Domain0 Next Mode           : S-mode
Domain0 SysReset            : yes
Domain0 SysSuspend          : yes

Boot HART ID                : 0
Boot HART Domain            : root
Boot HART Priv Version      : v1.12
Boot HART Base ISA          : rv64imafdcvh
Boot HART ISA Extensions    : smaia,smepmp,sstc,zicntr,zicboz,zicbom,svpbmt,svade,svadu,zicfilp,zicfiss,ssdbltrp,v,f,d
Boot HART PMP Count         : 64
Boot HART PMP Granularity   : 2 bits
Boot HART PMP Address Bits  : 54
Boot HART MHPM Info         : 0 (0x00000000)
Boot HART Debug Triggers    : 0 triggers
Boot HART MIDELEG           : 0x0000000000001666
Boot HART MEDELEG           : 0x0000000000f4b509
[    0.000000] Booting Linux on hartid 0
[    0.000000] Linux version 7.2.4 (sm@GravitonMB.lan) (riscv64-elf-gcc (GCC) 16.2.0, GNU ld (GNU Binutils) 2.42) #1 SMP PREEMPT Thu Oct  1 13:10:12 CEST 2026
[    0.000000] Machine model: Chronox i-RISCV RVA23U64 SoC 2.0.0 2-hart
[    0.000000] SBI specification v3.0 detected
[    0.000000] SBI implementation ID=0x1 Version=0x10009
[    0.000000] SBI TIME extension detected
[    0.000000] SBI IPI extension detected
[    0.000000] SBI RFENCE extension detected
[    0.000000] SBI SRST extension detected
[    0.000000] SBI DBCN extension detected
[    0.000000] SBI FWFT extension detected
[    0.000000] earlycon: uart8250 at MMIO 0x0000000010000000 (options '115200n8,50000000')
[    0.000000] printk: legacy bootconsole [uart8250] enabled
[    0.000000] OF: reserved mem: 0x0000000080100000..0x000000008013ffff (256 KiB) nomap non-reusable mmode_resv1@80100000
[    0.000000] OF: reserved mem: 0x0000000080140000..0x000000008015ffff (128 KiB) nomap non-reusable mmode_resv0@80140000
[    0.000000] OF: reserved mem: 0x0000000080000000..0x00000000801fffff (2048 KiB) nomap non-reusable firmware@80000000
[    0.000000] OF: reserved mem: OVERLAP DETECTED!
[    0.000000] firmware@80000000 (0x0000000080000000--0x0000000080200000) overlaps with mmode_resv1@80100000 (0x0000000080100000--0x0000000080140000)
[    0.000000] SBI HSM extension detected
[    0.000000] riscv: base ISA extensions acdfhimv
[    0.000000] riscv: ELF capabilities acdfimv
[    0.000000] Ticket spinlock: enabled
[    0.000000] Zone ranges:
[    0.000000]   DMA32    [mem 0x0000000080000000-0x000000008fffffff]
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000080000000-0x00000000801fffff]
[    0.000000]   node   0: [mem 0x0000000080200000-0x000000008fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x000000008fffffff]
[    0.000000] percpu: Embedded 19 pages/cpu s47664 r0 d30160 u77824
[    0.000000] Kernel command line: earlycon=uart8250,mmio,0x10000000,115200n8,50000000 console=ttyS0,115200 panic=-1
[    0.000000] printk: log buffer data + meta data: 131072 + 458752 = 589824 bytes
[    0.000000] Dentry cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.000000] Inode-cache hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted to 0MB
[    0.000000] software IO TLB: area num 2.
[    0.000000] software IO TLB: SWIOTLB bounce buffer size roundup to 0MB
[    0.000000] software IO TLB: mapped [mem 0x000000008eeee000-0x000000008ef6e000] (0MB)
[    0.000000] Virtual kernel memory layout:
[    0.000000]       fixmap : 0xffffffc4fea00000 - 0xffffffc4ff000000   (6144 kB)
[    0.000000]       pci io : 0xffffffc4ff000000 - 0xffffffc500000000   (  16 MB)
[    0.000000]      vmemmap : 0xffffffc500000000 - 0xffffffc600000000   (4096 MB)
[    0.000000]      vmalloc : 0xffffffc600000000 - 0xffffffd600000000   (  64 GB)
[    0.000000]      modules : 0xffffffff00f02000 - 0xffffffff80000000   (2032 MB)
[    0.000000]       lowmem : 0xffffffd600000000 - 0xffffffd610000000   ( 256 MB)
[    0.000000]       kernel : 0xffffffff80000000 - 0xffffffffffffffff   (2047 MB)
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 65536
[    0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu: 	RCU debug extended QS entry/exit.
[    0.000000] 	Trampoline variant of Tasks RCU enabled.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] RCU Tasks: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=2.
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] riscv-intc: 64 local interrupts mapped using AIA
[    0.000000] riscv-imsic: interrupt-controller@28000000: providing IPIs using interrupt 1
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.000000] clocksource: riscv_clocksource: mask: 0xffffffffffffffff max_cycles: 0xb8812736b, max_idle_ns: 440795202655 ns
[    0.000017] sched_clock: 64 bits at 50MHz, resolution 20ns, wraps every 4398046511100ns
[    0.008748] riscv-timer: Timer interrupt in S-mode is available via sstc extension
[    0.020581] Calibrating delay loop (skipped), value calculated using timer frequency.. 100.00 BogoMIPS (lpj=200000)
[    0.032358] pid_max: default: 32768 minimum: 301
[    0.043565] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.051632] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.068995] VFS: Finished mounting rootfs on nullfs
[    0.118617] riscv: ELF compat mode unsupported
[    0.118975] ASID allocator using 16 bits (65536 entries)
[    0.134306] rcu: Hierarchical SRCU implementation.
[    0.139694] rcu: 	Max phase no-delay instances is 1000.
[    0.152925] Timer migration: 1 hierarchy levels; 8 children per group; 1 crossnode level
[    0.170465] smp: Bringing up secondary CPUs ...
[    0.193426] smp: Brought up 1 node, 2 CPUs
[    0.201486] Memory: 220080K/262144K available (4205K kernel code, 4680K rwdata, 2048K rodata, 2245K init, 245K bss, 40020K reserved, 0K cma-reserved)
[    0.227532] devtmpfs: initialized
[    0.285782] posixtimers hash table entries: 1024 (order: 3, 32768 bytes, linear)
[    0.296173] futex hash table entries: 512 (32768 bytes on 1 NUMA nodes, total 32 KiB, linear).
[    0.324912] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.336753] cpuidle: using governor menu
[    0.426277] iommu: Default domain type: Translated
[    0.431732] iommu: DMA domain TLB invalidation policy: strict mode
[    0.447281] clocksource: Switched to clocksource riscv_clocksource
[    0.509928] cpu1: scalar unaligned word access speed is 3.36x byte access speed (fast)
[    0.509970] cpu0: scalar unaligned word access speed is 3.36x byte access speed (fast)
[    0.549709] cpu1: vector unaligned word access speed is 3.25x byte access speed (fast)
[    0.549720] cpu0: vector unaligned word access speed is 3.26x byte access speed (fast)
[    0.570916] kvm [1]: hypervisor extension available
[    0.576610] kvm [1]: highest G-stage page table mode is Sv57x4
[    0.583328] kvm [1]: VMID 14 bits available
[    0.592705] kvm [1]: AIA available with 0 guest external interrupts
[    0.618437] workingset: timestamp_bits=46 (anon: 41) max_order=16 bucket_order=0 (anon: 0)
[    0.635808] io scheduler mq-deadline registered
[    0.641036] io scheduler kyber registered
[    0.646446] io scheduler bfq registered
[    0.656227] riscv-imsic: interrupt-controller@28000000:  hart-index-bits: 1,  guest-index-bits: 0
[    0.666004] riscv-imsic: interrupt-controller@28000000: group-index-bits: 0, group-index-shift: 24
[    0.675979] riscv-imsic: interrupt-controller@28000000: per-CPU IDs 63 at base address 0x0000000028000000
[    0.686503] riscv-imsic: interrupt-controller@28000000: total 124 interrupts available
[    0.701272] riscv-plic: interrupt-controller@c000000: mapped 9 interrupts with 0 handlers for 4 contexts.
[    0.761841] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    0.815693] of_serial 10000000.serial: error -ENXIO: IRQ index 0 not found
[    0.828424] printk: legacy console [ttyS0] disabled
[    0.844996] 10000000.serial: ttyS0 at MMIO 0x10000000 (irq = 0, base_baud = 3125000) is a 16550A
[    0.855892] printk: legacy console [ttyS0] enabled
[    0.855892] printk: legacy console [ttyS0] enabled
[    0.867502] printk: legacy bootconsole [uart8250] disabled
[    0.867502] printk: legacy bootconsole [uart8250] disabled
[    1.773779] debug_vm_pgtable: [debug_vm_pgtable         ]: Validating architecture page table helpers
[    1.788057] riscv-aplic 2c000000.interrupt-controller: 8 interrupts forwarded to MSI base 0x0000000028000000
[    1.805465] riscv,iommu 30000000.iommu: using wire-signaled interrupts
[    1.828844] riscv-iopmp 34000000.iopmp: IOPMP found: spec v8.0, impl 0x00000001, 16 entries, 16 RRIDs, not yet armed (HWCFG0.enable=0, every access currently granted)
[    1.853016] clk: Disabling unused clocks
[    1.857554] PM: genpd: Disabling unused power domains
[    1.863515] Warning: unable to open an initial console.
[    1.899101] Freeing unused kernel image (initmem) memory: 2244K
[    1.906463] Run /init as init process
[    1.920426] [init] setup_console: mount=0 open1=0

[init] POSIX-C init starting (nolibc, riscv64)
=== BEGIN STATUS/CSR DUMP ===
IRISCV_STATUS_NAME: 0x4952562d54535431 ("IRV-TST1")
IRISCV_STATUS_VERSION: 0x0000000000000002
IRISCV_STATUS_MECHANISMS: 0x0000000000003fff
CSR_IRISCV_ES_FUSE_DATA: 0x00000000000061a8
CSR_IRISCV_ES_FUSE_KEYS: 0x0000000000000000
CSR_IRISCV_ES_FUSE_LOCK: 0x0000000000000001
CSR_IRISCV_ES_FUSE_SEL: 0x0000000000000000
CSR_IRISCV_ES_HEALTH: 0x0000000000000000
IRISCV_CRYPTO_SELFTEST_NOT_EXECUTED: 0xfffffffffffffec8
IRISCV_CRYPTO_SELFTEST_PASSED: 0x0000000000000137
IRISCV_CRYPTO_SELFTEST_FAILED: 0x0000000000000000
IRISCV_CRYPTO_FIPS_APPROVED: 0x0000000000000135
=== END STATUS/CSR DUMP ===
[init] mount /proc (proc): OK
[init] mount /sys (sysfs): OK
=== BEGIN /proc/cpuinfo ===
processor	: 0
hart		: 0
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt
mmu		: sv39
mvendorid	: 0x0
marchid		: 0x0
mimpid		: 0x0
hart isa	: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt

processor	: 1
hart		: 1
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt
mmu		: sv39
mvendorid	: 0x0
marchid		: 0x0
mimpid		: 0x0
hart isa	: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt

=== END /proc/cpuinfo ===
[init] userspace checks complete -- powering off
[    2.977669] kvm: exiting hardware virtualization
[    2.983092] reboot: Power down

Linux Boot with OpenSBI and Eight Core SMP

In addition, an 8-Hart test is implemented executing Linux 7.2.4 together with OpenSBI upon request. The goal of this test is to validate the heavy contention handling when 8 CPUs are instantiated and operated by Linux.

OpenSBI v1.9
   ____                    _____ ____ _____
  / __ \                  / ____|  _ \_   _|
 | |  | |_ __   ___ _ __ | (___ | |_) || |
 | |  | | '_ \ / _ \ '_ \ \___ \|  _ < | |
 | |__| | |_) |  __/ | | |____) | |_) || |_
  \____/| .__/ \___|_| |_|_____/|____/_____|
        | |
        |_|

Platform Name               : Chronox i-RISCV RVA23U64 SoC 2.0.0 8-hart
Platform Features           : medeleg
Platform HART Count         : 8
Platform HART Protection    : epmp
Platform IPI Device         : aclint-mswi
Platform Timer Device       : aclint-mtimer @ 50000000Hz
Platform Console Device     : uart8250
Platform HSM Device         : ---
Platform PMU Device         : ---
Platform Reboot Device      : ---
Platform Shutdown Device    : syscon-poweroff
Platform Suspend Device     : ---
Platform CPPC Device        : ---
Firmware Base               : 0x80100000
Firmware Size               : 407 KB
Firmware RW Offset          : 0x40000
Firmware RW Size            : 151 KB
Firmware Heap Offset        : 0x55000
Firmware Heap Size          : 67 KB (total), 1 KB (reserved), 12 KB (used), 53 KB (free)
Firmware Scratch Size       : 4096 B (total), 1472 B (used), 2624 B (free)
Runtime SBI Version         : 3.0
Standard SBI Extensions     : rfnc,ipi,base,hsm,srst,pmu,dbcn,fwft,legacy,sse,time
Experimental SBI Extensions : none

Domain0 Name                : root
Domain0 Boot HART           : 0
Domain0 HARTs               : 0x0*,0x1*,0x2*,0x3*,0x4*,0x5*,0x6*,0x7*
Domain0 Region00            : 0x0000000080100000-0x000000008013ffff M: (F,R,X) S/U: ()
Domain0 Region01            : 0x0000000080140000-0x000000008017ffff M: (F,R,W) S/U: ()
Domain0 Region02            : 0x000000003f000000-0x000000003f000007 M: (I,R,W) S/U: (R,W)
Domain0 Region03            : 0x0000000010000000-0x0000000010000fff M: (I,R,W) S/U: (R,W)
Domain0 Region04            : 0x0000000002000000-0x000000000200ffff M: (I,R,W) S/U: ()
Domain0 Region05            : 0x000000000c000000-0x000000000fffffff M: (I,R,W) S/U: (R,W)
Domain0 Region06            : 0x0000000000000000-0xffffffffffffffff M: () S/U: (R,W,X)
Domain0 Next Address        : 0x0000000080200000
Domain0 Next Arg1           : 0x0000000082300000
Domain0 Next Mode           : S-mode
Domain0 SysReset            : yes
Domain0 SysSuspend          : yes

Boot HART ID                : 0
Boot HART Domain            : root
Boot HART Priv Version      : v1.12
Boot HART Base ISA          : rv64imafdcvh
Boot HART ISA Extensions    : smaia,smepmp,sstc,zicntr,zicboz,zicbom,svpbmt,svade,svadu,zicfilp,zicfiss,ssdbltrp,v,f,d
Boot HART PMP Count         : 64
Boot HART PMP Granularity   : 2 bits
Boot HART PMP Address Bits  : 54
Boot HART MHPM Info         : 0 (0x00000000)
Boot HART Debug Triggers    : 0 triggers
Boot HART MIDELEG           : 0x0000000000001666
Boot HART MEDELEG           : 0x0000000000f4b509
[    0.000000] Booting Linux on hartid 0
[    0.000000] Linux version 7.2.4 (sm@GravitonMB.lan) (riscv64-elf-gcc (GCC) 16.2.0, GNU ld (GNU Binutils) 2.42) #2 SMP PREEMPT Fri Oct  2 06:41:05 CEST 2026
[    0.000000] Machine model: Chronox i-RISCV RVA23U64 SoC 2.0.0 8-hart
[    0.000000] SBI specification v3.0 detected
[    0.000000] SBI implementation ID=0x1 Version=0x10009
[    0.000000] SBI TIME extension detected
[    0.000000] SBI IPI extension detected
[    0.000000] SBI RFENCE extension detected
[    0.000000] SBI SRST extension detected
[    0.000000] SBI DBCN extension detected
[    0.000000] SBI FWFT extension detected
[    0.000000] earlycon: uart8250 at MMIO 0x0000000010000000 (options '115200n8,50000000')
[    0.000000] printk: legacy bootconsole [uart8250] enabled
[    0.000000] OF: reserved mem: 0x0000000080140000..0x000000008017ffff (256 KiB) nomap non-reusable mmode_resv1@80140000
[    0.000000] OF: reserved mem: 0x0000000080100000..0x000000008013ffff (256 KiB) nomap non-reusable mmode_resv0@80100000
[    0.000000] OF: reserved mem: 0x0000000080000000..0x00000000801fffff (2048 KiB) nomap non-reusable firmware@80000000
[    0.000000] OF: reserved mem: OVERLAP DETECTED!
[    0.000000] firmware@80000000 (0x0000000080000000--0x0000000080200000) overlaps with mmode_resv0@80100000 (0x0000000080100000--0x0000000080140000)
[    0.000000] SBI HSM extension detected
[    0.000000] riscv: base ISA extensions acdfhimv
[    0.000000] riscv: ELF capabilities acdfimv
[    0.000000] Ticket spinlock: enabled
[    0.000000] Zone ranges:
[    0.000000]   DMA32    [mem 0x0000000080000000-0x000000008fffffff]
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000080000000-0x00000000801fffff]
[    0.000000]   node   0: [mem 0x0000000080200000-0x000000008fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x000000008fffffff]
[    0.000000] percpu: Embedded 19 pages/cpu s47664 r0 d30160 u77824
[    0.000000] Kernel command line: earlycon=uart8250,mmio,0x10000000,115200n8,50000000 console=ttyS0,115200 panic=-1
[    0.000000] printk: log buffer data + meta data: 131072 + 458752 = 589824 bytes
[    0.000000] Dentry cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.000000] Inode-cache hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted to 0MB
[    0.000000] software IO TLB: area num 8.
[    0.000000] software IO TLB: SWIOTLB bounce buffer size roundup to 2MB
[    0.000000] software IO TLB: mapped [mem 0x000000008e800000-0x000000008ea00000] (2MB)
[    0.000000] Virtual kernel memory layout:
[    0.000000]       fixmap : 0xffffffc4fea00000 - 0xffffffc4ff000000   (6144 kB)
[    0.000000]       pci io : 0xffffffc4ff000000 - 0xffffffc500000000   (  16 MB)
[    0.000000]      vmemmap : 0xffffffc500000000 - 0xffffffc600000000   (4096 MB)
[    0.000000]      vmalloc : 0xffffffc600000000 - 0xffffffd600000000   (  64 GB)
[    0.000000]      modules : 0xffffffff00f02000 - 0xffffffff80000000   (2032 MB)
[    0.000000]       lowmem : 0xffffffd600000000 - 0xffffffd610000000   ( 256 MB)
[    0.000000]       kernel : 0xffffffff80000000 - 0xffffffffffffffff   (2047 MB)
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 65536
[    0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=8, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu: 	RCU restricting CPUs from NR_CPUS=16 to nr_cpu_ids=8.
[    0.000000] rcu: 	RCU debug extended QS entry/exit.
[    0.000000] 	Trampoline variant of Tasks RCU enabled.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=8
[    0.000000] RCU Tasks: Setting shift to 3 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=8.
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] riscv-intc: 64 local interrupts mapped using AIA
[    0.000000] riscv-imsic: interrupt-controller@28000000: providing IPIs using interrupt 1
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.000000] clocksource: riscv_clocksource: mask: 0xffffffffffffffff max_cycles: 0xb8812736b, max_idle_ns: 440795202655 ns
[    0.000017] sched_clock: 64 bits at 50MHz, resolution 20ns, wraps every 4398046511100ns
[    0.008757] riscv-timer: Timer interrupt in S-mode is available via sstc extension
[    0.022598] Calibrating delay loop (skipped), value calculated using timer frequency.. 100.00 BogoMIPS (lpj=200000)
[    0.034225] pid_max: default: 32768 minimum: 301
[    0.047256] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.055472] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.073171] VFS: Finished mounting rootfs on nullfs
[    0.124896] riscv: ELF compat mode unsupported
[    0.125782] ASID allocator using 16 bits (65536 entries)
[    0.140296] rcu: Hierarchical SRCU implementation.
[    0.145937] rcu: 	Max phase no-delay instances is 1000.
[    0.159285] Timer migration: 1 hierarchy levels; 8 children per group; 1 crossnode level
[    0.186156] smp: Bringing up secondary CPUs ...
[    0.333939] smp: Brought up 1 node, 8 CPUs
[    0.349803] Memory: 216864K/262144K available (4230K kernel code, 4680K rwdata, 2048K rodata, 2245K init, 246K bss, 42048K reserved, 0K cma-reserved)
[    0.377836] devtmpfs: initialized
[    0.470643] posixtimers hash table entries: 4096 (order: 5, 131072 bytes, linear)
[    0.486361] futex hash table entries: 2048 (131072 bytes on 1 NUMA nodes, total 128 KiB, linear).
[    0.516132] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.527952] cpuidle: using governor menu
[    0.640130] iommu: Default domain type: Translated
[    0.645747] iommu: DMA domain TLB invalidation policy: strict mode
[    0.670816] clocksource: Switched to clocksource riscv_clocksource
[    0.737117] cpu0: scalar unaligned word access speed is 4.00x byte access speed (fast)
[    0.737152] cpu1: scalar unaligned word access speed is 4.00x byte access speed (fast)
[    0.737161] cpu2: scalar unaligned word access speed is 4.00x byte access speed (fast)
[    0.737163] cpu3: scalar unaligned word access speed is 4.00x byte access speed (fast)
[    0.737167] cpu4: scalar unaligned word access speed is 4.00x byte access speed (fast)
[    0.737171] cpu5: scalar unaligned word access speed is 4.00x byte access speed (fast)
[    0.737175] cpu6: scalar unaligned word access speed is 3.99x byte access speed (fast)
[    0.737177] cpu7: scalar unaligned word access speed is 3.99x byte access speed (fast)
[    0.839987] cpu2: vector unaligned word access speed is 2.67x byte access speed (fast)
[    0.840144] cpu4: vector unaligned word access speed is 2.68x byte access speed (fast)
[    0.840147] cpu1: vector unaligned word access speed is 2.72x byte access speed (fast)
[    0.840212] cpu5: vector unaligned word access speed is 2.68x byte access speed (fast)
[    0.840335] cpu6: vector unaligned word access speed is 2.68x byte access speed (fast)
[    0.840358] cpu3: vector unaligned word access speed is 2.68x byte access speed (fast)
[    0.840364] cpu7: vector unaligned word access speed is 2.69x byte access speed (fast)
[    0.840549] cpu0: vector unaligned word access speed is 2.70x byte access speed (fast)
[    0.912542] kvm [1]: hypervisor extension available
[    0.918038] kvm [1]: highest G-stage page table mode is Sv57x4
[    0.924607] kvm [1]: VMID 14 bits available
[    0.937768] kvm [1]: AIA available with 0 guest external interrupts
[    0.975566] workingset: timestamp_bits=46 (anon: 41) max_order=16 bucket_order=0 (anon: 0)
[    0.993703] io scheduler mq-deadline registered
[    0.998904] io scheduler kyber registered
[    1.004643] io scheduler bfq registered
[    1.017274] riscv-imsic: interrupt-controller@28000000:  hart-index-bits: 3,  guest-index-bits: 0
[    1.027106] riscv-imsic: interrupt-controller@28000000: group-index-bits: 0, group-index-shift: 24
[    1.036983] riscv-imsic: interrupt-controller@28000000: per-CPU IDs 63 at base address 0x0000000028000000
[    1.047525] riscv-imsic: interrupt-controller@28000000: total 496 interrupts available
[    1.072552] riscv-plic: interrupt-controller@c000000: mapped 9 interrupts with 0 handlers for 16 contexts.
[    1.133013] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    1.187356] of_serial 10000000.serial: error -ENXIO: IRQ index 0 not found
[    1.200142] printk: legacy console [ttyS0] disabled
[    1.216869] 10000000.serial: ttyS0 at MMIO 0x10000000 (irq = 0, base_baud = 3125000) is a 16550A
[    1.227351] printk: legacy console [ttyS0] enabled
[    1.227351] printk: legacy console [ttyS0] enabled
[    1.238437] printk: legacy bootconsole [uart8250] disabled
[    1.238437] printk: legacy bootconsole [uart8250] disabled
[    2.242066] debug_vm_pgtable: [debug_vm_pgtable         ]: Validating architecture page table helpers
[    2.256690] riscv-aplic 2c000000.interrupt-controller: 8 interrupts forwarded to MSI base 0x0000000028000000
[    2.273511] riscv,iommu 30000000.iommu: using wire-signaled interrupts
[    2.296395] riscv-iopmp 34000000.iopmp: IOPMP found: spec v8.0, impl 0x00000001, 16 entries, 16 RRIDs, not yet armed (HWCFG0.enable=0, every access currently granted)
[    2.323155] clk: Disabling unused clocks
[    2.327564] PM: genpd: Disabling unused power domains
[    2.333485] Warning: unable to open an initial console.
[    2.369178] Freeing unused kernel image (initmem) memory: 2244K
[    2.376496] Run /init as init process
[    2.390396] [init] setup_console: mount=0 open1=0

[init] POSIX-C init starting (nolibc, riscv64)
=== BEGIN STATUS/CSR DUMP ===
IRISCV_STATUS_NAME: 0x4952562d54535431 ("IRV-TST1")
IRISCV_STATUS_VERSION: 0x0000000000000002
IRISCV_STATUS_MECHANISMS: 0x0000000000003fff
CSR_IRISCV_ES_FUSE_DATA: 0x00000000000061a8
CSR_IRISCV_ES_FUSE_KEYS: 0x0000000000000000
CSR_IRISCV_ES_FUSE_LOCK: 0x0000000000000001
CSR_IRISCV_ES_FUSE_SEL: 0x0000000000000050
CSR_IRISCV_ES_HEALTH: 0x0000000000000000
IRISCV_CRYPTO_SELFTEST_NOT_EXECUTED: 0xfffffffffffffec8
IRISCV_CRYPTO_SELFTEST_PASSED: 0x0000000000000137
IRISCV_CRYPTO_SELFTEST_FAILED: 0x0000000000000000
IRISCV_CRYPTO_FIPS_APPROVED: 0x0000000000000135
=== END STATUS/CSR DUMP ===
[init] mount /proc (proc): OK
[init] mount /sys (sysfs): OK
=== BEGIN /proc/cpuinfo ===
processor	: 0
hart		: 0
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt
mmu		: sv39
mvendorid	: 0x0
marchid		: 0x0
mimpid		: 0x0
hart isa	: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt

processor	: 1
hart		: 1
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt
mmu		: sv39
mvendorid	: 0x0
marchid		: 0x0
mimpid		: 0x0
hart isa	: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt

processor	: 2
hart		: 2
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt
mmu		: sv39
mvendorid	: 0x0
marchid		: 0x0
mimpid		: 0x0
hart isa	: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt

processor	: 3
hart		: 3
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt
mmu		: sv39
mvendorid	: 0x0
marchid		: 0x0
mimpid		: 0x0
hart isa	: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt

processor	: 4
hart		: 4
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt
mmu		: sv39
mvendorid	: 0x0
marchid		: 0x0
mimpid		: 0x0
hart isa	: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt

processor	: 5
hart		: 5
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt
mmu		: sv39
mvendorid	: 0x0
marchid		: 0x0
mimpid		: 0x0
hart isa	: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt

processor	: 6
hart		: 6
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt
mmu		: sv39
mvendorid	: 0x0
marchid		: 0x0
mimpid		: 0x0
hart isa	: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt

processor	: 7
hart		: 7
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt
mmu		: sv39
mvendorid	: 0x0
marchid		: 0x0
mimpid		: 0x0
hart isa	: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintpause_zaamo_zalrsc_zawrs_zfa_zca_zcd_zba_zbb_zbs_zkt_zve32f_zve32x_zve64d_zve64f_zve64x_zvfhmin_zvkb_zvkg_zvkned_zvknhb_zvkt_smaia_ssaia_sstc_svade_svinval_svnapot_svpbmt

=== END /proc/cpuinfo ===
[init] userspace checks complete -- powering off
[    5.321017] kvm: exiting hardware virtualization
[    5.326324] reboot: Power down