diff options
author | Yinghai Lu <yinghai@kernel.org> | 2012-09-17 22:20:30 -0700 |
---|---|---|
committer | Yinghai Lu <yinghai@kernel.org> | 2012-09-17 22:20:30 -0700 |
commit | 39db68a15d4680b71e014fc7a18c181f134d4a01 (patch) | |
tree | 8013cf38ba5955de8887c1e034eee57d09d511a8 | |
parent | 5b4965eff39f192afa97106dfbe217e0af0de2f0 (diff) | |
download | linux-yinghai-39db68a15d4680b71e014fc7a18c181f134d4a01.tar.gz |
PCI: Use for_each_res pci bases reading
Replace those open code, and make code more readable.
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
-rw-r--r-- | drivers/pci/probe.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index 29f2c6f5622ce..4f7fb8a60f1da 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -353,9 +353,11 @@ out: static void pci_read_bases(struct pci_dev *dev, unsigned int howmany, int rom) { unsigned int pos, reg; + struct resource *res; - for (pos = 0; pos < howmany; pos++) { - struct resource *res = &dev->resource[pos]; + for_each_pci_resource(dev, res, pos, PCI_STD_RES) { + if (pos >= howmany) + break; reg = PCI_BASE_ADDRESS_0 + (pos << 2); pos += __pci_read_base(dev, pci_bar_unknown, res, reg); } |