On a Dell R6515, acpimadt(4) prints this 512 times during boot: acpimadt0: unknown apic structure type 80
Previous generations of machines had a few of these, and they were easy enough to ignore, but 512 is a bit excessive. On further inspection, it seems types 0x80 through 0xFF are reserved for OEM specific uses, which we're never going to be able to work with, so complaining about it seems pointless. If we encounter a non-OEM type we don't know about, we should still report that though. ok? Index: acpimadt.c =================================================================== RCS file: /cvs/src/sys/dev/acpi/acpimadt.c,v retrieving revision 1.38 diff -u -p -r1.38 acpimadt.c --- acpimadt.c 6 Apr 2022 18:59:27 -0000 1.38 +++ acpimadt.c 22 Nov 2022 03:58:00 -0000 @@ -418,8 +418,11 @@ acpimadt_attach(struct device *parent, s break; default: - printf("%s: unknown apic structure type %x\n", - self->dv_xname, entry->madt_lapic.apic_type); + if (entry->madt_lapic.apic_type < ACPI_MADT_OEM_RSVD) { + printf("%s: unknown apic structure type %x\n", + self->dv_xname, + entry->madt_lapic.apic_type); + } } addr += entry->madt_lapic.length; Index: acpireg.h =================================================================== RCS file: /cvs/src/sys/dev/acpi/acpireg.h,v retrieving revision 1.58 diff -u -p -r1.58 acpireg.h --- acpireg.h 9 Jan 2022 05:42:37 -0000 1.58 +++ acpireg.h 22 Nov 2022 03:58:01 -0000 @@ -352,6 +352,8 @@ struct acpi_madt_x2apic_nmi { uint8_t reserved[3]; } __packed; +#define ACPI_MADT_OEM_RSVD 128 + union acpi_madt_entry { struct acpi_madt_lapic madt_lapic; struct acpi_madt_ioapic madt_ioapic;