2 * linux/arch/arm/mach-footbridge/ebsa285-pci.c
4 * PCI bios-type initialisation for PCI machines
6 * Bits taken from various places.
8 #include <linux/kernel.h>
10 #include <linux/init.h>
13 #include <asm/mach/pci.h>
15 static int irqmap_ebsa285
[] __initdata
= { IRQ_IN3
, IRQ_IN1
, IRQ_IN0
, IRQ_PCI
};
17 static u8 __init
ebsa285_swizzle(struct pci_dev
*dev
, u8
*pin
)
19 return PCI_SLOT(dev
->devfn
);
22 static int __init
ebsa285_map_irq(struct pci_dev
*dev
, u8 slot
, u8 pin
)
24 if (dev
->vendor
== PCI_VENDOR_ID_CONTAQ
&&
25 dev
->device
== PCI_DEVICE_ID_CONTAQ_82C693
)
26 switch (PCI_FUNC(dev
->devfn
)) {
32 return irqmap_ebsa285
[(slot
+ pin
) & 3];
35 struct hw_pci ebsa285_pci __initdata
= {
37 swizzle
: ebsa285_swizzle
,
38 map_irq
: ebsa285_map_irq
,