diff options
author | Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> | 2016-08-10 07:22:15 -0400 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2016-09-26 12:46:41 -0400 |
commit | 0e74b34dfc3318bf4c7e51349d453d49fb8e9e16 (patch) | |
tree | b70ed304ada0970420008f7131e043bc75c8ae6d /include/linux/dma-debug.h | |
parent | ba409b31b3d37b52dda4eefcde04f5837c7ee4aa (diff) |
dma-debug: add support for resource mappings
A MMIO mapped resource can not be represented by a struct page so a new
debug type is needed to handle this. This patch add such type and
functionality to add/remove entries and how to translate them to a
physical address.
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Diffstat (limited to 'include/linux/dma-debug.h')
-rw-r--r-- | include/linux/dma-debug.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/include/linux/dma-debug.h b/include/linux/dma-debug.h index fe8cb610deac..c7d844f09c3a 100644 --- a/include/linux/dma-debug.h +++ b/include/linux/dma-debug.h | |||
@@ -56,6 +56,13 @@ extern void debug_dma_alloc_coherent(struct device *dev, size_t size, | |||
56 | extern void debug_dma_free_coherent(struct device *dev, size_t size, | 56 | extern void debug_dma_free_coherent(struct device *dev, size_t size, |
57 | void *virt, dma_addr_t addr); | 57 | void *virt, dma_addr_t addr); |
58 | 58 | ||
59 | extern void debug_dma_map_resource(struct device *dev, phys_addr_t addr, | ||
60 | size_t size, int direction, | ||
61 | dma_addr_t dma_addr); | ||
62 | |||
63 | extern void debug_dma_unmap_resource(struct device *dev, dma_addr_t dma_addr, | ||
64 | size_t size, int direction); | ||
65 | |||
59 | extern void debug_dma_sync_single_for_cpu(struct device *dev, | 66 | extern void debug_dma_sync_single_for_cpu(struct device *dev, |
60 | dma_addr_t dma_handle, size_t size, | 67 | dma_addr_t dma_handle, size_t size, |
61 | int direction); | 68 | int direction); |
@@ -141,6 +148,18 @@ static inline void debug_dma_free_coherent(struct device *dev, size_t size, | |||
141 | { | 148 | { |
142 | } | 149 | } |
143 | 150 | ||
151 | static inline void debug_dma_map_resource(struct device *dev, phys_addr_t addr, | ||
152 | size_t size, int direction, | ||
153 | dma_addr_t dma_addr) | ||
154 | { | ||
155 | } | ||
156 | |||
157 | static inline void debug_dma_unmap_resource(struct device *dev, | ||
158 | dma_addr_t dma_addr, size_t size, | ||
159 | int direction) | ||
160 | { | ||
161 | } | ||
162 | |||
144 | static inline void debug_dma_sync_single_for_cpu(struct device *dev, | 163 | static inline void debug_dma_sync_single_for_cpu(struct device *dev, |
145 | dma_addr_t dma_handle, | 164 | dma_addr_t dma_handle, |
146 | size_t size, int direction) | 165 | size_t size, int direction) |