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

This output shows the in-order 2-way superscalar execution pipeline.

The output for the out-of-order with speculative reordering pipeline is similar with the exception that the RISC-V Ztso extension is not claimed.

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

Platform Name               : Chronox i-RISCV RVA23U64 SoC 3.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), 13 KB (used), 22 KB (free)
Firmware Scratch Size       : 4096 B (total), 1536 B (used), 2560 B (free)
Runtime SBI Version         : 3.0
Standard SBI Extensions     : rfnc,ipi,base,hsm,srst,pmu,dbcn,fwft,legacy,dbtr,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,smstateen,sscofpmf,sstc,zicntr,zihpm,zkr,smcntrpmf,zicboz,zicbom,svpbmt,sdtrig,svade,svadu,smnpm,zicfilp,zicfiss,ssdbltrp,ssstateen,smrnmi,v,f,d
Boot HART PMP Count         : 64
Boot HART PMP Granularity   : 2 bits
Boot HART PMP Address Bits  : 54
Boot HART MHPM Info         : 29 (0xfffffff8)
Boot HART Debug Triggers    : 2 triggers
Boot HART MIDELEG           : 0x0000000000003666
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 Sat Oct 10 19:18:42 CEST 2026
[    0.000000] Machine model: Chronox i-RISCV RVA23U64 SoC 3.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] random: crng init done
[    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 0x000000008ef4d000-0x000000008ef8d000] (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 : 0xffffffff00d08000 - 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.000027] sched_clock: 64 bits at 50MHz, resolution 20ns, wraps every 4398046511100ns
[    0.008751] riscv-timer: Timer interrupt in S-mode is available via sstc extension
[    0.021941] Calibrating delay loop (skipped), value calculated using timer frequency.. 100.00 BogoMIPS (lpj=200000)
[    0.033655] pid_max: default: 32768 minimum: 301
[    0.048081] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.056294] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.073194] VFS: Finished mounting rootfs on nullfs
[    0.122825] riscv: ELF compat mode unsupported
[    0.123443] ASID allocator using 16 bits (65536 entries)
[    0.142084] Memory: 223368K/262144K available (3985K kernel code, 2939K rwdata, 2048K rodata, 4008K init, 244K bss, 37592K reserved, 0K cma-reserved)
[    0.166483] devtmpfs: initialized
[    0.234533] posixtimers hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.243652] futex hash table entries: 256 (12288 bytes on 1 NUMA nodes, total 12 KiB, linear).
[    0.271018] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.284230] cpuidle: using governor menu
[    0.402300] iommu: Default domain type: Translated
[    0.408469] iommu: DMA domain TLB invalidation policy: strict mode
[    0.424454] clocksource: Switched to clocksource riscv_clocksource
[    0.504121] cpu0: scalar unaligned word access speed is 3.38x byte access speed (fast)
[    0.533583] cpu0: vector unaligned word access speed is 1.41x byte access speed (fast)
[    0.557319] kvm [1]: hypervisor extension available
[    0.572962] kvm [1]: highest G-stage page table mode is Sv57x4
[    0.589412] kvm [1]: VMID 14 bits available
[    0.606662] kvm [1]: AIA available with 2 guest external interrupts
[    0.669611] workingset: timestamp_bits=46 (anon: 41) max_order=16 bucket_order=0 (anon: 0)
[    0.714632] io scheduler mq-deadline registered
[    0.720070] io scheduler kyber registered
[    0.734396] io scheduler bfq registered
[    0.765158] riscv-imsic: interrupt-controller@28000000:  hart-index-bits: 0,  guest-index-bits: 2
[    0.786052] riscv-imsic: interrupt-controller@28000000: group-index-bits: 0, group-index-shift: 24
[    0.813003] riscv-imsic: interrupt-controller@28000000: per-CPU IDs 63 at base address 0x0000000028000000
[    0.832960] riscv-imsic: interrupt-controller@28000000: total 62 interrupts available
[    0.856257] riscv-plic: interrupt-controller@c000000: mapped 9 interrupts with 0 handlers for 2 contexts.
[    1.034634] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    1.221037] of_serial 10000000.serial: error -ENXIO: IRQ index 0 not found
[    1.264073] printk: legacy console [ttyS0] disabled
[    1.337122] 10000000.serial: ttyS0 at MMIO 0x10000000 (irq = 0, base_baud = 3125000) is a 16550A
[    1.347998] printk: legacy console [ttyS0] enabled
[    1.347998] printk: legacy console [ttyS0] enabled
[    1.380969] printk: legacy bootconsole [uart8250] disabled
[    1.380969] printk: legacy bootconsole [uart8250] disabled
[    1.515984] riscv-pmu-sbi: SBI PMU extension is available
[    1.538115] riscv-pmu-sbi: 16 firmware and 31 hardware counters
[    4.079719] debug_vm_pgtable: [debug_vm_pgtable         ]: Validating architecture page table helpers
[    4.104091] riscv-aplic 2c000000.interrupt-controller: 8 interrupts forwarded to MSI base 0x0000000028000000
[    4.152367] riscv,iommu 30000000.iommu: using wire-signaled interrupts
[    4.219988] 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)
[    4.269182] clk: Disabling unused clocks
[    4.281028] PM: genpd: Disabling unused power domains
[    5.846848] Warning: unable to open an initial console.
[    5.982571] Freeing unused kernel image (initmem) memory: 4008K
[    5.989956] Run /init as init process
[    6.006776] [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: 0x0000000000000003
IRISCV_STATUS_MECHANISMS: 0x00000001c2ffffff
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: 0xfffffffffffffec0
IRISCV_CRYPTO_SELFTEST_PASSED: 0x000000000000013f
IRISCV_CRYPTO_SELFTEST_FAILED: 0x0000000000000000
IRISCV_CRYPTO_FIPS_APPROVED: 0x000000000000013d
=== 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_zihintntl_zihintpause_zihpm_zimop_zaamo_zabha_zacas_zalrsc_zawrs_zfa_zfhmin_zca_zcb_zcd_zcmop_zba_zbb_zbc_zbs_zkr_zkt_ztso_zvbb_zvbc_zve32f_zve32x_zve64d_zve64f_zve64x_zvfh_zvfhmin_zvkb_zvkg_zvkned_zvknha_zvknhb_zvkt_smaia_smmpm_smnpm_smstateen_ssaia_sscofpmf_ssnpm_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_zihintntl_zihintpause_zihpm_zimop_zaamo_zabha_zacas_zalrsc_zawrs_zfa_zfhmin_zca_zcb_zcd_zcmop_zba_zbb_zbc_zbs_zkr_zkt_ztso_zvbb_zvbc_zve32f_zve32x_zve64d_zve64f_zve64x_zvfh_zvfhmin_zvkb_zvkg_zvkned_zvknha_zvknhb_zvkt_smaia_smmpm_smnpm_smstateen_ssaia_sscofpmf_ssnpm_sstc_svade_svinval_svnapot_svpbmt

=== END /proc/cpuinfo ===
=== BEGIN perf stat (SBI PMU) ===
[init] kernel release: 7.2.4
[init] running: /bin/perf-7.2.4 stat -e r1,r2,r3,r4,r5,r6 -- /bin/workload

 Performance counter stats for '/bin/workload':

     <not counted>      r1                                                                      (0.00%)
     <not counted>      r2                                                                      (0.00%)
     <not counted>      r3                                                                      (0.00%)
     <not counted>      r4                                                                      (0.00%)
     <not counted>      r5                                                                      (0.00%)
     <not counted>      r6                                                                      (0.00%)

       0.605876840 seconds time elapsed

       0.444939000 seconds user
       0.168355000 seconds sys


[init] perf stat exited: status=49152
=== END perf stat (SBI PMU) ===
[init] userspace checks complete -- powering off
[    7.390744] kvm: exiting hardware virtualization
[    7.396216] reboot: Power down

[sim] DBG_EXIT observed (code=0x01) at cycle=456128239, shutdown complete -- stopping early.

Linux Boot with OpenSBI and Two Core SMP

This output shows the in-order 2-way superscalar execution pipeline.

The output for the out-of-order with speculative reordering pipeline is similar with the exception that the RISC-V Ztso extension is not claimed.

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

Platform Name               : Chronox i-RISCV RVA23U64 SoC 3.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), 1 KB (reserved), 14 KB (used), 25 KB (free)
Firmware Scratch Size       : 4096 B (total), 1536 B (used), 2560 B (free)
Runtime SBI Version         : 3.0
Standard SBI Extensions     : rfnc,ipi,base,hsm,srst,pmu,dbcn,fwft,legacy,dbtr,sse,time
Experimental SBI Extensions : none

