[POWERPC] Remove ppc_md.pci_map_irq & ppc_swizzle for ARCH=powerpc
These were inherited from ARCH=ppc, but are not needed since parsing of interrupts should be done via the of_* functions (who can do swizzling). If we ever need to do non-standard swizzling on bridges without a device-node, then we might add back a slightly different version of ppc_md.pci_swizzle but for now, that is not the case. I removed the couple of calls for these in 83xx. If that breaks something, then there is a problem with the device-tree on these. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
f90bb153b1
commit
69108cf006
|
@ -1283,10 +1283,6 @@ pcibios_init(void)
|
||||||
if (pci_assign_all_buses && have_of)
|
if (pci_assign_all_buses && have_of)
|
||||||
pcibios_make_OF_bus_map();
|
pcibios_make_OF_bus_map();
|
||||||
|
|
||||||
/* Do machine dependent PCI interrupt routing */
|
|
||||||
if (ppc_md.pci_swizzle && ppc_md.pci_map_irq)
|
|
||||||
pci_fixup_irqs(ppc_md.pci_swizzle, ppc_md.pci_map_irq);
|
|
||||||
|
|
||||||
/* Call machine dependent fixup */
|
/* Call machine dependent fixup */
|
||||||
if (ppc_md.pcibios_fixup)
|
if (ppc_md.pcibios_fixup)
|
||||||
ppc_md.pcibios_fixup();
|
ppc_md.pcibios_fixup();
|
||||||
|
@ -1309,25 +1305,6 @@ pcibios_init(void)
|
||||||
|
|
||||||
subsys_initcall(pcibios_init);
|
subsys_initcall(pcibios_init);
|
||||||
|
|
||||||
unsigned char __init
|
|
||||||
common_swizzle(struct pci_dev *dev, unsigned char *pinp)
|
|
||||||
{
|
|
||||||
struct pci_controller *hose = dev->sysdata;
|
|
||||||
|
|
||||||
if (dev->bus->number != hose->first_busno) {
|
|
||||||
u8 pin = *pinp;
|
|
||||||
do {
|
|
||||||
pin = bridge_swizzle(pin, PCI_SLOT(dev->devfn));
|
|
||||||
/* Move up the chain of bridges. */
|
|
||||||
dev = dev->bus->self;
|
|
||||||
} while (dev->bus->self);
|
|
||||||
*pinp = pin;
|
|
||||||
|
|
||||||
/* The slot is the idsel of the last bridge. */
|
|
||||||
}
|
|
||||||
return PCI_SLOT(dev->devfn);
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned long resource_fixup(struct pci_dev * dev, struct resource * res,
|
unsigned long resource_fixup(struct pci_dev * dev, struct resource * res,
|
||||||
unsigned long start, unsigned long size)
|
unsigned long start, unsigned long size)
|
||||||
{
|
{
|
||||||
|
|
|
@ -97,8 +97,6 @@ static void __init mpc832x_sys_setup_arch(void)
|
||||||
#ifdef CONFIG_PCI
|
#ifdef CONFIG_PCI
|
||||||
for (np = NULL; (np = of_find_node_by_type(np, "pci")) != NULL;)
|
for (np = NULL; (np = of_find_node_by_type(np, "pci")) != NULL;)
|
||||||
add_bridge(np);
|
add_bridge(np);
|
||||||
|
|
||||||
ppc_md.pci_swizzle = common_swizzle;
|
|
||||||
ppc_md.pci_exclude_device = mpc83xx_exclude_device;
|
ppc_md.pci_exclude_device = mpc83xx_exclude_device;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -102,8 +102,6 @@ static void __init mpc8360_sys_setup_arch(void)
|
||||||
#ifdef CONFIG_PCI
|
#ifdef CONFIG_PCI
|
||||||
for (np = NULL; (np = of_find_node_by_type(np, "pci")) != NULL;)
|
for (np = NULL; (np = of_find_node_by_type(np, "pci")) != NULL;)
|
||||||
add_bridge(np);
|
add_bridge(np);
|
||||||
|
|
||||||
ppc_md.pci_swizzle = common_swizzle;
|
|
||||||
ppc_md.pci_exclude_device = mpc83xx_exclude_device;
|
ppc_md.pci_exclude_device = mpc83xx_exclude_device;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -199,10 +199,6 @@ struct machdep_calls {
|
||||||
* Returns 0 to allow assignment/enabling of the device. */
|
* Returns 0 to allow assignment/enabling of the device. */
|
||||||
int (*pcibios_enable_device_hook)(struct pci_dev *, int initial);
|
int (*pcibios_enable_device_hook)(struct pci_dev *, int initial);
|
||||||
|
|
||||||
/* For interrupt routing */
|
|
||||||
unsigned char (*pci_swizzle)(struct pci_dev *, unsigned char *);
|
|
||||||
int (*pci_map_irq)(struct pci_dev *, unsigned char, unsigned char);
|
|
||||||
|
|
||||||
/* Called in indirect_* to avoid touching devices */
|
/* Called in indirect_* to avoid touching devices */
|
||||||
int (*pci_exclude_device)(unsigned char, unsigned char);
|
int (*pci_exclude_device)(unsigned char, unsigned char);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue