Lines Matching +full:entry +full:- +full:address
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * linux/arch/arm/mm/proc-mohawk.S: MMU functions for Marvell PJ1 core
7 * Heavily based on proc-arm926.S and proc-xsc3.S
15 #include <asm/pgtable-hwdef.h>
18 #include "proc-macros.S"
34 ENTRY(cpu_mohawk_proc_init)
40 ENTRY(cpu_mohawk_proc_fin)
60 ENTRY(cpu_mohawk_reset)
79 ENTRY(cpu_mohawk_do_idle)
90 ENTRY(mohawk_flush_icache_all)
100 * address space.
102 ENTRY(mohawk_flush_user_cache_all)
110 ENTRY(mohawk_flush_kern_cache_all)
124 * specified address range.
126 * - start - start address (inclusive)
127 * - end - end address (exclusive)
128 * - flags - vm_flags describing address space
132 ENTRY(mohawk_flush_user_cache_range)
138 mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D entry
139 mcrne p15, 0, r0, c7, c5, 1 @ invalidate I entry
141 mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D entry
142 mcrne p15, 0, r0, c7, c5, 1 @ invalidate I entry
154 * region described by start, end. If you have non-snooping
157 * - start - virtual start address
158 * - end - virtual end address
160 ENTRY(mohawk_coherent_kern_range)
167 * region described by start, end. If you have non-snooping
170 * - start - virtual start address
171 * - end - virtual end address
175 ENTRY(mohawk_coherent_user_range)
176 bic r0, r0, #CACHE_DLINESIZE - 1
177 1: mcr p15, 0, r0, c7, c10, 1 @ clean D entry
178 mcr p15, 0, r0, c7, c5, 1 @ invalidate I entry
192 * - addr - kernel address
193 * - size - region size
195 ENTRY(mohawk_flush_kern_dcache_area)
197 1: mcr p15, 0, r0, c7, c14, 1 @ clean+invalidate D entry
209 * Invalidate (discard) the specified virtual address range.
214 * - start - virtual start address
215 * - end - virtual end address
220 tst r0, #CACHE_DLINESIZE - 1
221 mcrne p15, 0, r0, c7, c10, 1 @ clean D entry
222 tst r1, #CACHE_DLINESIZE - 1
223 mcrne p15, 0, r1, c7, c10, 1 @ clean D entry
224 bic r0, r0, #CACHE_DLINESIZE - 1
225 1: mcr p15, 0, r0, c7, c6, 1 @ invalidate D entry
235 * Clean the specified virtual address range.
237 * - start - virtual start address
238 * - end - virtual end address
243 bic r0, r0, #CACHE_DLINESIZE - 1
244 1: mcr p15, 0, r0, c7, c10, 1 @ clean D entry
254 * Clean and invalidate the specified virtual address range.
256 * - start - virtual start address
257 * - end - virtual end address
259 ENTRY(mohawk_dma_flush_range)
260 bic r0, r0, #CACHE_DLINESIZE - 1
262 mcr p15, 0, r0, c7, c14, 1 @ clean+invalidate D entry
271 * - start - kernel virtual start address
272 * - size - size of region
273 * - dir - DMA direction
275 ENTRY(mohawk_dma_map_area)
285 * - start - kernel virtual start address
286 * - size - size of region
287 * - dir - DMA direction
289 ENTRY(mohawk_dma_unmap_area)
296 @ define struct cpu_cache_fns (see <asm/cacheflush.h> and proc-macros.S)
299 ENTRY(cpu_mohawk_dcache_clean_area)
300 1: mcr p15, 0, r0, c7, c10, 1 @ clean D entry
315 ENTRY(cpu_mohawk_switch_mm)
331 ENTRY(cpu_mohawk_set_pte_ext)
335 mcr p15, 0, r0, c7, c10, 1 @ clean D entry
343 ENTRY(cpu_mohawk_do_suspend)
344 stmfd sp!, {r4 - r9, lr}
352 stmia r0, {r4 - r9} @ store cp regs
353 ldmia sp!, {r4 - r9, pc}
356 ENTRY(cpu_mohawk_do_resume)
357 ldmia r0, {r4 - r9} @ load cp regs
394 .size __mohawk_setup, . - __mohawk_setup
408 @ define struct processor (see <asm/proc-fns.h> and proc-macros.S)
444 .size __88sv331x_proc_info, . - __88sv331x_proc_info