Issue #657 has been updated by Sebastian Müller.

Hit one of these on a sibling ADL-N board with the same IT8625E Super-I/O. This 
also looks like the "broken IRQ 9" in #631, and I think it explains why the 
GPIO patch there did not help: it is not GPIO.

IRQ9 / SCI storm. topton/adl/devicetree.cb declares only the IT8625E COM1 LDN, 
not the Environment Controller / HWM LDN (2e.4). coreboot auto-creates an 
undeclared Super-I/O LDN as enabled (device.c __alloc_dev sets enabled=1) and 
activates it, but with no irq 0x70 in the devicetree it never writes the HWM's 
IRQ register, so that register keeps its power-on default = IRQ9 = the SCI 
line. On a fanless box the empty CPU-fan header makes the HWM raise a permanent 
fan-fault, which then storms IRQ9 over the eSPI virtual wire with no GPE/PM1 
status to ack, so the kernel masks it ("nobody cared"). The stock firmware 
keeps the HWM off the SCI.

Quick check on the running board:


superiotool -d      # LDN 0x04 (EC): is it active, and is reg 0x70 = 09?
Fix is to declare the HWM LDN and force no IRQ (keeps the sensors, off the SCI):


device pnp 2e.4 on          # Environment Controller (HWM)
    io 0x60 = 0xa30         # take the bases from your superiotool -d
    io 0x62 = 0xa20
    irq 0x70 = 0x00         # HWM off IRQ9 (= the SCI), matches stock
end

IRQ4 / UART0 storm is separate and is not a coreboot bug. coreboot hands the 
3f8 UART to the OS with all interrupts disabled (uart8250io.c writes IER=0). 
FreeBSD's ns8250 then enables modem-status interrupts (IER_EMSC) by default; on 
the "Cisco-style" RJ45 console the RS232 handshake inputs (CTS/DSR/DCD/RI) are 
unconnected and float, so their status-change deltas storm IRQ4. 
hint.uart.0.disabled="1" is a correct fix if you do not use that port. To keep 
the serial console but kill the storm, drop only modem-status interrupts:


hint.uart.0.ier_rxbits="0x05"   # IER_ERLS|IER_ERXRDY, no IER_EMSC
(The IT8625E serial reg 0xF0=1 = IRQ-sharing mode is not implicated; the 
non-storming sibling uses the same value.)

cc @Alicja as topton/adl maintainer, and re #631.

----------------------------------------
Bug #657: Alder Lake (x2e_n150) ACPI SCI (IRQ9) Interrupt Storm Escalation up 
to 180k/sec on FreeBSD/OPNsense
https://ticket.coreboot.org/issues/657#change-2340

* Author: Zoomm Deka
* Status: New
* Priority: Normal
* Target version: none
* Start date: 2026-07-10
* Affected versions: main
----------------------------------------
Following up on the initial observation of interrupt storms on an Intel Alder 
Lake platform (x2e_n150 mainboard) running FreeBSD 14 / OPNsense 26.7 with a 
clean Libreboot/coreboot image:

    UART0 (IRQ4): Disabling the serial port via loader hints 
(hint.uart.0.disabled="1") successfully stopped the IRQ4 storm.

    ACPI SCI (IRQ9): The ACPI storm on IRQ9 escalated drastically post-boot, 
reaching a critical rate of 181,199 interrupts per second. Attempts to mitigate 
this via software (e.g., changing the trigger to edge mode using 
hw.acpi.sci.trigger="edge") were unsuccessful, indicating a persistent 
level-triggered assertion from the hardware/firmware side.

This storm consumes significant CPU cycles, causing system degradation and 
immediate hard locks when USB devices or higher IO loads are introduced.

Updated Data from vmstat -i:
interrupt                          total       rate
irq9: acpi0                 4241009125     181199

Context & Platform Details:

    Mainboard: x2e_n150 (Intel Alder Lake)

    OS: FreeBSD 14.1-RELEASE / OPNsense 26.7

    Firmware: Clean Libreboot/coreboot compilation (includes commit 4988900789 
soc/intel/alderlake: Fix PCI IRQ tables).

The issue points to an unhandled GPE (General Purpose Event) loop or incorrect 
SCI routing configuration within the Alder Lake ACPI implementation for this 
specific board variant.




-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
https://ticket.coreboot.org/my/account
_______________________________________________
coreboot mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to