]> Pileus Git - ~andy/linux/blobdiff - include/linux/pci.h
PCI: Add pci_upstream_bridge()
[~andy/linux] / include / linux / pci.h
index d3a888ae4b2e3ad030bdb5f89354eea2f2567d0b..835ec7bf6c05a0d40a5144c4abe6b10012333087 100644 (file)
@@ -480,6 +480,15 @@ static inline bool pci_is_root_bus(struct pci_bus *pbus)
        return !(pbus->parent);
 }
 
+static inline struct pci_dev *pci_upstream_bridge(struct pci_dev *dev)
+{
+       dev = pci_physfn(dev);
+       if (pci_is_root_bus(dev->bus))
+               return NULL;
+
+       return dev->bus->self;
+}
+
 #ifdef CONFIG_PCI_MSI
 static inline bool pci_dev_msi_enabled(struct pci_dev *pci_dev)
 {