Port-arm archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Radxa Orion O6
My board arrived earlier this week (thanks!) and I've managed to fix some
of the issues you raised.
1) EFI runtime services issue
This one is still outstanding. I still feel that it's a firmware bug (that
NetBSD doesn't properly contain, but this is a separate issue). For now
I've committed a workaround that detects the Orion O6 board and skips EFI
runtime initialization:
https://mail-index.netbsd.org/source-changes/2025/01/30/msg155361.html
2) XHCI crash at boot
It seems that the SoC's XHCI IP requires 32-bit aligned accesses. The XHCI
spec defines a handful of 8- and 16-bit registers, and some of them (like
the one that returns the XHCI version) is at an offset that is not 32-bit
aligned. I committed a workaround for this:
https://mail-index.netbsd.org/source-changes/2025/01/30/msg155355.html
Once I fixed this, the crash went away, but USB devices wouldn't attach
("device problem, disabling port n"). I tracked down the root cause for
this and committed a fix as well:
https://mail-index.netbsd.org/source-changes/2025/01/30/msg155360.html
3) Crash when booting with SMP enabled.
The crash was caused by virtual timer interrupts not firing on CPUs 1-4.
The first workaround I tried was to use the physical timer -- this worked,
but not ideal. So I did some more digging and it turns out NetBSD was
making assumptions about the state of the CNTHCTL_EL2 and CNTKCTL_EL1
system registers when entering the kernel that were not valid. I fixed
initialization for both of these:
https://mail-index.netbsd.org/source-changes/2025/01/30/msg155358.html
https://mail-index.netbsd.org/source-changes/2025/01/30/msg155359.html
If you update your tree to pick up all of these changes, you should be
able to boot an unmodified kernel to the installer.
Take care,
Jared
Home |
Main Index |
Thread Index |
Old Index