diff options
Diffstat (limited to 'arch/arm/include/asm/cacheflush.h')
-rw-r--r-- | arch/arm/include/asm/cacheflush.h | 23 |
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 | * |