Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1c86438c authored by Yijing Wang's avatar Yijing Wang Committed by Bjorn Helgaas
Browse files

PCI: Add new pci_is_bridge() interface



Add a helper function to check a device's header type for PCI bridge or
CardBus bridge.

Requires: 326c1cda PCI: Rename pci_is_bridge() to pci_has_subordinate()
Signed-off-by: default avatarYijing Wang <wangyijing@huawei.com>
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
parent 326c1cda
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -477,6 +477,19 @@ static inline bool pci_is_root_bus(struct pci_bus *pbus)
	return !(pbus->parent);
}

/**
 * pci_is_bridge - check if the PCI device is a bridge
 * @dev: PCI device
 *
 * Return true if the PCI device is bridge whether it has subordinate
 * or not.
 */
static inline bool pci_is_bridge(struct pci_dev *dev)
{
	return dev->hdr_type == PCI_HEADER_TYPE_BRIDGE ||
		dev->hdr_type == PCI_HEADER_TYPE_CARDBUS;
}

static inline struct pci_dev *pci_upstream_bridge(struct pci_dev *dev)
{
	dev = pci_physfn(dev);