Module Name: src Committed By: jruoho Date: Sun Jun 12 10:11:53 UTC 2011
Modified Files: src/sys/arch/ia64/acpi: acpi_machdep.c src/sys/arch/ia64/include: acpi_machdep.h src/sys/arch/x86/acpi: acpi_cpu_md.c src/sys/arch/x86/conf: files.x86 src/sys/arch/x86/include: acpi_machdep.h src/sys/dev/acpi: acpi.c acpi_cpu.c acpi_cpu.h Added Files: src/sys/arch/x86/acpi: acpi_pdc.c Log Message: Move the evaluation of the _PDC control method out from the acpicpu(4) driver to the main acpi(4) stack. Follow Linux and evaluate it early. Should fix PR port-amd64/42895, possibly also PR kern/42583, and many other comparable bugs. A common sense explanation is that Intel supplies additional CPU tables to OEMs. BIOS writers do not bother to modify their DSDTs, but instead load these extra tables dynamically as secondary SSDT tables. The actual Load() happens when the _PDC method is invoked, and thus namespace errors occur when the CPU-specific ACPI methods are not yet present but referenced in the AML by various drivers, including, but not limited to, acpitz(4). To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/sys/arch/ia64/acpi/acpi_machdep.c cvs rdiff -u -r1.3 -r1.4 src/sys/arch/ia64/include/acpi_machdep.h cvs rdiff -u -r1.60 -r1.61 src/sys/arch/x86/acpi/acpi_cpu_md.c cvs rdiff -u -r0 -r1.1 src/sys/arch/x86/acpi/acpi_pdc.c cvs rdiff -u -r1.69 -r1.70 src/sys/arch/x86/conf/files.x86 cvs rdiff -u -r1.8 -r1.9 src/sys/arch/x86/include/acpi_machdep.h cvs rdiff -u -r1.242 -r1.243 src/sys/dev/acpi/acpi.c cvs rdiff -u -r1.40 -r1.41 src/sys/dev/acpi/acpi_cpu.c \ src/sys/dev/acpi/acpi_cpu.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.