Nico Huber has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/55261 )
Change subject: cpu/x86/lapic: Split virtual_wire_mode_init() ......................................................................
Patch Set 14:
(1 comment)
File src/cpu/x86/lapic/lapic.c:
https://review.coreboot.org/c/coreboot/+/55261/comment/734da8d8_c82b24ba PS13, Line 67: /* Enable the local APIC */ : if (need_lapic_init()) : enable_lapic(); : else if (!CONFIG(UDELAY_LAPIC)) : disable_lapic(); : : /* This programming is for PIC mode i8259 interrupts to be delivered to CPU : while LAPIC is enabled. */ : if (need_lapic_init()) : lapic_virtual_wire_mode_init();
AFAICS lapic_virtual_wire_mode_init() is not a required part of SMP bringup, so expect some suggesti […]
Fixing the ExtINT setup for APs was brought up because on AMD platforms some spurious interrupts were reported by Linux. IIRC, this was in combinations with AGESA which may just do something odd.
A vague theory: We need to mask LVT0 on the APs if we hand over in legacy PIC mode or actually use the PICs in coreboot (does AGESA? I never looked into it). As we still hand over in legacy PIC mode on virtually all platforms, I think it's best to keep configuring the AP's LAPICs.