linux/drivers/of
Benjamin Herrenschmidt 98d9f30c82 pci/of: Match PCI devices to OF nodes dynamically
powerpc has two different ways of matching PCI devices to their
corresponding OF node (if any) for historical reasons. The ppc64 one
does a scan looking for matching bus/dev/fn, while the ppc32 one does a
scan looking only for matching dev/fn on each level in order to be
agnostic to busses being renumbered (which Linux does on some
platforms).

This removes both and instead moves the matching code to the PCI core
itself. It's the most logical place to do it: when a pci_dev is created,
we know the parent and thus can do a single level scan for the matching
device_node (if any).

The benefit is that all archs now get the matching for free. There's one
hook the arch might want to provide to match a PHB bus to its device
node. A default weak implementation is provided that looks for the
parent device device node, but it's not entirely reliable on powerpc for
various reasons so powerpc provides its own.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Michal Simek <monstr@monstr.eu>
Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2011-06-08 09:08:17 +10:00
..
address.c of/address: use proper endianess in get_flags 2010-12-23 15:57:48 -07:00
base.c dt: protect against NULL matches passed to of_match_node() 2011-03-23 14:55:55 -06:00
device.c dt/powerpc: move of_bus_type infrastructure to ibmebus 2011-02-28 01:36:38 -07:00
fdt.c dt/flattree: explicitly pass command line pointer to early_init_dt_scan_chosen 2011-05-11 14:53:18 +02:00
gpio.c of/gpio: fix of_gpio includes 2010-07-05 16:14:44 -06:00
irq.c of: Export of_irq_find_parent() 2011-04-20 17:01:19 +10:00
Kconfig pci/of: Match PCI devices to OF nodes dynamically 2011-06-08 09:08:17 +10:00
Makefile pci/of: Match PCI devices to OF nodes dynamically 2011-06-08 09:08:17 +10:00
of_i2c.c of/i2c: Fix request module by alias 2010-12-24 01:28:54 -07:00
of_mdio.c Fix common misspellings 2011-03-31 11:26:23 -03:00
of_net.c of/net: Move of_get_mac_address() to a common source file. 2010-11-01 01:08:14 -04:00
of_pci_irq.c pci/of: Match PCI devices to OF nodes dynamically 2011-06-08 09:08:17 +10:00
of_pci.c pci/of: Match PCI devices to OF nodes dynamically 2011-06-08 09:08:17 +10:00
of_spi.c of/spi: call of_register_spi_devices() from spi core code 2010-07-30 00:03:59 -06:00
pdt.c of/promtree: allow DT device matching by fixing 'name' brokenness (v5) 2011-03-02 13:45:19 -07:00
platform.c dt: eliminate OF_NO_DEEP_PROBE and test for NULL match table 2011-03-23 14:55:56 -06:00