Skip to content

Instantly share code, notes, and snippets.

@pdp7
Last active March 17, 2024 20:47
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pdp7/64f4257aea1a180db4c1122d99ef8877 to your computer and use it in GitHub Desktop.
Save pdp7/64f4257aea1a180db4c1122d99ef8877 to your computer and use it in GitHub Desktop.
edk2 boot qemu
dfustini@host:~$ cd ~/data/Build/RiscVVirtQemu/RELEASE_GCC5/FV; ~/data/qemu/build/qemu-system-riscv64 -M virt,pflash0=pflash0,pflash1=pflash1 -m 2G -smp 8 -serial mon:stdio -blockdev node-name=pflash0,driver=file,read-only=on,filename=RISCV_VIRT_CODE.fd -blockdev node-name=pflash1,driver=file,filename=RISCV_VIRT_VARS.fd -kernel ~/linux/arch/riscv/boot/Image -initrd ~/data/buildroot/output/images/rootfs.ext2 -append "root=/dev/ram ro console=hvc earlycon=sbi" -nographic
OpenSBI v1.4
____ _____ ____ _____
/ __ \ / ____| _ \_ _|
| | | |_ __ ___ _ __ | (___ | |_) || |
| | | | '_ \ / _ \ '_ \ \___ \| _ < | |
| |__| | |_) | __/ | | |____) | |_) || |_
\____/| .__/ \___|_| |_|_____/|____/_____|
| |
|_|
Platform Name : riscv-virtio,qemu
Platform Features : medeleg
Platform HART Count : 8
Platform IPI Device : aclint-mswi
Platform Timer Device : aclint-mtimer @ 10000000Hz
Platform Console Device : uart8250
Platform HSM Device : ---
Platform PMU Device : ---
Platform Reboot Device : syscon-reboot
Platform Shutdown Device : syscon-poweroff
Platform Suspend Device : ---
Platform CPPC Device : ---
Firmware Base : 0x80000000
Firmware Size : 395 KB
Firmware RW Offset : 0x40000
Firmware RW Size : 139 KB
Firmware Heap Offset : 0x56000
Firmware Heap Size : 51 KB (total), 3 KB (reserved), 9 KB (used), 38 KB (free)
Firmware Scratch Size : 4096 B (total), 328 B (used), 3768 B (free)
Runtime SBI Version : 2.0
Domain0 Name : root
Domain0 Boot HART : 3
Domain0 HARTs : 0*,1*,2*,3*,4*,5*,6*,7*
Domain0 Region00 : 0x0000000000100000-0x0000000000100fff M: (I,R,W) S/U: (R,W)
Domain0 Region01 : 0x0000000010000000-0x0000000010000fff M: (I,R,W) S/U: (R,W)
Domain0 Region02 : 0x0000000002000000-0x000000000200ffff M: (I,R,W) S/U: ()
Domain0 Region03 : 0x0000000080000000-0x000000008003ffff M: (R,X) S/U: ()
Domain0 Region04 : 0x0000000080040000-0x000000008007ffff M: (R,W) S/U: ()
Domain0 Region05 : 0x000000000c400000-0x000000000c5fffff M: (I,R,W) S/U: (R,W)
Domain0 Region06 : 0x000000000c000000-0x000000000c3fffff M: (I,R,W) S/U: (R,W)
Domain0 Region07 : 0x0000000000000000-0xffffffffffffffff M: () S/U: (R,W,X)
Domain0 Next Address : 0x0000000020000000
Domain0 Next Arg1 : 0x00000000bfe00000
Domain0 Next Mode : S-mode
Domain0 SysReset : yes
Domain0 SysSuspend : yes
Boot HART ID : 3
Boot HART Domain : root
Boot HART Priv Version : v1.12
Boot HART Base ISA : rv64imafdch
Boot HART ISA Extensions : sstc,zicntr,zihpm,zicboz,zicbom
Boot HART PMP Count : 16
Boot HART PMP Granularity : 2 bits
Boot HART PMP Address Bits: 54
Boot HART MHPM Info : 16 (0x0007fff8)
Boot HART MIDELEG : 0x0000000000001666
Boot HART MEDELEG : 0x0000000000f0b509
RISC-V EDK2 firmware version 2.7
Press ESCAPE within 5 seconds for boot options EFI stub: Booting Linux Kernel...
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
EFI stub: Generating empty DTB
EFI stub: Exiting boot services...
[ 0.000000] Linux version 6.8.0-rc4-00270-g02053fb15455 (dfustini@host) (riscv64-linux-gnu-gcc (Ubuntu 9.4.0-1ubuntu1~20.04) 9.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #20 SMP Sat Mar 16 15:56:16 PDT 2024
[ 0.000000] SBI specification v2.0 detected
[ 0.000000] SBI implementation ID=0x1 Version=0x10004
[ 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] earlycon: sbi0 at I/O port 0x0 (options '')
[ 0.000000] printk: legacy bootconsole [sbi0] enabled
[ 0.000000] efi: EFI v2.7 by EDK II
[ 0.000000] efi: SMBIOS 3.0=0xfff43000 MEMATTR=0xff56b018 ACPI=0xf8bc7000 ACPI 2.0=0xf8bc7014 INITRD=0xf8bc5f18 MEMRESERVE=0xf8bc5f98
[ 0.000000] ACPI: Early table checksum verification disabled
[ 0.000000] ACPI: RSDP 0x00000000F8BC7014 000024 (v02 BOCHS )
[ 0.000000] ACPI: XSDT 0x00000000F8BC60E8 00004C (v01 BOCHS BXPC 00000001 01000013)
[ 0.000000] ACPI: FACP 0x00000000F8BA3000 000114 (v06 BOCHS BXPC 00000001 BXPC 00000001)
[ 0.000000] ACPI: DSDT 0x00000000F8BA4000 000C52 (v02 BOCHS BXPC 00000001 BXPC 00000001)
[ 0.000000] ACPI: APIC 0x00000000F8BA2000 000170 (v06 BOCHS BXPC 00000001 BXPC 00000001)
[ 0.000000] ACPI: RHCT 0x00000000F8BA1000 0001E6 (v01 BOCHS BXPC 00000001 BXPC 00000001)
[ 0.000000] ACPI: SPCR 0x00000000F8BA0000 000050 (v02 BOCHS BXPC 00000001 BXPC 00000001)
[ 0.000000] ACPI: MCFG 0x00000000F8B9F000 00003C (v01 BOCHS BXPC 00000001 BXPC 00000001)
[ 0.000000] Zone ranges:
[ 0.000000] DMA32 [mem 0x0000000080000000-0x00000000ffffffff]
[ 0.000000] Normal empty
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000080000000-0x000000008007ffff]
[ 0.000000] node 0: [mem 0x0000000080080000-0x00000000ffe3cfff]
[ 0.000000] node 0: [mem 0x00000000ffe3d000-0x00000000ffffefff]
[ 0.000000] node 0: [mem 0x00000000fffff000-0x00000000ffffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff]
[ 0.000000] SBI HSM extension detected
[ 0.000000] riscv: base ISA extensions acdfhim
[ 0.000000] riscv: ELF capabilities acdfim
[ 0.000000] percpu: Embedded 20 pages/cpu s42040 r8192 d31688 u81920
[ 0.000000] Kernel command line: root=/dev/ram ro console=hvc earlycon=sbi initrd=initrd
[ 0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 516096
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] fixmap : 0xff1bfffffea00000 - 0xff1bffffff000000 (6144 kB)
[ 0.000000] pci io : 0xff1bffffff000000 - 0xff1c000000000000 ( 16 MB)
[ 0.000000] vmemmap : 0xff1c000000000000 - 0xff20000000000000 (1024 TB)
[ 0.000000] vmalloc : 0xff20000000000000 - 0xff60000000000000 (16384 TB)
[ 0.000000] modules : 0xffffffff01b83000 - 0xffffffff80000000 (2020 MB)
[ 0.000000] lowmem : 0xff60000000000000 - 0xff60000080000000 (2048 MB)
[ 0.000000] kernel : 0xffffffff80000000 - 0xffffffffffffffff (2047 MB)
[ 0.000000] Memory: 1951756K/2097152K available (9374K kernel code, 3966K rwdata, 4096K rodata, 9376K init, 491K bss, 145396K reserved, 0K cma-reserved)
[ 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=64 to nr_cpu_ids=8.
[ 0.000000] rcu: RCU debug extended QS entry/exit.
[ 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] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[ 0.000000] riscv-intc: 64 local interrupts mapped
[ 0.000000] riscv: providing IPIs using SBI IPI extension
[ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[ 0.000000] clocksource: riscv_clocksource: mask: 0xffffffffffffffff max_cycles: 0x24e6a1710, max_idle_ns: 440795202120 ns
[ 0.000111] sched_clock: 64 bits at 10MHz, resolution 100ns, wraps every 4398046511100ns
[ 0.001012] riscv-timer: Timer interrupt in S-mode is available via sstc extension
[ 0.013034] Console: colour dummy device 80x25
[ 0.014966] ACPI: Core revision 20230628
[ 0.020031] Calibrating delay loop (skipped), value calculated using timer frequency.. 20.00 BogoMIPS (lpj=40000)
[ 0.021259] pid_max: default: 32768 minimum: 301
[ 0.023448] LSM: initializing lsm=capability,integrity
[ 0.027319] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[ 0.028003] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[ 0.062503] No CPU information found in DT
[ 0.076864] RCU Tasks Trace: Setting shift to 3 and lim to 1 rcu_task_cb_adjust=1.
[ 0.078543] riscv: ELF compat mode supported
[ 0.079098] ASID allocator using 16 bits (65536 entries)
[ 0.081590] rcu: Hierarchical SRCU implementation.
[ 0.082079] rcu: Max phase no-delay instances is 1000.
[ 0.087311] Remapping and enabling EFI services.
[ 0.102468] smp: Bringing up secondary CPUs ...
[ 0.148153] smp: Brought up 1 node, 8 CPUs
[ 0.187942] devtmpfs: initialized
[ 0.209887] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 0.210867] futex hash table entries: 2048 (order: 5, 131072 bytes, linear)
[ 0.215690] pinctrl core: initialized pinctrl subsystem
[ 0.226736] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[ 0.233496] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
[ 0.235133] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[ 0.236101] audit: initializing netlink subsys (disabled)
[ 0.239844] audit: type=2000 audit(0.220:1): state=initialized audit_enabled=0 res=1
[ 0.242451] thermal_sys: Registered thermal governor 'step_wise'
[ 0.243151] cpuidle: using governor menu
[ 0.270176] cpu7: Ratio of byte access time to unaligned word access is 4.33, unaligned accesses are fast
[ 0.270158] cpu6: Ratio of byte access time to unaligned word access is 6.45, unaligned accesses are fast
[ 0.270195] cpu1: Ratio of byte access time to unaligned word access is 4.18, unaligned accesses are fast
[ 0.270187] cpu5: Ratio of byte access time to unaligned word access is 6.78, unaligned accesses are fast
[ 0.270171] cpu4: Ratio of byte access time to unaligned word access is 4.18, unaligned accesses are fast
[ 0.270157] cpu3: Ratio of byte access time to unaligned word access is 9.67, unaligned accesses are fast
[ 0.270200] cpu2: Ratio of byte access time to unaligned word access is 4.10, unaligned accesses are fast
[ 0.298701] cpu0: Ratio of byte access time to unaligned word access is 7.33, unaligned accesses are fast
[ 0.311639] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
[ 0.312301] HugeTLB: 28 KiB vmemmap can be freed for a 2.00 MiB page
[ 0.324040] ACPI: Added _OSI(Module Device)
[ 0.324516] ACPI: Added _OSI(Processor Device)
[ 0.324894] ACPI: Added _OSI(3.0 _SCP Extensions)
[ 0.325300] ACPI: Added _OSI(Processor Aggregator Device)
[ 0.339804] ACPI: 1 ACPI AML tables successfully acquired and loaded
[ 0.356762] ACPI: Interpreter enabled
[ 0.356970] ACPI: Using PIC for interrupt routing
[ 0.376097] iommu: Default domain type: Translated
[ 0.376438] iommu: DMA domain TLB invalidation policy: strict mode
[ 0.384579] SCSI subsystem initialized
[ 0.389784] ACPI: bus type USB registered
[ 0.391222] usbcore: registered new interface driver usbfs
[ 0.392583] usbcore: registered new interface driver hub
[ 0.393419] usbcore: registered new device driver usb
[ 0.399206] efivars: Registered efivars operations
[ 0.401124] Advanced Linux Sound Architecture Driver Initialized.
[ 0.424297] vgaarb: loaded
[ 0.433117] clocksource: Switched to clocksource riscv_clocksource
[ 0.437435] pnp: PnP ACPI init
[ 0.438303] pnp: PnP ACPI: found 0 devices
[ 0.483289] NET: Registered PF_INET protocol family
[ 0.487200] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear)
[ 0.497239] tcp_listen_portaddr_hash hash table entries: 1024 (order: 3, 32768 bytes, linear)
[ 0.498001] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[ 0.498528] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
[ 0.499382] TCP bind hash table entries: 16384 (order: 8, 1048576 bytes, linear)
[ 0.502748] TCP: Hash tables configured (established 16384 bind 16384)
[ 0.505217] UDP hash table entries: 1024 (order: 4, 98304 bytes, linear)
[ 0.506071] UDP-Lite hash table entries: 1024 (order: 4, 98304 bytes, linear)
[ 0.508643] NET: Registered PF_UNIX/PF_LOCAL protocol family
[ 0.514873] RPC: Registered named UNIX socket transport module.
[ 0.515334] RPC: Registered udp transport module.
[ 0.515628] RPC: Registered tcp transport module.
[ 0.515919] RPC: Registered tcp-with-tls transport module.
[ 0.516342] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.516978] PCI: CLS 0 bytes, default 64
[ 0.518245] kvm [1]: hypervisor extension available
[ 0.518630] kvm [1]: using Sv57x4 G-stage page table format
[ 0.519003] kvm [1]: VMID 14 bits available
[ 0.526592] workingset: timestamp_bits=46 max_order=19 bucket_order=0
[ 0.534974] NFS: Registering the id_resolver key type
[ 0.536809] Key type id_resolver registered
[ 0.537105] Key type id_legacy registered
[ 0.537842] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[ 0.538372] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[ 0.539946] 9p: Installing v9fs 9p2000 file system support
[ 0.542892] NET: Registered PF_ALG protocol family
[ 0.543610] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
[ 0.544541] io scheduler mq-deadline registered
[ 0.544929] io scheduler kyber registered
[ 0.545318] io scheduler bfq registered
[ 0.844674] printk: legacy console [hvc0] enabled
[ 0.844674] printk: legacy console [hvc0] enabled
[ 0.845866] printk: legacy bootconsole [sbi0] disabled
[ 0.845866] printk: legacy bootconsole [sbi0] disabled
[ 0.848635] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[ 0.857005] SuperH (H)SCI(F) driver initialized
[ 0.892588] loop: module loaded
[ 0.902375] e1000e: Intel(R) PRO/1000 Network Driver
[ 0.902802] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[ 0.911736] usbcore: registered new interface driver uas
[ 0.913116] usbcore: registered new interface driver usb-storage
[ 0.916427] mousedev: PS/2 mouse device common for all mice
[ 0.922658] sdhci: Secure Digital Host Controller Interface driver
[ 0.923148] sdhci: Copyright(c) Pierre Ossman
[ 0.923662] Synopsys Designware Multimedia Card Interface Driver
[ 0.924498] sdhci-pltfm: SDHCI platform and OF driver helper
[ 0.926165] usbcore: registered new interface driver usbhid
[ 0.926679] usbhid: USB HID core driver
[ 0.927534] riscv-pmu-sbi: SBI PMU extension is available
[ 0.928778] riscv-pmu-sbi: 16 firmware and 18 hardware counters
[ 0.929395] riscv-pmu-sbi: Perf sampling/filtering is not supported as sscof extension is not available
[ 0.948935] NET: Registered PF_INET6 protocol family
[ 0.949811] Unpacking initramfs...
[ 0.950485] Initramfs unpacking failed: invalid magic at start of compressed archive
[ 0.963595] Segment Routing with IPv6
[ 0.964490] In-situ OAM (IOAM) with IPv6
[ 0.965634] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[ 0.970966] NET: Registered PF_PACKET protocol family
[ 0.973366] 9pnet: Installing 9P2000 support
[ 0.974219] Key type dns_resolver registered
[ 0.991136] Freeing initrd memory: 61440K
[ 1.033116] debug_vm_pgtable: [debug_vm_pgtable ]: Validating architecture page table helpers
[ 1.049942] clk: Disabling unused clocks
[ 1.051232] ALSA device list:
[ 1.051644] No soundcards found.
[ 1.207580] Freeing unused kernel image (initmem) memory: 9376K
[ 1.210320] Run /init as init process
Saving 256 bits of non-creditable seed for next boot
Starting syslogd: OK
Starting klogd: OK
Running sysctl: OK
Starting network: Waiting for interface eth0 to appear............... timeout!
run-parts: /etc/network/if-pre-up.d/wait_iface: exit status 1
FAIL
Welcome to Buildroot
buildroot login: root
# ls
# uname -a
Linux buildroot 6.8.0-rc4-00270-g02053fb15455 #20 SMP Sat Mar 16 15:56:16 PDT 2024 riscv64 GNU/Linux
# halt
# Stopping network: ifdown: interface eth0 not configured
OK
Stopping klogd: OK
Stopping syslogd: OK
Seeding 256 bits without crediting
Saving 256 bits of non-creditable seed for next boot
umount: devtmpfs busy - remounted read-only
umount: can't unmount /: Invalid argument
The system is going down NOW!
Sent SIGTERM to all processes
Sent SIGKILL to all processes
Requesting system halt
[ 34.836770] kvm: exiting hardware virtualization
[ 34.839464] reboot: System halted
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment