diff options
author | Jan Kiszka <jan.kiszka@siemens.com> | 2018-05-15 11:07:03 +0200 |
---|---|---|
committer | Bjorn Helgaas <helgaas@kernel.org> | 2018-05-30 11:34:56 -0500 |
commit | 055f87a2a33640923d400fd5c3ebfff24198459f (patch) | |
tree | 5edff8834093ebf26abb77dbc82f403cd2ed8d77 /drivers/pci/of.c | |
parent | 126b7de6bfd84b2daadca2c3396108cd847adb5d (diff) | |
download | linux-rpi-055f87a2a33640923d400fd5c3ebfff24198459f.tar.gz linux-rpi-055f87a2a33640923d400fd5c3ebfff24198459f.tar.bz2 linux-rpi-055f87a2a33640923d400fd5c3ebfff24198459f.zip |
PCI: Pass struct device to of_pci_get_host_bridge_resources()
Another step towards a managed version of
of_pci_get_host_bridge_resources(): Feed in the underlying device, rather
than just the OF node. This will allow us to use managed resource
allocation internally later on.
Tested-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com>
Acked-by: Jingoo Han <jingoohan1@gmail.com>
CC: Joao Pinto <Joao.Pinto@synopsys.com>
CC: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Diffstat (limited to 'drivers/pci/of.c')
-rw-r--r-- | drivers/pci/of.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/pci/of.c b/drivers/pci/of.c index 8d4778ef5806..ac97491ba377 100644 --- a/drivers/pci/of.c +++ b/drivers/pci/of.c @@ -245,7 +245,7 @@ EXPORT_SYMBOL_GPL(of_pci_check_probe_only); #if defined(CONFIG_OF_ADDRESS) /** * of_pci_get_host_bridge_resources - Parse PCI host bridge resources from DT - * @dev_node: device node of the host bridge having the range property + * @dev: host bridge device * @busno: bus number associated with the bridge root bus * @bus_max: maximum number of buses for this bridge * @resources: list where the range of resources will be added after DT parsing @@ -262,10 +262,11 @@ EXPORT_SYMBOL_GPL(of_pci_check_probe_only); * It returns zero if the range parsing has been successful or a standard error * value if it failed. */ -int of_pci_get_host_bridge_resources(struct device_node *dev_node, +int of_pci_get_host_bridge_resources(struct device *dev, unsigned char busno, unsigned char bus_max, struct list_head *resources, resource_size_t *io_base) { + struct device_node *dev_node = dev->of_node; struct resource_entry *window; struct resource *res; struct resource *bus_range; @@ -599,12 +600,12 @@ int pci_parse_request_of_pci_ranges(struct device *dev, struct resource **bus_range) { int err, res_valid = 0; - struct device_node *np = dev->of_node; resource_size_t iobase; struct resource_entry *win, *tmp; INIT_LIST_HEAD(resources); - err = of_pci_get_host_bridge_resources(np, 0, 0xff, resources, &iobase); + err = of_pci_get_host_bridge_resources(dev, 0, 0xff, resources, + &iobase); if (err) return err; |