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
> 

Reply via email to