Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Blackfin: convert to asm-generic pci headers

Signed-off-by: Barry Song <barry.song@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>

authored by

Barry Song and committed by
Mike Frysinger
ad774b7c 2d40292b

+2 -128
+2 -128
arch/blackfin/include/asm/pci.h
··· 4 4 #define _ASM_BFIN_PCI_H 5 5 6 6 #include <asm/scatterlist.h> 7 + #include <asm-generic/pci-dma-compat.h> 8 + #include <asm-generic/pci.h> 7 9 8 - /* 9 - * 10 - * Written by Wout Klaren. 11 - */ 12 - 13 - /* Added by Chang Junxiao */ 14 10 #define PCIBIOS_MIN_IO 0x00001000 15 11 #define PCIBIOS_MIN_MEM 0x10000000 16 12 17 - #define PCI_DMA_BUS_IS_PHYS (1) 18 - struct pci_ops; 19 - 20 - /* 21 - * Structure with hardware dependent information and functions of the 22 - * PCI bus. 23 - */ 24 - struct pci_bus_info { 25 - 26 - /* 27 - * Resources of the PCI bus. 28 - */ 29 - struct resource mem_space; 30 - struct resource io_space; 31 - 32 - /* 33 - * System dependent functions. 34 - */ 35 - struct pci_ops *bfin_pci_ops; 36 - void (*fixup) (int pci_modify); 37 - void (*conf_device) (unsigned char bus, unsigned char device_fn); 38 - }; 39 - 40 - #define pcibios_assign_all_busses() 0 41 13 static inline void pcibios_set_master(struct pci_dev *dev) 42 14 { 43 - 44 15 /* No special bus mastering setup handling */ 45 16 } 46 17 static inline void pcibios_penalize_isa_irq(int irq) 47 18 { 48 - 49 19 /* We don't do dynamic PCI IRQ allocation */ 50 - } 51 - static inline dma_addr_t pci_map_single(struct pci_dev *hwdev, void *ptr, 52 - size_t size, int direction) 53 - { 54 - if (direction == PCI_DMA_NONE) 55 - BUG(); 56 - 57 - /* return virt_to_bus(ptr); */ 58 - return (dma_addr_t) ptr; 59 - } 60 - 61 - /* Unmap a single streaming mode DMA translation. The dma_addr and size 62 - * must match what was provided for in a previous pci_map_single call. All 63 - * other usages are undefined. 64 - * 65 - * After this call, reads by the cpu to the buffer are guarenteed to see 66 - * whatever the device wrote there. 67 - */ 68 - static inline void pci_unmap_single(struct pci_dev *hwdev, dma_addr_t dma_addr, 69 - size_t size, int direction) 70 - { 71 - if (direction == PCI_DMA_NONE) 72 - BUG(); 73 - 74 - /* Nothing to do */ 75 - } 76 - 77 - /* Map a set of buffers described by scatterlist in streaming 78 - * mode for DMA. This is the scather-gather version of the 79 - * above pci_map_single interface. Here the scatter gather list 80 - * elements are each tagged with the appropriate dma address 81 - * and length. They are obtained via sg_dma_{address,length}(SG). 82 - * 83 - * NOTE: An implementation may be able to use a smaller number of 84 - * DMA address/length pairs than there are SG table elements. 85 - * (for example via virtual mapping capabilities) 86 - * The routine returns the number of addr/length pairs actually 87 - * used, at most nents. 88 - * 89 - * Device ownership issues as mentioned above for pci_map_single are 90 - * the same here. 91 - */ 92 - static inline int pci_map_sg(struct pci_dev *hwdev, struct scatterlist *sg, 93 - int nents, int direction) 94 - { 95 - if (direction == PCI_DMA_NONE) 96 - BUG(); 97 - return nents; 98 - } 99 - 100 - /* Unmap a set of streaming mode DMA translations. 101 - * Again, cpu read rules concerning calls here are the same as for 102 - * pci_unmap_single() above. 103 - */ 104 - static inline void pci_unmap_sg(struct pci_dev *hwdev, struct scatterlist *sg, 105 - int nents, int direction) 106 - { 107 - if (direction == PCI_DMA_NONE) 108 - BUG(); 109 - 110 - /* Nothing to do */ 111 - } 112 - 113 - /* Make physical memory consistent for a single 114 - * streaming mode DMA translation after a transfer. 115 - * 116 - * If you perform a pci_map_single() but wish to interrogate the 117 - * buffer using the cpu, yet do not wish to teardown the PCI dma 118 - * mapping, you must call this function before doing so. At the 119 - * next point you give the PCI dma address back to the card, the 120 - * device again owns the buffer. 121 - */ 122 - static inline void pci_dma_sync_single(struct pci_dev *hwdev, 123 - dma_addr_t dma_handle, size_t size, 124 - int direction) 125 - { 126 - if (direction == PCI_DMA_NONE) 127 - BUG(); 128 - 129 - /* Nothing to do */ 130 - } 131 - 132 - /* Make physical memory consistent for a set of streaming 133 - * mode DMA translations after a transfer. 134 - * 135 - * The same as pci_dma_sync_single but for a scatter-gather list, 136 - * same rules and usage. 137 - */ 138 - static inline void pci_dma_sync_sg(struct pci_dev *hwdev, 139 - struct scatterlist *sg, int nelems, 140 - int direction) 141 - { 142 - if (direction == PCI_DMA_NONE) 143 - BUG(); 144 - 145 - /* Nothing to do */ 146 20 } 147 21 148 22 #endif /* _ASM_BFIN_PCI_H */