]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - include/linux/pci-acpi.h
PCI/ACPI: fix wrong assumption in acpi_pci_get_bridge_handle
[mv-sheeva.git] / include / linux / pci-acpi.h
index 20480b9f10c887b4e83cafd8e4a19e6559ca0a43..3cee2367459fa9b6c53b5e8a0f7c36470db3dca2 100644 (file)
@@ -23,11 +23,10 @@ static inline acpi_handle acpi_find_root_bridge_handle(struct pci_dev *pdev)
 
 static inline acpi_handle acpi_pci_get_bridge_handle(struct pci_bus *pbus)
 {
-       int seg = pci_domain_nr(pbus), busnr = pbus->number;
-       struct pci_dev *bridge = pbus->self;
-       if (bridge)
-               return DEVICE_ACPI_HANDLE(&(bridge->dev));
-       return acpi_get_pci_rootbridge_handle(seg, busnr);
+       if (pbus->parent)
+               return DEVICE_ACPI_HANDLE(&(pbus->self->dev));
+       return acpi_get_pci_rootbridge_handle(pci_domain_nr(pbus),
+                                             pbus->number);
 }
 #else
 static inline acpi_handle acpi_find_root_bridge_handle(struct pci_dev *pdev)