Re: APU1 bricked on stable/14 - solved

From: Karl Denninger <karl_at_denninger.net>
Date: Sun, 06 Oct 2024 13:55:32 UTC
 From one of the APUs I have here:

---<<BOOT>>---
Copyright (c) 1992-2023 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
         The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 14.1-STABLE stable/14-n268741-9ff3c094fde3 GENERIC amd64
FreeBSD clang version 18.1.6 (https://github.com/llvm/llvm-project.git 
llvmorg-1
8.1.6-0-g1118c2e05e67)
VT(vga): resolution 640x480
CPU: AMD GX-412TC SOC                                (998.18-MHz 
K8-class CPU)
   Origin="AuthenticAMD"  Id=0x730f01  Family=0x16  Model=0x30 Stepping=1
Features=0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,C
MOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT>
Features2=0x3ed8220b<SSE3,PCLMULQDQ,MON,SSSE3,CX16,SSE4.1,SSE4.2,MOVBE,POPCNT,
AESNI,XSAVE,OSXSAVE,AVX,F16C>
   AMD Features=0x2e500800<SYSCALL,NX,MMX+,FFXSR,Page1GB,RDTSCP,LM>
   AMD 
Features2=0x1d4037ff<LAHF,CMP,SVM,ExtAPIC,CR8,ABM,SSE4A,MAS,Prefetch,OSVW,
IBS,SKINIT,WDT,Topology,PNXC,DBE,PTSC,PL2I>
   Structured Extended Features=0x8<BMI1>
   XSAVE Features=0x1<XSAVEOPT>
   SVM: NP,NRIP,AFlush,DAssist,NAsids=8
   TSC: P-state invariant, performance statistics
