1#ifndef __ASM_PCI_CHANNEL_H 2#define __ASM_PCI_CHANNEL_H 3 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 */ 9 10#include <linux/ioport.h> 11#include <linux/pci.h> 12 13/* 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. 17 */ 18struct pci_channel { 19 struct pci_ops *pci_ops; 20 struct resource *io_resource; 21 struct resource *mem_resource; 22 int first_devfn; 23 int last_devfn; 24}; 25 26/* 27 * each board defines an array of pci_channels, that ends with all NULL entry 28 */ 29extern struct pci_channel mips_pci_channels[]; 30 31/* 32 * board supplied pci irq fixup routine 33 */ 34extern void pcibios_fixup_irqs(void); 35 36/* 37 * board supplied pci fixup routines 38 */ 39extern void pcibios_fixup_resources(struct pci_dev *dev); 40 41#endif /* __ASM_PCI_CHANNEL_H */ 42