aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/cacheflush.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/include/asm/cacheflush.h')
-rw-r--r--arch/arm/include/asm/cacheflush.h23
1 files changed, 19 insertions, 4 deletions
diff --git a/arch/arm/include/asm/cacheflush.h b/arch/arm/include/asm/cacheflush.h
index 730aefcfbee..8113bb5fb66 100644
--- a/arch/arm/include/asm/cacheflush.h
+++ b/arch/arm/include/asm/cacheflush.h
@@ -42,7 +42,8 @@
42#endif 42#endif
43 43
44#if defined(CONFIG_CPU_ARM920T) || defined(CONFIG_CPU_ARM922T) || \ 44#if defined(CONFIG_CPU_ARM920T) || defined(CONFIG_CPU_ARM922T) || \
45 defined(CONFIG_CPU_ARM925T) || defined(CONFIG_CPU_ARM1020) 45 defined(CONFIG_CPU_ARM925T) || defined(CONFIG_CPU_ARM1020) || \
46 defined(CONFIG_CPU_ARM1026)
46# define MULTI_CACHE 1 47# define MULTI_CACHE 1
47#endif 48#endif
48 49
@@ -154,16 +155,16 @@
154 * Please note that the implementation of these, and the required 155 * Please note that the implementation of these, and the required
155 * effects are cache-type (VIVT/VIPT/PIPT) specific. 156 * effects are cache-type (VIVT/VIPT/PIPT) specific.
156 * 157 *
157 * flush_cache_kern_all() 158 * flush_kern_all()
158 * 159 *
159 * Unconditionally clean and invalidate the entire cache. 160 * Unconditionally clean and invalidate the entire cache.
160 * 161 *
161 * flush_cache_user_mm(mm) 162 * flush_user_all()
162 * 163 *
163 * Clean and invalidate all user space cache entries 164 * Clean and invalidate all user space cache entries
164 * before a change of page tables. 165 * before a change of page tables.
165 * 166 *
166 * flush_cache_user_range(start, end, flags) 167 * flush_user_range(start, end, flags)
167 * 168 *
168 * Clean and invalidate a range of cache entries in the 169 * Clean and invalidate a range of cache entries in the
169 * specified address space before a change of page tables. 170 * specified address space before a change of page tables.
@@ -179,6 +180,20 @@
179 * - start - virtual start address 180 * - start - virtual start address
180 * - end - virtual end address 181 * - end - virtual end address
181 * 182 *
183 * coherent_user_range(start, end)
184 *
185 * Ensure coherency between the Icache and the Dcache in the
186 * region described by start, end. If you have non-snooping
187 * Harvard caches, you need to implement this function.
188 * - start - virtual start address
189 * - end - virtual end address
190 *
191 * flush_kern_dcache_area(kaddr, size)
192 *
193 * Ensure that the data held in page is written back.
194 * - kaddr - page address
195 * - size - region size
196 *
182 * DMA Cache Coherency 197 * DMA Cache Coherency
183 * =================== 198 * ===================
184 * 199 *