On Sun, Jan 19, 2025 at 12:35:59PM +0900, FUKAUMI Naoki wrote: > Hi, > > I'm trying to boot OpenBSD/arm64 on a Radxa Orion O6. > > UEFI has a "O/S Hardware Description Selection" menu where I can choose > "Device Tree" or "ACPI". "ACPI" allows me to boot a mainline Linux kernel. > > With "ACPI" I can use the serial console with efiboot, but the kernel output > only shows up on the display after the kernel is loaded. > > Here is a screenshot on the display: > > https://drive.google.com/file/d/1EIrQO3qxl9F6AQO5y5mzeTleTbDauRqm/view?usp=sharing > > Using "Device Tree" I was able to see the kernel panic occur using the > serial console (please see below). > > Could you please give me some advice?
Hi there! This is a pretty cool board, I should try and get one. Before I start talking about what exactly I can discover through the pictures/log, is there a way you can share either the sources for the UEFI build and/or a device tree source/dump for this board? And maybe also for the ACPI tables? That would help immensely. Obviously both modes should boot up, but don't. I can see you're booting GENERIC. Does that mean you installed using a miniroot and are now trying to boot after installation? I assume that the RAMDISK one from the miniroot has failed and you were trying your luck with GENERIC? Device Tree Boot: The failing code is when iterating over all redistributors. It's likely that the device tree contains an incorrect size for the redistributor range, or that the stride is set incorrectly. In the UEFI boot you can see that it does pass agintc attach, which means that our efiboot(8) code which translates the ACPI information into DT information does work, but apparently produces different results than what is in the DT. ACPI Boot: It's unclear to me where it hangs, it might be the next device driver that is attaching. It could also be the PCI bus trying to attach. We could probably get some more information with the ACPI tables. What is odd to me is that there are multiple MCFG for the same base address, but maybe it's normal. Does that look alright, kettenis@? Cheers, Patrick > Best regards, > > -- > FUKAUMI Naoki > Radxa Computer (Shenzhen) Co., Ltd. > > Copyright (c) 1982, 1986, 1989, 1991, 1993 > The Regents of the University of California. All rights reserved. > Copyright (c) 1995-2025 OpenBSD. All rights reserved. > https://www.OpenBSD.org > > OpenBSD 7.6-current (GENERIC) #281: Thu Jan 16 16:37:49 MST 2025 > dera...@arm64.openbsd.org:/usr/src/sys/arch/arm64/compile/GENERIC > real mem = 16232091648 (15480MB) > avail mem = 15595094016 (14872MB) > random: good seed from bootblocks > mainbus0 at root: Radxa Orion O6 > psci0 at mainbus0: PSCI 1.1, SMCCC 1.2, SYSTEM_SUSPEND > efi0 at mainbus0: UEFI 2.7 > efi0: EDK II rev 0x10000 > smbios0 at efi0: SMBIOS 3.0.0 > smbios0: vendor Radxa Computer (Shenzhen) Co., Ltd. version "1.0" date Jan > 1 1980 > smbios0: Radxa Computer (Shenzhen) Co., Ltd. Radxa Orion O6 > cpu0 at mainbus0 mpidr a00: ARM Cortex-A720 r0p1 > cpu0: 64KB 64b/line 4-way L1 PIPT I-cache, 64KB 64b/line 4-way L1 D-cache > cpu0: 512KB 64b/line 8-way L2 cache > cpu0: 12288KB 64b/line 12-way L3 cache > cpu0: > TLBIOS+IRANGE,TS+AXFLAG,FHM,DP,SM4,SM3,SHA3,RDM,Atomic,CRC32,SHA2+SHA512,SHA1,AES+PMULL,XS,I8MM,DGH,BF16,SPECRES,SB,FRINTTS,LRCPC+LDAPUR,FCMA,JSCVT,DPB+DCCVADP,WFXT,ECV+CNTHCTL,ASID16,AFP,PAN+ATS1E1+EPAN,LO,HPDS,VH,HAFDBS,ECBHB,IDS,AT,CSV3,CSV2+SCXT,DIT,AdvSIMD+HP,FP+HP,BT,SSBS+MSR,MTE > apm0 at mainbus0 > scmi0 at mainbus0 > scmi1 at mainbus0: SCMI 2.0 > "sdei-smc" at mainbus0 not configured > "optee" at mainbus0 not configured > "linux,cma" at mainbus0 not configured > "smc_shmem" at mainbus0 not configured > "smc_shmem" at mainbus0 not configured > "cix_ramoops" at mainbus0 not configured > "mntndump" at mainbus0 not configured > "rdr" at mainbus0 not configured > "vdev0vring0" at mainbus0 not configured > "vdev0vring1" at mainbus0 not configured > "vdev0buffer" at mainbus0 not configured > "sfh_sharebuffer" at mainbus0 not configured > "ram0" at mainbus0 not configured > "mali_protected" at mainbus0 not configured > "vdev0vring0" at mainbus0 not configured > "vdev0vring1" at mainbus0 not configured > "vdev0buffer" at mainbus0 not configured > "dsp_reserved" at mainbus0 not configured > "dsp_reserved_heap" at mainbus0 not configured > "audio_alsa" at mainbus0 not configured > syscon0 at mainbus0: "pdc" > "iommu" at mainbus0 not configured > "pmu" at mainbus0 not configured > "spe_pmu" at mainbus0 not configured > agtimer0 at mainbus0: 1000000 kHz > "fixed-clocks" at mainbus0 not configured > simplebus0 at mainbus0: "soc" > syscon1 at simplebus0: "fch_cru" > syscon2 at simplebus0: "system-controller" > "clock-controller" at syscon2 not configured > "reset-controller" at syscon2 not configured > syscon3 at simplebus0: "sfh_cru" > agintc0 at simplebus0 shift 4:4panic: uvm_fault failed: ffffff8000c81048 esr > 96000007 far ffffff80b3f57008 > Stopped at panic+0x140: cmp w21, #0x0 > TID PID UID PRFLAGS PFLAGS CPU COMMAND > * 0 0 0 0x10000 0x200 0 swapper > db_enter() at panic+0x13c > panic() at kdata_abort+0x170 > kdata_abort() at handle_el1h_sync+0x68 > handle_el1h_sync() at generic_space_read_8+0x14 > generic_space_read_8() at agintc_attach+0x2a0 > agintc_attach() at config_attach+0x210 > config_attach() at simplebus_attach_node+0x244 > https://www.openbsd.org/ddb.html describes the minimum info required in bug > reports. Insufficient info makes it difficult to find and fix bugs. > ddb> show panic > *cpu0: uvm_fault failed: ffffff8000c81048 esr 96000007 far ffffff80b3f57008 > ddb> trace > db_enter() at panic+0x13c > panic() at kdata_abort+0x170 > kdata_abort() at handle_el1h_sync+0x68 > handle_el1h_sync() at generic_space_read_8+0x14 > generic_space_read_8() at agintc_attach+0x2a0 > agintc_attach() at config_attach+0x210 > config_attach() at simplebus_attach_node+0x244 > simplebus_attach_node() at simplebus_attach+0x250 > simplebus_attach() at config_attach+0x210 > config_attach() at mainbus_attach_node+0x2c8 > mainbus_attach_node() at mainbus_attach+0x334 > mainbus_attach() at config_attach+0x210 > config_attach() at cpu_configure+0x30 > cpu_configure() at main+0x31c > main() at virtdone+0x70 > ddb> ps > PID TID PPID UID S FLAGS WAIT COMMAND > * 0 0 -1 0 7 0x10200 swapper >