diff options
-rw-r--r-- | arch/x86/kernel/pci-base_32.c | 1 | ||||
-rw-r--r-- | include/asm-x86/dma-mapping.h | 9 | ||||
-rw-r--r-- | include/asm-x86/dma-mapping_32.h | 6 | ||||
-rw-r--r-- | include/asm-x86/dma-mapping_64.h | 11 |
4 files changed, 10 insertions, 17 deletions
diff --git a/arch/x86/kernel/pci-base_32.c b/arch/x86/kernel/pci-base_32.c index 4512c307b60c..d876600aaeb6 100644 --- a/arch/x86/kernel/pci-base_32.c +++ b/arch/x86/kernel/pci-base_32.c | |||
@@ -39,6 +39,7 @@ static const struct dma_mapping_ops pci32_dma_ops = { | |||
39 | .sync_single_for_device = NULL, | 39 | .sync_single_for_device = NULL, |
40 | .sync_single_range_for_cpu = NULL, | 40 | .sync_single_range_for_cpu = NULL, |
41 | .sync_single_range_for_device = NULL, | 41 | .sync_single_range_for_device = NULL, |
42 | .sync_sg_for_cpu = NULL, | ||
42 | }; | 43 | }; |
43 | 44 | ||
44 | const struct dma_mapping_ops *dma_ops = &pci32_dma_ops; | 45 | const struct dma_mapping_ops *dma_ops = &pci32_dma_ops; |
diff --git a/include/asm-x86/dma-mapping.h b/include/asm-x86/dma-mapping.h index 260538b6ce2c..1a301d7e4726 100644 --- a/include/asm-x86/dma-mapping.h +++ b/include/asm-x86/dma-mapping.h | |||
@@ -139,4 +139,13 @@ dma_sync_single_range_for_device(struct device *hwdev, dma_addr_t dma_handle, | |||
139 | flush_write_buffers(); | 139 | flush_write_buffers(); |
140 | } | 140 | } |
141 | 141 | ||
142 | static inline void | ||
143 | dma_sync_sg_for_cpu(struct device *hwdev, struct scatterlist *sg, | ||
144 | int nelems, int direction) | ||
145 | { | ||
146 | BUG_ON(!valid_dma_direction(direction)); | ||
147 | if (dma_ops->sync_sg_for_cpu) | ||
148 | dma_ops->sync_sg_for_cpu(hwdev, sg, nelems, direction); | ||
149 | flush_write_buffers(); | ||
150 | } | ||
142 | #endif | 151 | #endif |
diff --git a/include/asm-x86/dma-mapping_32.h b/include/asm-x86/dma-mapping_32.h index 60d5371c7de7..e7c82e34af9e 100644 --- a/include/asm-x86/dma-mapping_32.h +++ b/include/asm-x86/dma-mapping_32.h | |||
@@ -33,12 +33,6 @@ dma_unmap_page(struct device *dev, dma_addr_t dma_address, size_t size, | |||
33 | } | 33 | } |
34 | 34 | ||
35 | static inline void | 35 | static inline void |
36 | dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg, int nelems, | ||
37 | enum dma_data_direction direction) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | static inline void | ||
42 | dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nelems, | 36 | dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nelems, |
43 | enum dma_data_direction direction) | 37 | enum dma_data_direction direction) |
44 | { | 38 | { |
diff --git a/include/asm-x86/dma-mapping_64.h b/include/asm-x86/dma-mapping_64.h index dfa66cc525bc..804b154abaf8 100644 --- a/include/asm-x86/dma-mapping_64.h +++ b/include/asm-x86/dma-mapping_64.h | |||
@@ -27,17 +27,6 @@ extern void dma_free_coherent(struct device *dev, size_t size, void *vaddr, | |||
27 | dma_map_single((dev), page_address(page)+(offset), (size), (dir)) | 27 | dma_map_single((dev), page_address(page)+(offset), (size), (dir)) |
28 | 28 | ||
29 | #define dma_unmap_page dma_unmap_single | 29 | #define dma_unmap_page dma_unmap_single |
30 | |||
31 | static inline void | ||
32 | dma_sync_sg_for_cpu(struct device *hwdev, struct scatterlist *sg, | ||
33 | int nelems, int direction) | ||
34 | { | ||
35 | BUG_ON(!valid_dma_direction(direction)); | ||
36 | if (dma_ops->sync_sg_for_cpu) | ||
37 | dma_ops->sync_sg_for_cpu(hwdev, sg, nelems, direction); | ||
38 | flush_write_buffers(); | ||
39 | } | ||
40 | |||
41 | static inline void | 30 | static inline void |
42 | dma_sync_sg_for_device(struct device *hwdev, struct scatterlist *sg, | 31 | dma_sync_sg_for_device(struct device *hwdev, struct scatterlist *sg, |
43 | int nelems, int direction) | 32 | int nelems, int direction) |