Domain0 Name                : root
Domain0 Boot HART           : 1
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                : 1
Boot HART Domain            : root
Boot HART Priv Version      : v1.12
Boot HART Base ISA          : rv64imafdcvh
Boot HART ISA Extensions    : smaia,smepmp,smstateen,sscofpmf,sstc,zicntr,zihpm,zkr,smcntrpmf,zicboz,zicbom,svpbmt,sdtrig,svade,svadu,smnpm,zicfilp,zicfiss,ssdbltrp,ssstateen,smrnmi,v,f,d
Boot HART PMP Count         : 64
Boot HART PMP Granularity   : 2 bits
Boot HART PMP Address Bits  : 54
Boot HART MHPM Info         : 29 (0xfffffff8)
Boot HART Debug Triggers    : 2 triggers
Boot HART MIDELEG           : 0x0000000000003666
Boot HART MEDELEG           : 0x0000000000f4b509
[    0.000000] Booting Linux on hartid 1
[    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 Sat Oct 10 19:24:05 CEST 2026
[    0.000000] Machine model: Chronox i-RISCV RVA23U64 SoC 3.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] random: crng init done
[    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 0x000000008eeed000-0x000000008ef6d000] (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.000030] sched_clock: 64 bits at 50MHz, resolution 20ns, wraps every 4398046511100ns
[    0.008857] riscv-timer: Timer interrupt in S-mode is available via sstc extension
[    0.023261] Calibrating delay loop (skipped), value calculated using timer frequency.. 100.00 BogoMIPS (lpj=200000)
[    0.035264] pid_max: default: 32768 minimum: 301
[    0.050436] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.058876] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.077757] VFS: Finished mounting rootfs on nullfs
[    0.154432] riscv: ELF compat mode unsupported
[    0.155192] ASID allocator using 16 bits (65536 entries)
[    0.172676] rcu: Hierarchical SRCU implementation.
[    0.178820] rcu: 	Max phase no-delay instances is 1000.
[    0.196056] Timer migration: 1 hierarchy levels; 8 children per group; 1 crossnode level
[    0.218771] smp: Bringing up secondary CPUs ...
[    0.255679] smp: Brought up 1 node, 2 CPUs
[    0.264279] Memory: 220076K/262144K available (4219K kernel code, 2860K rwdata, 2048K rodata, 4065K init, 245K bss, 40024K reserved, 0K cma-reserved)
[    0.297522] devtmpfs: initialized
[    0.393857] posixtimers hash table entries: 1024 (order: 3, 32768 bytes, linear)
[    0.404054] futex hash table entries: 512 (32768 bytes on 1 NUMA nodes, total 32 KiB, linear).
[    0.443045] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.458104] cpuidle: using governor menu
[    0.600908] iommu: Default domain type: Translated
[    0.606600] iommu: DMA domain TLB invalidation policy: strict mode
[    0.629026] clocksource: Switched to clocksource riscv_clocksource
[    0.710807] cpu1: scalar unaligned word access speed is 3.38x byte access speed (fast)
[    0.710872] cpu0: scalar unaligned word access speed is 3.38x byte access speed (fast)
[    0.755341] cpu1: vector unaligned word access speed is 1.41x byte access speed (fast)
[    0.755755] cpu0: vector unaligned word access speed is 1.41x byte access speed (fast)
[    0.783047] kvm [1]: hypervisor extension available
[    0.789525] kvm [1]: highest G-stage page table mode is Sv57x4
[    0.796553] kvm [1]: VMID 14 bits available
[    0.814665] kvm [1]: AIA available with 2 guest external interrupts
[    0.858726] workingset: timestamp_bits=46 (anon: 41) max_order=16 bucket_order=0 (anon: 0)
[    0.882028] io scheduler mq-deadline registered
[    0.887700] io scheduler kyber registered
[    0.894810] io scheduler bfq registered
[    0.910732] riscv-imsic: interrupt-controller@28000000:  hart-index-bits: 1,  guest-index-bits: 2
[    0.921346] riscv-imsic: interrupt-controller@28000000: group-index-bits: 0, group-index-shift: 24
[    0.931619] riscv-imsic: interrupt-controller@28000000: per-CPU IDs 63 at base address 0x0000000028000000
[    0.942482] riscv-imsic: interrupt-controller@28000000: total 124 interrupts available
[    0.964340] riscv-plic: interrupt-controller@c000000: mapped 9 interrupts with 0 handlers for 4 contexts.
[    1.076600] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    1.174146] of_serial 10000000.serial: error -ENXIO: IRQ index 0 not found
[    1.192015] printk: legacy console [ttyS0] disabled
[    1.228068] 10000000.serial: ttyS0 at MMIO 0x10000000 (irq = 0, base_baud = 3125000) is a 16550A
[    1.239809] printk: legacy console [ttyS0] enabled
[    1.239809] printk: legacy console [ttyS0] enabled
[    1.252597] printk: legacy bootconsole [uart8250] disabled
[    1.252597] printk: legacy bootconsole [uart8250] disabled
[    1.344309] riscv-pmu-sbi: SBI PMU extension is available
[    1.352415] riscv-pmu-sbi: 16 firmware and 31 hardware counters
[    2.504257] debug_vm_pgtable: [debug_vm_pgtable         ]: Validating architecture page table helpers
[    2.525736] riscv-aplic 2c000000.interrupt-controller: 8 interrupts forwarded to MSI base 0x0000000028000000
[    2.559284] riscv,iommu 30000000.iommu: using wire-signaled interrupts
[    2.601370] 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.630323] clk: Disabling unused clocks
[    2.637718] PM: genpd: Disabling unused power domains
[    4.214294] Warning: unable to open an initial console.
[    4.357317] Freeing unused kernel image (initmem) memory: 4064K
[    4.365560] Run /init as init process
[    4.383710] [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: 0x0000000000000003
IRISCV_STATUS_MECHANISMS: 0x00000001c2ffffff
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: 0xfffffffffffffec0
IRISCV_CRYPTO_SELFTEST_PASSED: 0x000000000000013f
IRISCV_CRYPTO_SELFTEST_FAILED: 0x0000000000000000
IRISCV_CRYPTO_FIPS_APPROVED: 0x000000000000013d
=== END STATUS/CSR DUMP ===
[init] mount /proc (proc): OK
[init] mount /sys (sysfs): OK
=== BEGIN /proc/cpuinfo ===
processor	: 0
hart		: 1
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintntl_zihintpause_zihpm_zimop_zaamo_zabha_zacas_zalrsc_zawrs_zfa_zfhmin_zca_zcb_zcd_zcmop_zba_zbb_zbc_zbs_zkr_zkt_ztso_zvbb_zvbc_zve32f_zve32x_zve64d_zve64f_zve64x_zvfh_zvfhmin_zvkb_zvkg_zvkned_zvknha_zvknhb_zvkt_smaia_smmpm_smnpm_smstateen_ssaia_sscofpmf_ssnpm_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_zihintntl_zihintpause_zihpm_zimop_zaamo_zabha_zacas_zalrsc_zawrs_zfa_zfhmin_zca_zcb_zcd_zcmop_zba_zbb_zbc_zbs_zkr_zkt_ztso_zvbb_zvbc_zve32f_zve32x_zve64d_zve64f_zve64x_zvfh_zvfhmin_zvkb_zvkg_zvkned_zvknha_zvknhb_zvkt_smaia_smmpm_smnpm_smstateen_ssaia_sscofpmf_ssnpm_sstc_svade_svinval_svnapot_svpbmt

processor	: 1
hart		: 0
isa		: rv64imafdcvh_zicbom_zicbop_zicboz_zicfilp_zicfiss_zicntr_zicond_zicsr_zifencei_zihintntl_zihintpause_zihpm_zimop_zaamo_zabha_zacas_zalrsc_zawrs_zfa_zfhmin_zca_zcb_zcd_zcmop_zba_zbb_zbc_zbs_zkr_zkt_ztso_zvbb_zvbc_zve32f_zve32x_zve64d_zve64f_zve64x_zvfh_zvfhmin_zvkb_zvkg_zvkned_zvknha_zvknhb_zvkt_smaia_smmpm_smnpm_smstateen_ssaia_sscofpmf_ssnpm_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_zihintntl_zihintpause_zihpm_zimop_zaamo_zabha_zacas_zalrsc_zawrs_zfa_zfhmin_zca_zcb_zcd_zcmop_zba_zbb_zbc_zbs_zkr_zkt_ztso_zvbb_zvbc_zve32f_zve32x_zve64d_zve64f_zve64x_zvfh_zvfhmin_zvkb_zvkg_zvkned_zvknha_zvknhb_zvkt_smaia_smmpm_smnpm_smstateen_ssaia_sscofpmf_ssnpm_sstc_svade_svinval_svnapot_svpbmt

=== END /proc/cpuinfo ===
=== BEGIN perf stat (SBI PMU) ===
[init] kernel release: 7.2.4
[init] running: /bin/perf-7.2.4 stat -e r1,r2,r3,r4,r5,r6 -- /bin/workload

 Performance counter stats for '/bin/workload':

     <not counted>      r1                                                                      (0.00%)
     <not counted>      r2                                                                      (0.00%)
     <not counted>      r3                                                                      (0.00%)
     <not counted>      r4                                                                      (0.00%)
     <not counted>      r5                                                                      (0.00%)
     <not counted>      r6                                                                      (0.00%)

       0.657011640 seconds time elapsed

       0.480812000 seconds user
       0.180304000 seconds sys


[init] perf stat exited: status=49152
=== END perf stat (SBI PMU) ===
[init] userspace checks complete -- powering off
[    6.209943] kvm: exiting hardware virtualization
[    6.215706] reboot: Power down

[sim] DBG_EXIT observed (code=0x01) at cycle=409448842, shutdown complete -- stopping early.

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