MOXA linux-2.6.x / linux-2.6.9-uc0 from sdlinux-moxaart.tgz
[linux-2.6.9-moxart.git] / include / asm-mips / pci_channel.h
bloba7cdb42fa8bda5ca456a28ce7842fd86aa81e3b6
1 #ifndef __ASM_PCI_CHANNEL_H
2 #define __ASM_PCI_CHANNEL_H
4 /*
5 * This file essentially defines the interface between board
6 * specific PCI code and MIPS common PCI code. Should potentially put
7 * into include/asm/pci.h file.
8 */
10 #include <linux/ioport.h>
11 #include <linux/pci.h>
14 * Each pci channel is a top-level PCI bus seem by CPU. A machine with
15 * multiple PCI channels may have multiple PCI host controllers or a
16 * single controller supporting multiple channels.
18 struct pci_controller {
19 struct pci_controller *next;
20 struct pci_bus *bus;
22 struct pci_ops *pci_ops;
23 struct resource *mem_resource;
24 unsigned long mem_offset;
25 struct resource *io_resource;
26 unsigned long io_offset;
28 /* For compatibility with current (as of July 2003) pciutils
29 and XFree86. Eventually will be removed. */
30 unsigned int need_domain_info;
32 int iommu;
36 * Used by boards to register their PCI interfaces before the actual scanning.
38 extern struct pci_controller * alloc_pci_controller(void);
39 extern void register_pci_controller(struct pci_controller *hose);
42 * board supplied pci irq fixup routine
44 extern int pcibios_map_irq(struct pci_dev *dev, u8 slot, u8 pin);
46 #endif /* __ASM_PCI_CHANNEL_H */