[PATCH] x86_64/acpi: make kernel to be compiled when CONFIG_ACPI_NUMA is set and power management with acpi is not enabled when CONFIG_ACPI_NUMA is set, and power management with acpi is not used. the kernel can not be compiled. drivers/acpi/bus.c: In function ‘acpi_bus_get_power’: drivers/acpi/bus.c:160: warning: implicit declaration of function ‘acpi_power_get_inferred_state’ drivers/acpi/bus.c: In function ‘acpi_bus_set_power’: drivers/acpi/bus.c:230: warning: implicit declaration of function ‘acpi_power_transition’ ... drivers/built-in.o: In function `acpi_bus_get_power': : undefined reference to `acpi_power_get_inferred_state' drivers/built-in.o: In function `acpi_bus_set_power': : undefined reference to `acpi_power_transition' drivers/built-in.o: In function `acpi_bus_set_power': : undefined reference to `acpi_power_transition' drivers/built-in.o: In function `acpi_bus_generate_event': so use CONFIG_ACPI_POWER and CONFIG_ACPI_SYTEM to comment function about set/get power and event. Signed-off-by: Yinghai Lu diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c index dd49ea0..4d06885 100644 --- a/drivers/acpi/bus.c +++ b/drivers/acpi/bus.c @@ -121,6 +121,7 @@ int acpi_bus_get_status(struct acpi_device *device) EXPORT_SYMBOL(acpi_bus_get_status); +#ifdef CONFIG_ACPI_POWER /* -------------------------------------------------------------------------- Power Management -------------------------------------------------------------------------- */ @@ -269,7 +270,9 @@ int acpi_bus_set_power(acpi_handle handle, int state) } EXPORT_SYMBOL(acpi_bus_set_power); +#endif +#ifdef CONFIG_ACPI_SYSTEM /* -------------------------------------------------------------------------- Event Management -------------------------------------------------------------------------- */ @@ -358,6 +361,7 @@ int acpi_bus_receive_event(struct acpi_bus_event *event) } EXPORT_SYMBOL(acpi_bus_receive_event); +#endif /* -------------------------------------------------------------------------- Notification Handling diff --git a/drivers/net/e1000/e1000_param.c b/drivers/net/e1000/e1000_param.c diff --git a/drivers/pci/pci-acpi.c b/drivers/pci/pci-acpi.c index a064f36..c2a1ac9 100644 --- a/drivers/pci/pci-acpi.c +++ b/drivers/pci/pci-acpi.c @@ -255,7 +255,7 @@ static int acpi_pci_choose_state(struct pci_dev *pdev, pm_message_t state) return -ENODEV; } - +#ifdef CONFIG_ACPI_POWER static int acpi_pci_set_power_state(struct pci_dev *dev, pci_power_t state) { acpi_handle handle = DEVICE_ACPI_HANDLE(&dev->dev); @@ -272,7 +272,7 @@ static int acpi_pci_set_power_state(struct pci_dev *dev, pci_power_t state) return -ENODEV; return acpi_bus_set_power(handle, acpi_state); } - +#endif /* ACPI bus type */ static int acpi_pci_find_device(struct device *dev, acpi_handle *handle) @@ -321,7 +321,9 @@ static int __init acpi_pci_init(void) if (ret) return 0; platform_pci_choose_state = acpi_pci_choose_state; +#ifdef CONFIG_ACPI_POWER platform_pci_set_power_state = acpi_pci_set_power_state; +#endif return 0; } arch_initcall(acpi_pci_init);