]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | #ifndef ASMARM_PCI_H |
2 | #define ASMARM_PCI_H | |
3 | ||
4 | #ifdef __KERNEL__ | |
5 | #include <linux/config.h> | |
6 | #include <asm-generic/pci-dma-compat.h> | |
7 | ||
8 | #include <asm/hardware.h> /* for PCIBIOS_MIN_* */ | |
9 | ||
10 | #define pcibios_scan_all_fns(a, b) 0 | |
11 | ||
12 | static inline void pcibios_set_master(struct pci_dev *dev) | |
13 | { | |
14 | /* No special bus mastering setup handling */ | |
15 | } | |
16 | ||
c9c3e457 | 17 | static inline void pcibios_penalize_isa_irq(int irq, int active) |
1da177e4 LT |
18 | { |
19 | /* We don't do dynamic PCI IRQ allocation */ | |
20 | } | |
21 | ||
22 | /* | |
23 | * The PCI address space does equal the physical memory address space. | |
24 | * The networking and block device layers use this boolean for bounce | |
25 | * buffer decisions. | |
26 | */ | |
27 | #define PCI_DMA_BUS_IS_PHYS (0) | |
28 | ||
29 | /* | |
30 | * We don't support DAC DMA cycles. | |
31 | */ | |
32 | #define pci_dac_dma_supported(pci_dev, mask) (0) | |
33 | ||
34 | /* | |
35 | * Whether pci_unmap_{single,page} is a nop depends upon the | |
36 | * configuration. | |
37 | */ | |
38 | #define DECLARE_PCI_UNMAP_ADDR(ADDR_NAME) dma_addr_t ADDR_NAME; | |
39 | #define DECLARE_PCI_UNMAP_LEN(LEN_NAME) __u32 LEN_NAME; | |
40 | #define pci_unmap_addr(PTR, ADDR_NAME) ((PTR)->ADDR_NAME) | |
41 | #define pci_unmap_addr_set(PTR, ADDR_NAME, VAL) (((PTR)->ADDR_NAME) = (VAL)) | |
42 | #define pci_unmap_len(PTR, LEN_NAME) ((PTR)->LEN_NAME) | |
43 | #define pci_unmap_len_set(PTR, LEN_NAME, VAL) (((PTR)->LEN_NAME) = (VAL)) | |
44 | ||
bb4a61b6 | 45 | #ifdef CONFIG_PCI |
e24c2d96 DM |
46 | static inline void pci_dma_burst_advice(struct pci_dev *pdev, |
47 | enum pci_dma_burst_strategy *strat, | |
48 | unsigned long *strategy_parameter) | |
49 | { | |
50 | *strat = PCI_DMA_BURST_INFINITY; | |
51 | *strategy_parameter = ~0UL; | |
52 | } | |
bb4a61b6 | 53 | #endif |
e24c2d96 | 54 | |
1da177e4 LT |
55 | #define HAVE_PCI_MMAP |
56 | extern int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma, | |
57 | enum pci_mmap_state mmap_state, int write_combine); | |
58 | ||
59 | extern void | |
60 | pcibios_resource_to_bus(struct pci_dev *dev, struct pci_bus_region *region, | |
61 | struct resource *res); | |
62 | ||
63 | static inline void pcibios_add_platform_entries(struct pci_dev *dev) | |
64 | { | |
65 | } | |
66 | ||
67 | #endif /* __KERNEL__ */ | |
68 | ||
69 | #endif |