diff options
author | Yinghai Lu <yinghai@kernel.org> | 2012-09-17 22:24:29 -0700 |
---|---|---|
committer | Yinghai Lu <yinghai@kernel.org> | 2012-09-17 22:24:29 -0700 |
commit | e3dc0e6bd2f10d7ef61830e0fa580c87d3afea76 (patch) | |
tree | d4cfd85a27d6c9a1fb30e018cacccd01e69a0480 | |
parent | 71ed3575c9baa3989072e2fb2af01f72da28108c (diff) | |
download | linux-yinghai-e3dc0e6bd2f10d7ef61830e0fa580c87d3afea76.tar.gz |
PCI: Add pci_bus_replace_busn_res()
It will use replace_resource to put bus's busn_res in the resource tree.
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
-rw-r--r-- | drivers/pci/probe.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index 84a307e27197ff..b1da241a8f0d65 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -835,6 +835,21 @@ static struct pci_bus *pci_alloc_child_bus(struct pci_bus *parent, return child; } +static void pci_bus_replace_busn_res(struct pci_bus *b, + struct resource *busn_res) +{ + struct resource *res = &b->busn_res; + + /* busn_res must be registered already*/ + if (!busn_res->parent) + return; + + replace_resource(busn_res, res); + + dev_printk(KERN_DEBUG, &b->dev, "busn_res: %pR is updated under %pR\n", + res, res->parent); +} + struct pci_bus *__ref pci_add_new_bus(struct pci_bus *parent, struct pci_dev *dev, int busnr) { struct pci_bus *child; |