https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=236513
--- Comment #23 from stockhau...@collogia.de --- ok. ignore comment #22 i try to explain it once again. The problem seems to be the other way round. CPU wants to register port 0x414 for C state handling. This should be covered by BIOS ACPI tables starting at port 0x3e0 with a total of 2328 (0x918) ports. Due to misconfiguaration this port range is attached to the PCIe bridge. acpi_set_resource() simply ignores this registration /* * Ignore most resources for PCI root bridges. Some BIOSes * incorrectly enumerate the memory ranges they decode as plain * memory resources instead of as ResourceProducer ranges. Other * BIOSes incorrectly list system resource entries for I/O ranges * under the PCI bridge. Do allow the one known-correct case on * x86 of a PCI bridge claiming the I/O ports used for PCI config * access. */ #if defined(__i386__) || defined(__amd64__) if (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT) { if (ACPI_SUCCESS(AcpiGetObjectInfo(ad->ad_handle, &devinfo))) { if ((devinfo->Flags & ACPI_PCI_ROOT_BRIDGE) != 0) { if (!(type == SYS_RES_IOPORT && start == CONF1_ADDR_PORT)) { printf("ADBG: acpi_set_resource(%lx,%lu) inside root bridge\n", start,count); AcpiOsFree(devinfo); return (0); } } AcpiOsFree(devinfo); } } #endif So we are left without port 0x414. This gets registered later under CPU0. See devinfo: cpu0 pnpinfo _HID=none _UID=0 at handle=\_PR_.P000 I/O ports: 0x414 If registragtion works fine this should read "ACPI I/o port" and port 0x414 should be visible below acpi0 node. To fix that situation in a clean way acpi_cpu_cx_cst() should re-register the port below acpi0 just for safety. No idea how to do that... -- You are receiving this mail because: You are the assignee for the bug. _______________________________________________ freebsd-bugs@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-bugs To unsubscribe, send any mail to "freebsd-bugs-unsubscr...@freebsd.org"