diff options
Diffstat (limited to 'drivers/acpi')
-rw-r--r-- | drivers/acpi/Kconfig | 8 | ||||
-rw-r--r-- | drivers/acpi/pci_irq.c | 9 | ||||
-rw-r--r-- | drivers/acpi/pci_link.c | 3 | ||||
-rw-r--r-- | drivers/acpi/video.c | 7 |
4 files changed, 19 insertions, 8 deletions
diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig index ba13896cae4..66c60982ba4 100644 --- a/drivers/acpi/Kconfig +++ b/drivers/acpi/Kconfig @@ -154,12 +154,10 @@ config ACPI_PROCESSOR support it. config ACPI_HOTPLUG_CPU - bool "Processor Hotplug (EXPERIMENTAL)" - depends on ACPI_PROCESSOR && HOTPLUG_CPU && EXPERIMENTAL + bool + depends on ACPI_PROCESSOR && HOTPLUG_CPU select ACPI_CONTAINER - default n - ---help--- - Select this option if your platform support physical CPU hotplug. + default y config ACPI_THERMAL tristate "Thermal Zone" diff --git a/drivers/acpi/pci_irq.c b/drivers/acpi/pci_irq.c index bb973d2109a..c885300579e 100644 --- a/drivers/acpi/pci_irq.c +++ b/drivers/acpi/pci_irq.c @@ -424,6 +424,7 @@ acpi_pci_irq_enable ( int edge_level = ACPI_LEVEL_SENSITIVE; int active_high_low = ACPI_ACTIVE_LOW; char *link = NULL; + int rc; ACPI_FUNCTION_TRACE("acpi_pci_irq_enable"); @@ -476,7 +477,13 @@ acpi_pci_irq_enable ( } } - dev->irq = acpi_register_gsi(irq, edge_level, active_high_low); + rc = acpi_register_gsi(irq, edge_level, active_high_low); + if (rc < 0) { + printk(KERN_WARNING PREFIX "PCI Interrupt %s[%c]: failed " + "to register GSI\n", pci_name(dev), ('A' + pin)); + return_VALUE(rc); + } + dev->irq = rc; printk(KERN_INFO PREFIX "PCI Interrupt %s[%c] -> ", pci_name(dev), 'A' + pin); diff --git a/drivers/acpi/pci_link.c b/drivers/acpi/pci_link.c index 834c2ceff1a..26aa3829f1d 100644 --- a/drivers/acpi/pci_link.c +++ b/drivers/acpi/pci_link.c @@ -804,8 +804,7 @@ acpi_pci_link_resume( */ int acpi_in_resume; static int -irqrouter_resume( - struct sys_device *dev) +irqrouter_resume(struct sys_device *dev) { struct list_head *node = NULL; struct acpi_pci_link *link = NULL; diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c index 2cf264fd52e..7b10a7b070c 100644 --- a/drivers/acpi/video.c +++ b/drivers/acpi/video.c @@ -1665,6 +1665,7 @@ static int acpi_video_bus_put_one_device( struct acpi_video_device *device) { + acpi_status status; struct acpi_video_bus *video; ACPI_FUNCTION_TRACE("acpi_video_bus_put_one_device"); @@ -1679,6 +1680,12 @@ acpi_video_bus_put_one_device( up(&video->sem); acpi_video_device_remove_fs(device->dev); + status = acpi_remove_notify_handler(device->handle, + ACPI_DEVICE_NOTIFY, acpi_video_device_notify); + if (ACPI_FAILURE(status)) + ACPI_DEBUG_PRINT((ACPI_DB_ERROR, + "Error removing notify handler\n")); + return_VALUE(0); } |