diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2006-12-06 23:38:54 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-07 11:39:41 -0500 |
commit | f67637ee4b5d90d41160d755b9a8cca18c394586 (patch) | |
tree | dffa1fa32f8e0462c8e46c4f8fefa058be349d6a /include | |
parent | 83b7b44e1c1e9e493ccd4146558481ab5af0116a (diff) |
[PATCH] Add struct dev pointer to dma_is_consistent()
dma_is_consistent() is ill-designed in that it does not have a struct
device pointer argument which makes proper support for systems that consist
of a mix of coherent and non-coherent DMA devices hard. Change
dma_is_consistent to take a struct device pointer as first argument and fix
the sole caller to pass it.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Cc: James Bottomley <James.Bottomley@steeleye.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-alpha/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-arm/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-avr32/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-cris/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-frv/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-generic/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-i386/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-ia64/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-m68k/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-mips/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-parisc/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-powerpc/dma-mapping.h | 4 | ||||
-rw-r--r-- | include/asm-sparc64/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-um/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-x86_64/dma-mapping.h | 2 | ||||
-rw-r--r-- | include/asm-xtensa/dma-mapping.h | 2 |
16 files changed, 17 insertions, 17 deletions
diff --git a/include/asm-alpha/dma-mapping.h b/include/asm-alpha/dma-mapping.h index b9ff4d8cb33a..b274bf6317c7 100644 --- a/include/asm-alpha/dma-mapping.h +++ b/include/asm-alpha/dma-mapping.h | |||
@@ -51,7 +51,7 @@ int dma_map_sg(struct device *dev, struct scatterlist *sg, int nents, | |||
51 | 51 | ||
52 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) | 52 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) |
53 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) | 53 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) |
54 | #define dma_is_consistent(dev) (1) | 54 | #define dma_is_consistent(d, h) (1) |
55 | 55 | ||
56 | int dma_set_mask(struct device *dev, u64 mask); | 56 | int dma_set_mask(struct device *dev, u64 mask); |
57 | 57 | ||
diff --git a/include/asm-arm/dma-mapping.h b/include/asm-arm/dma-mapping.h index 666617711c81..9bc46b486afb 100644 --- a/include/asm-arm/dma-mapping.h +++ b/include/asm-arm/dma-mapping.h | |||
@@ -48,7 +48,7 @@ static inline int dma_get_cache_alignment(void) | |||
48 | return 32; | 48 | return 32; |
49 | } | 49 | } |
50 | 50 | ||
51 | static inline int dma_is_consistent(dma_addr_t handle) | 51 | static inline int dma_is_consistent(struct device *dev, dma_addr_t handle) |
52 | { | 52 | { |
53 | return !!arch_is_coherent(); | 53 | return !!arch_is_coherent(); |
54 | } | 54 | } |
diff --git a/include/asm-avr32/dma-mapping.h b/include/asm-avr32/dma-mapping.h index 4c40cb41cdf8..44630be2ee22 100644 --- a/include/asm-avr32/dma-mapping.h +++ b/include/asm-avr32/dma-mapping.h | |||
@@ -307,7 +307,7 @@ dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, | |||
307 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) | 307 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) |
308 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) | 308 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) |
309 | 309 | ||
310 | static inline int dma_is_consistent(dma_addr_t dma_addr) | 310 | static inline int dma_is_consistent(struct device *dev, dma_addr_t dma_addr) |
311 | { | 311 | { |
312 | return 1; | 312 | return 1; |
313 | } | 313 | } |
diff --git a/include/asm-cris/dma-mapping.h b/include/asm-cris/dma-mapping.h index cbf1a98f0129..af704fdd3d0d 100644 --- a/include/asm-cris/dma-mapping.h +++ b/include/asm-cris/dma-mapping.h | |||
@@ -156,7 +156,7 @@ dma_get_cache_alignment(void) | |||
156 | return (1 << INTERNODE_CACHE_SHIFT); | 156 | return (1 << INTERNODE_CACHE_SHIFT); |
157 | } | 157 | } |
158 | 158 | ||
159 | #define dma_is_consistent(d) (1) | 159 | #define dma_is_consistent(d, h) (1) |
160 | 160 | ||
161 | static inline void | 161 | static inline void |
162 | dma_cache_sync(void *vaddr, size_t size, | 162 | dma_cache_sync(void *vaddr, size_t size, |
diff --git a/include/asm-frv/dma-mapping.h b/include/asm-frv/dma-mapping.h index e9fc1d47797e..7b97fc785f72 100644 --- a/include/asm-frv/dma-mapping.h +++ b/include/asm-frv/dma-mapping.h | |||
@@ -172,7 +172,7 @@ int dma_get_cache_alignment(void) | |||
172 | return 1 << L1_CACHE_SHIFT; | 172 | return 1 << L1_CACHE_SHIFT; |
173 | } | 173 | } |
174 | 174 | ||
175 | #define dma_is_consistent(d) (1) | 175 | #define dma_is_consistent(d, h) (1) |
176 | 176 | ||
177 | static inline | 177 | static inline |
178 | void dma_cache_sync(void *vaddr, size_t size, | 178 | void dma_cache_sync(void *vaddr, size_t size, |
diff --git a/include/asm-generic/dma-mapping.h b/include/asm-generic/dma-mapping.h index b541e48cc545..b9be3fc344c7 100644 --- a/include/asm-generic/dma-mapping.h +++ b/include/asm-generic/dma-mapping.h | |||
@@ -266,7 +266,7 @@ dma_error(dma_addr_t dma_addr) | |||
266 | 266 | ||
267 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) | 267 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) |
268 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) | 268 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) |
269 | #define dma_is_consistent(d) (1) | 269 | #define dma_is_consistent(d, h) (1) |
270 | 270 | ||
271 | static inline int | 271 | static inline int |
272 | dma_get_cache_alignment(void) | 272 | dma_get_cache_alignment(void) |
diff --git a/include/asm-i386/dma-mapping.h b/include/asm-i386/dma-mapping.h index 81999a3ebe7c..7da64c9f1738 100644 --- a/include/asm-i386/dma-mapping.h +++ b/include/asm-i386/dma-mapping.h | |||
@@ -156,7 +156,7 @@ dma_get_cache_alignment(void) | |||
156 | return (1 << INTERNODE_CACHE_SHIFT); | 156 | return (1 << INTERNODE_CACHE_SHIFT); |
157 | } | 157 | } |
158 | 158 | ||
159 | #define dma_is_consistent(d) (1) | 159 | #define dma_is_consistent(d, h) (1) |
160 | 160 | ||
161 | static inline void | 161 | static inline void |
162 | dma_cache_sync(void *vaddr, size_t size, | 162 | dma_cache_sync(void *vaddr, size_t size, |
diff --git a/include/asm-ia64/dma-mapping.h b/include/asm-ia64/dma-mapping.h index 99a8f8e1218c..4b075bc032ec 100644 --- a/include/asm-ia64/dma-mapping.h +++ b/include/asm-ia64/dma-mapping.h | |||
@@ -59,6 +59,6 @@ dma_cache_sync (void *vaddr, size_t size, enum dma_data_direction dir) | |||
59 | mb(); | 59 | mb(); |
60 | } | 60 | } |
61 | 61 | ||
62 | #define dma_is_consistent(dma_handle) (1) /* all we do is coherent memory... */ | 62 | #define dma_is_consistent(d, h) (1) /* all we do is coherent memory... */ |
63 | 63 | ||
64 | #endif /* _ASM_IA64_DMA_MAPPING_H */ | 64 | #endif /* _ASM_IA64_DMA_MAPPING_H */ |
diff --git a/include/asm-m68k/dma-mapping.h b/include/asm-m68k/dma-mapping.h index d90d841d3dfd..efc89c12f837 100644 --- a/include/asm-m68k/dma-mapping.h +++ b/include/asm-m68k/dma-mapping.h | |||
@@ -21,7 +21,7 @@ static inline int dma_get_cache_alignment(void) | |||
21 | return 1 << L1_CACHE_SHIFT; | 21 | return 1 << L1_CACHE_SHIFT; |
22 | } | 22 | } |
23 | 23 | ||
24 | static inline int dma_is_consistent(dma_addr_t dma_addr) | 24 | static inline int dma_is_consistent(struct device *dev, dma_addr_t dma_addr) |
25 | { | 25 | { |
26 | return 0; | 26 | return 0; |
27 | } | 27 | } |
diff --git a/include/asm-mips/dma-mapping.h b/include/asm-mips/dma-mapping.h index 43288634c38a..e17f70d7b702 100644 --- a/include/asm-mips/dma-mapping.h +++ b/include/asm-mips/dma-mapping.h | |||
@@ -63,7 +63,7 @@ dma_get_cache_alignment(void) | |||
63 | return 128; | 63 | return 128; |
64 | } | 64 | } |
65 | 65 | ||
66 | extern int dma_is_consistent(dma_addr_t dma_addr); | 66 | extern int dma_is_consistent(struct device *dev, dma_addr_t dma_addr); |
67 | 67 | ||
68 | extern void dma_cache_sync(void *vaddr, size_t size, | 68 | extern void dma_cache_sync(void *vaddr, size_t size, |
69 | enum dma_data_direction direction); | 69 | enum dma_data_direction direction); |
diff --git a/include/asm-parisc/dma-mapping.h b/include/asm-parisc/dma-mapping.h index 1e387e1dad30..c40d48afdc52 100644 --- a/include/asm-parisc/dma-mapping.h +++ b/include/asm-parisc/dma-mapping.h | |||
@@ -191,7 +191,7 @@ dma_get_cache_alignment(void) | |||
191 | } | 191 | } |
192 | 192 | ||
193 | static inline int | 193 | static inline int |
194 | dma_is_consistent(dma_addr_t dma_addr) | 194 | dma_is_consistent(struct device *dev, dma_addr_t dma_addr) |
195 | { | 195 | { |
196 | return (hppa_dma_ops->dma_sync_single_for_cpu == NULL); | 196 | return (hppa_dma_ops->dma_sync_single_for_cpu == NULL); |
197 | } | 197 | } |
diff --git a/include/asm-powerpc/dma-mapping.h b/include/asm-powerpc/dma-mapping.h index 7e38b5fddada..3cf635b53b88 100644 --- a/include/asm-powerpc/dma-mapping.h +++ b/include/asm-powerpc/dma-mapping.h | |||
@@ -342,9 +342,9 @@ static inline int dma_mapping_error(dma_addr_t dma_addr) | |||
342 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) | 342 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) |
343 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) | 343 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) |
344 | #ifdef CONFIG_NOT_COHERENT_CACHE | 344 | #ifdef CONFIG_NOT_COHERENT_CACHE |
345 | #define dma_is_consistent(d) (0) | 345 | #define dma_is_consistent(d, h) (0) |
346 | #else | 346 | #else |
347 | #define dma_is_consistent(d) (1) | 347 | #define dma_is_consistent(d, h) (1) |
348 | #endif | 348 | #endif |
349 | 349 | ||
350 | static inline int dma_get_cache_alignment(void) | 350 | static inline int dma_get_cache_alignment(void) |
diff --git a/include/asm-sparc64/dma-mapping.h b/include/asm-sparc64/dma-mapping.h index 27c46fbeebd6..5fe0072f3f82 100644 --- a/include/asm-sparc64/dma-mapping.h +++ b/include/asm-sparc64/dma-mapping.h | |||
@@ -181,7 +181,7 @@ dma_sync_single_for_device(struct device *dev, dma_addr_t dma_handle, size_t siz | |||
181 | 181 | ||
182 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) | 182 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) |
183 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) | 183 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) |
184 | #define dma_is_consistent(d) (1) | 184 | #define dma_is_consistent(d, h) (1) |
185 | 185 | ||
186 | static inline int | 186 | static inline int |
187 | dma_get_cache_alignment(void) | 187 | dma_get_cache_alignment(void) |
diff --git a/include/asm-um/dma-mapping.h b/include/asm-um/dma-mapping.h index babd29895114..defb5b8307de 100644 --- a/include/asm-um/dma-mapping.h +++ b/include/asm-um/dma-mapping.h | |||
@@ -94,7 +94,7 @@ dma_sync_sg(struct device *dev, struct scatterlist *sg, int nelems, | |||
94 | 94 | ||
95 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) | 95 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) |
96 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) | 96 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) |
97 | #define dma_is_consistent(d) (1) | 97 | #define dma_is_consistent(d, h) (1) |
98 | 98 | ||
99 | static inline int | 99 | static inline int |
100 | dma_get_cache_alignment(void) | 100 | dma_get_cache_alignment(void) |
diff --git a/include/asm-x86_64/dma-mapping.h b/include/asm-x86_64/dma-mapping.h index 10174b110a5c..c8cc4887fba6 100644 --- a/include/asm-x86_64/dma-mapping.h +++ b/include/asm-x86_64/dma-mapping.h | |||
@@ -180,7 +180,7 @@ static inline int dma_get_cache_alignment(void) | |||
180 | return boot_cpu_data.x86_clflush_size; | 180 | return boot_cpu_data.x86_clflush_size; |
181 | } | 181 | } |
182 | 182 | ||
183 | #define dma_is_consistent(h) 1 | 183 | #define dma_is_consistent(d, h) 1 |
184 | 184 | ||
185 | extern int dma_set_mask(struct device *dev, u64 mask); | 185 | extern int dma_set_mask(struct device *dev, u64 mask); |
186 | 186 | ||
diff --git a/include/asm-xtensa/dma-mapping.h b/include/asm-xtensa/dma-mapping.h index c39c91dfcc69..827d1dfd9e1d 100644 --- a/include/asm-xtensa/dma-mapping.h +++ b/include/asm-xtensa/dma-mapping.h | |||
@@ -170,7 +170,7 @@ dma_get_cache_alignment(void) | |||
170 | return L1_CACHE_BYTES; | 170 | return L1_CACHE_BYTES; |
171 | } | 171 | } |
172 | 172 | ||
173 | #define dma_is_consistent(d) (1) | 173 | #define dma_is_consistent(d, h) (1) |
174 | 174 | ||
175 | static inline void | 175 | static inline void |
176 | dma_cache_sync(void *vaddr, size_t size, | 176 | dma_cache_sync(void *vaddr, size_t size, |