summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/Makefile
diff options
context:
space:
mode:
authorAlex Chiang <achiang@hp.com>2009-12-20 20:19:09 +0100
committerLen Brown <len.brown@intel.com>2009-12-22 09:24:08 +0100
commit78f1699659963fff97975df44db6d5dbe7218e55 (patch)
tree929291454d6d86a523c9b3881eb8cc40d65a11fc /drivers/acpi/Makefile
parentLinux 2.6.33-rc1 (diff)
downloadlinux-78f1699659963fff97975df44db6d5dbe7218e55.tar.xz
linux-78f1699659963fff97975df44db6d5dbe7218e55.zip
ACPI: processor: call _PDC early
We discovered that at least one machine (HP Envy), methods in the DSDT attempt to call external methods defined in a dynamically loaded SSDT. Unfortunately, the DSDT methods we are trying to call are part of the EC initialization, which happens very early, and the the dynamic SSDT is only loaded when a processor _PDC method runs much later. This results in namespace lookup errors for the (as of yet) undefined methods. Since Windows doesn't have any issues with this machine, we take it as a hint that they must be evaluating _PDC much earlier than we are. Thus, the proper thing for Linux to do should be to match the Windows implementation more closely. Provide a mechanism to call _PDC before we enable the EC. Doing so loads the dynamic tables, and allows the EC to be enabled correctly. The ACPI processor driver will still evaluate _PDC in its .add() method to cover the hotplug case. Resolves: http://bugzilla.kernel.org/show_bug.cgi?id=14824 Cc: ming.m.lin@intel.com Signed-off-by: Alex Chiang <achiang@hp.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/Makefile')
-rw-r--r--drivers/acpi/Makefile1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/acpi/Makefile b/drivers/acpi/Makefile
index c7b10b4298e9..66cc3f36a954 100644
--- a/drivers/acpi/Makefile
+++ b/drivers/acpi/Makefile
@@ -32,6 +32,7 @@ acpi-$(CONFIG_ACPI_SLEEP) += proc.o
#
acpi-y += bus.o glue.o
acpi-y += scan.o
+acpi-y += processor_pdc.o
acpi-y += ec.o
acpi-$(CONFIG_ACPI_DOCK) += dock.o
acpi-y += pci_root.o pci_link.o pci_irq.o pci_bind.o