linux/arch/powerpc/platforms
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
..
8xx powerpc/irq: Stop exporting irq_map 2011-05-04 15:02:15 +10:00
40x powerpc/4xx: Adding PCIe MSI support 2011-05-26 15:00:37 +10:00
44x powerpc/4xx: Adding PCIe MSI support 2011-05-26 15:00:37 +10:00
52xx powerpc/mpc62xx_pic: Fix get_irq handling of NO_IRQ 2011-05-19 15:31:49 +10:00
82xx powerpc: Remove trival irq_host_ops.unmap 2011-05-19 15:31:39 +10:00
83xx drivercore: revert addition of of_match to struct device 2011-05-18 12:32:23 -06:00
85xx powerpc: Consolidate ipi message mux and demux 2011-05-19 15:31:03 +10:00
86xx powerpc/86xx: don't pretend that we support 8-bit pixels on the MPC8610 HPCD 2011-05-19 01:13:53 -05:00
512x powerpc/mpc5121_ads_cpld: Remove use of NO_IRQ_IGNORE 2011-05-19 15:31:47 +10:00
amigaone of/address: Clean up function declarations 2010-08-01 01:42:42 -06:00
cell powerpc/cell: Rename ipi functions to match current abstractions 2011-05-26 13:38:58 +10:00
chrp powerpc/smp: smp_ops->kick_cpu() should be able to fail 2011-04-20 17:01:18 +10:00
embedded6xx powerpc: Remove trival irq_host_ops.unmap 2011-05-19 15:31:39 +10:00
iseries powerpc: Add kconfig for muxed smp ipi support 2011-05-19 15:31:05 +10:00
maple powerpc: Convert to new irq_* function names 2011-03-29 14:48:12 +02:00
pasemi Fix common misspellings 2011-03-31 11:26:23 -03:00
powermac pci/of: Match PCI devices to OF nodes dynamically 2011-06-08 09:08:17 +10:00
prep powerpc/kconfig: Kill PPC_MULTIPLATFORM 2009-03-11 17:11:35 +11:00
ps3 powerpc: Remove trival irq_host_ops.unmap 2011-05-19 15:31:39 +10:00
pseries powerpc/pseries/iommu: Cleanup ddw naming 2011-05-19 17:25:28 +10:00
wsp powerpc: Consolidate ipi message mux and demux 2011-05-19 15:31:03 +10:00
fsl_uli1575.c PCI: add pci_bus_for_each_resource(), remove direct bus->resource[] refs 2010-02-23 09:43:31 -08:00
Kconfig powerpc: Remove unused/obsolete CONFIG_XICS 2011-05-19 16:55:11 +10:00
Kconfig.cputype powerpc: Add kconfig for muxed smp ipi support 2011-05-19 15:31:05 +10:00
Makefile powerpc: Add WSP platform 2011-05-06 13:32:35 +10:00