1#ifndef ASMARM_PCI_H 2#define ASMARM_PCI_H 3 4#ifdef __KERNEL__ 5#include <asm/mach/pci.h> /* for pci_sys_data */ 6 7extern unsigned long pcibios_min_io; 8#define PCIBIOS_MIN_IO pcibios_min_io 9extern unsigned long pcibios_min_mem; 10#define PCIBIOS_MIN_MEM pcibios_min_mem 11 12static inline int pcibios_assign_all_busses(void) 13{ 14 return pci_has_flag(PCI_REASSIGN_ALL_RSRC); 15} 16 17#ifdef CONFIG_PCI_DOMAINS 18static inline int pci_domain_nr(struct pci_bus *bus) 19{ 20 struct pci_sys_data *root = bus->sysdata; 21 22 return root->domain; 23} 24 25static inline int pci_proc_domain(struct pci_bus *bus) 26{ 27 return pci_domain_nr(bus); 28} 29#endif /* CONFIG_PCI_DOMAINS */ 30 31/* 32 * The PCI address space does equal the physical memory address space. 33 * The networking and block device layers use this boolean for bounce 34 * buffer decisions. 35 */ 36#define PCI_DMA_BUS_IS_PHYS (1) 37 38#ifdef CONFIG_PCI 39static inline void pci_dma_burst_advice(struct pci_dev *pdev, 40 enum pci_dma_burst_strategy *strat, 41 unsigned long *strategy_parameter) 42{ 43 *strat = PCI_DMA_BURST_INFINITY; 44 *strategy_parameter = ~0UL; 45} 46#endif 47 48#define HAVE_PCI_MMAP 49extern int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma, 50 enum pci_mmap_state mmap_state, int write_combine); 51 52/* 53 * Dummy implementation; always return 0. 54 */ 55static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel) 56{ 57 return 0; 58} 59 60#endif /* __KERNEL__ */ 61#endif 62