aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/hotplug/acpi_pcihp.c
diff options
context:
space:
mode:
authorAndrea Bastoni <bastoni@cs.unc.edu>2010-05-30 19:16:45 -0400
committerAndrea Bastoni <bastoni@cs.unc.edu>2010-05-30 19:16:45 -0400
commitada47b5fe13d89735805b566185f4885f5a3f750 (patch)
tree644b88f8a71896307d71438e9b3af49126ffb22b /drivers/pci/hotplug/acpi_pcihp.c
parent43e98717ad40a4ae64545b5ba047c7b86aa44f4f (diff)
parent3280f21d43ee541f97f8cda5792150d2dbec20d5 (diff)
Merge branch 'wip-2.6.34' into old-private-masterarchived-private-master
Diffstat (limited to 'drivers/pci/hotplug/acpi_pcihp.c')
-rw-r--r--drivers/pci/hotplug/acpi_pcihp.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/pci/hotplug/acpi_pcihp.c b/drivers/pci/hotplug/acpi_pcihp.c
index a73028ec52e5..45fcc1e96df9 100644
--- a/drivers/pci/hotplug/acpi_pcihp.c
+++ b/drivers/pci/hotplug/acpi_pcihp.c
@@ -32,6 +32,7 @@
32#include <linux/pci_hotplug.h> 32#include <linux/pci_hotplug.h>
33#include <linux/acpi.h> 33#include <linux/acpi.h>
34#include <linux/pci-acpi.h> 34#include <linux/pci-acpi.h>
35#include <linux/slab.h>
35 36
36#define MY_NAME "acpi_pcihp" 37#define MY_NAME "acpi_pcihp"
37 38
@@ -362,6 +363,8 @@ int acpi_get_hp_hw_control_from_firmware(struct pci_dev *pdev, u32 flags)
362 status = acpi_pci_osc_control_set(handle, flags); 363 status = acpi_pci_osc_control_set(handle, flags);
363 if (ACPI_SUCCESS(status)) 364 if (ACPI_SUCCESS(status))
364 goto got_one; 365 goto got_one;
366 if (status == AE_SUPPORT)
367 goto no_control;
365 kfree(string.pointer); 368 kfree(string.pointer);
366 string = (struct acpi_buffer){ ACPI_ALLOCATE_BUFFER, NULL }; 369 string = (struct acpi_buffer){ ACPI_ALLOCATE_BUFFER, NULL };
367 } 370 }
@@ -394,10 +397,9 @@ int acpi_get_hp_hw_control_from_firmware(struct pci_dev *pdev, u32 flags)
394 if (ACPI_FAILURE(status)) 397 if (ACPI_FAILURE(status))
395 break; 398 break;
396 } 399 }
397 400no_control:
398 dbg("Cannot get control of hotplug hardware for pci %s\n", 401 dbg("Cannot get control of hotplug hardware for pci %s\n",
399 pci_name(pdev)); 402 pci_name(pdev));
400
401 kfree(string.pointer); 403 kfree(string.pointer);
402 return -ENODEV; 404 return -ENODEV;
403got_one: 405got_one:
@@ -471,7 +473,7 @@ int acpi_pci_detect_ejectable(acpi_handle handle)
471 return found; 473 return found;
472 474
473 acpi_walk_namespace(ACPI_TYPE_DEVICE, handle, 1, 475 acpi_walk_namespace(ACPI_TYPE_DEVICE, handle, 1,
474 check_hotplug, (void *)&found, NULL); 476 check_hotplug, NULL, (void *)&found, NULL);
475 return found; 477 return found;
476} 478}
477EXPORT_SYMBOL_GPL(acpi_pci_detect_ejectable); 479EXPORT_SYMBOL_GPL(acpi_pci_detect_ejectable);