real memory  = 2013061120 (1919 MB)
avail memory = 1912287232 (1823 MB)
Event timer "LAPIC" quality 100
ACPI APIC Table: <CORE   COREBOOT>
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
FreeBSD/SMP: 1 package(s) x 4 core(s)
arc4random: WARNING: initial seeding bypassed the cryptographic random 
device be
cause it was not yet seeded and the knob 'bypass_before_seeding' was 
enabled.
ioapic1: MADT APIC ID 5 != hw id 0
ioapic0 <Version 2.1> irqs 0-23
ioapic1 <Version 2.1> irqs 24-55
Launching APs: 3 1 2
random: entropy device external interface
kbd0 at kbdmux0
vtvga0: <VT VGA driver>
smbios0: <System Management BIOS> at iomem 0xf3740-0xf375e
smbios0: Version: 2.7
aesni0: <AES-CBC,AES-CCM,AES-GCM,AES-ICM,AES-XTS>
acpi0: <CORE COREBOOT>
acpi0: Power Button (fixed)
cpu0: <ACPI CPU> on acpi0
atrtc0: <AT realtime clock> port 0x70-0x71 irq 8 on acpi0
atrtc0: registered as a time-of-day clock, resolution 1.000000s
Event timer "RTC" frequency 32768 Hz quality 0
attimer0: <AT timer> port 0x40-0x43 irq 0 on acpi0
Timecounter "i8254" frequency 1193182 Hz quality 0
Event timer "i8254" frequency 1193182 Hz quality 100
apei0: <ACPI Platform Error Interface> on acpi0
hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0
Timecounter "HPET" frequency 14318180 Hz quality 950
Timecounter "ACPI-fast" frequency 3579545 Hz quality 900
acpi_timer0: <32-bit timer at 3.579545MHz> port 0x818-0x81b on acpi0
acpi_button0: <Power Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
pcib1: <ACPI PCI-PCI bridge> at device 2.2 on pci0
pcib1: failed to allocate initial I/O port window: 0x1000-0x1fff
pci1: <ACPI PCI bus> on pcib1
igb0: <Intel(R) I211 (Copper)> port 0x2000-0x201f mem 
0xfe700000-0xfe71ffff,0xfe
720000-0xfe723fff at device 0.0 on pci1
igb0: NVM V0.6 imgtype1
igb0: Using 1024 TX descriptors and 1024 RX descriptors
igb0: Using 2 RX queues 2 TX queues
igb0: Using MSI-X interrupts with 3 vectors
igb0: Ethernet address: 00:0d:b9:46:71:88
igb0: netmap queues/slots: TX 2/1024, RX 2/1024
pcib2: <ACPI PCI-PCI bridge> at device 2.4 on pci0
pcib2: failed to allocate initial I/O port window: 0x2000-0x2fff
pci2: <ACPI PCI bus> on pcib2
igb1: <Intel(R) I211 (Copper)> port 0x4000-0x401f mem 
0xfe800000-0xfe81ffff,0xfe
820000-0xfe823fff at device 0.0 on pci2
igb1: NVM V0.6 imgtype1
igb1: Using 1024 TX descriptors and 1024 RX descriptors
igb1: Using 2 RX queues 2 TX queues
igb1: Using MSI-X interrupts with 3 vectors
igb1: Ethernet address: 00:0d:b9:46:71:89
igb1: netmap queues/slots: TX 2/1024, RX 2/1024
pci0: <encrypt/decrypt> at device 8.0 (no driver attached)
xhci0: <AMD FCH USB 3.0 controller> mem 0xfeb22000-0xfeb23fff at device 
16.0 on
pci0
xhci0: 32 bytes context size, 64-bit DMA
usbus0 on xhci0
usbus0: 5.0Gbps Super Speed USB v3.0
ahci0: <AMD Hudson-2 AHCI SATA controller> port 
0x3010-0x3017,0x3020-0x3023,0x30
18-0x301f,0x3024-0x3027,0x3000-0x300f mem 0xfeb25000-0xfeb253ff at 
device 17.0 o
n pci0
ahci0: AHCI v1.30 with 2 6Gbps ports, Port Multiplier supported with FBS
ahcich0: <AHCI channel> at channel 0 on ahci0
ahcich1: <AHCI channel> at channel 1 on ahci0
ehci0: <AMD FCH USB 2.0 controller> mem 0x80000000-0x800000ff at device 
18.0 on
pci0
usbus1: EHCI version 1.0
usbus1 on ehci0
usbus1: 480Mbps High Speed USB v2.0
ehci1: <AMD FCH USB 2.0 controller> mem 0xfeb25400-0xfeb254ff at device 
19.0 on
pci0
usbus2: EHCI version 1.0
usbus2 on ehci1
usbus2: 480Mbps High Speed USB v2.0
isab0: <PCI-ISA bridge> at device 20.3 on pci0
isa0: <ISA bus> on isab0
sdhci_pci0: <Generic SD HCI> mem 0xfeb25500-0xfeb255ff at device 20.7 on 
pci0
sdhci_pci0: 1 slot(s) allocated
mmc0: <MMC/SD bus> on sdhci_pci0
uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
ns8250: UART FCR is broken
uart0: console (115200,n,8,1)
orm0: <ISA Option ROM> at iomem 0xef000-0xeffff pnpid ORM0000 on isa0
hwpstate0: <Cool`n'Quiet 2.0> on cpu0
Timecounter "TSC" frequency 998127234 Hz quality 1000
Timecounters tick every 1.000 msec
ugen2.1: <AMD EHCI root HUB> at usbus2
ugen1.1: <AMD EHCI root HUB> at usbus1
ugen0.1: <AMD XHCI root HUB> at usbus0
uhub0 on usbus2
uhub0: <AMD EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus2
uhub1 on usbus0
uhub1: <AMD XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus0
uhub2 on usbus1
uhub2: <AMD EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus1
mmcsd0: 16GB <SDHC SL16G 8.0 SN A4981A22 MFG 01/2017 by 3 SD> at mmc0 
50.0MHz/4b
it/65535-block
Trying to mount root from ufs:/dev/mmcsd0s1a [ro]...

....

This is an APU2; I've got a bunch of them in the field (one is my own 
personal firewall/gateway) but they're EOL'd as the SOC was deprecated.  
They run quite well and I'm on stable/14 with them at present.


On 10/6/2024 9:47 AM, Warner Losh wrote:
>
>
> On Sun, Oct 6, 2024 at 6:35 AM Stefan Hegnauer 
> <stefan.hegnauer@gmx.ch> wrote:
>
>     I have a few pc-engines APU1 appliances running in headless mode under
>     Nanobsd. Maintenance is by means of  direct COM port connection.
>     After a recent update a few weeks back I was not able to connect
>     by COM
>     port anymore - console output and input went away after booting and
>     before single- or multi-user mode would start. Even re-flashing the
>     SDcard with a fresh image did not help.
>
>     After some longish trials and errors it turned out that both
>     - commit 74b9fc7a 'amd64 GENERIC: Switch uart hints from "isa" to
>     "acpi"' as well as
>     - commit 4ba4cfaf 'acpi: Narrow workaround for broken interrupt
>     settings
>     on x86'
>     broke things for me. Restoring hints and setting
>     hw.acpi.override_isa_irq_polarity=1 in /boot/loader.conf.local
>     restored
>     working order.
>
>     I agree that APU1 is EOL, however I would have expected an entry to
>     UPDATING for such a POLA violation.
>
>
> Likely, but really really old gear like this is going to hit edge 
> cases that
> developers haven't seen. The hint thing wasn't though to actually 
> negatively
> affect any deployed hardware since it dealt with details that changed 
> 15 or
> 20 years ago...
>
> Looks like the APU1 used coreboot which at the time was trailing 
> adaptation
> of ACPI, so it makes sense... I knew that Soekris boxes had issues, 
> but they
> are another 5 or 10 years older than the APUs and mine sadly isn't 
> operational.
>
> So I can write a better UPDATING entry, can you share with me the dmesg
> from both APU1 and APU2?
>
> Warner
>
>     Note that pc-engines APU2 models are not affected as the BIOS ACPI
>     tables contain correct UART descriptions.
>
>     - Stefan
>
-- 
Karl Denninger
karl@denninger.net
/The Market Ticker/
/[S/MIME encrypted email preferred]/