diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2017-10-20 22:38:54 +0200 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2017-11-07 01:48:58 +0100 |
commit | 24a0c654d7d6063301c51361f911369264342b3c (patch) | |
tree | 22d07a3196b6e8ca3ed23e5b68dcd320488b5ba7 /drivers/pci/hotplug/shpchp_pci.c | |
parent | PCI: shpchp: Convert timers to use timer_setup() (diff) | |
download | linux-24a0c654d7d6063301c51361f911369264342b3c.tar.xz linux-24a0c654d7d6063301c51361f911369264342b3c.zip |
PCI: Add for_each_pci_bridge() helper
The following pattern is often used:
list_for_each_entry(dev, &bus->devices, bus_list) {
if (pci_is_bridge(dev)) {
...
}
}
Add a for_each_pci_bridge() helper to make that code easier to write and
read by reducing indentation level. It also saves one or few lines of code
in each occurrence.
Convert PCI core parts here at the same time.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
[bhelgaas: fold in http://lkml.kernel.org/r/20171013165352.25550-1-andriy.shevchenko@linux.intel.com]
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'drivers/pci/hotplug/shpchp_pci.c')
-rw-r--r-- | drivers/pci/hotplug/shpchp_pci.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/pci/hotplug/shpchp_pci.c b/drivers/pci/hotplug/shpchp_pci.c index f8cd3a27e351..ea63db58b4b1 100644 --- a/drivers/pci/hotplug/shpchp_pci.c +++ b/drivers/pci/hotplug/shpchp_pci.c @@ -61,10 +61,8 @@ int shpchp_configure_device(struct slot *p_slot) goto out; } - list_for_each_entry(dev, &parent->devices, bus_list) { - if (PCI_SLOT(dev->devfn) != p_slot->device) - continue; - if (pci_is_bridge(dev)) + for_each_pci_bridge(dev, parent) { + if (PCI_SLOT(dev->devfn) == p_slot->device) pci_hp_add_bridge(dev); } |