Lines Matching +full:d +full:- +full:cache +full:- +full:size
1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Cache maintenance
15 #include <asm/asm-uaccess.h>
20 * Ensure that the I and D caches are coherent within specified region.
24 * - start - virtual start address of region
25 * - end - virtual end address of region
33 * Ensure that the I and D caches are coherent within specified region.
37 * - start - virtual start address of region
38 * - end - virtual end address of region
67 mov x0, #-EFAULT
75 * Ensure that the I cache is invalid within specified region.
77 * - start - virtual start address of region
78 * - end - virtual end address of region
95 mov x0, #-EFAULT
100 * __flush_dcache_area(kaddr, size)
102 * Ensure that any D-cache lines for the interval [kaddr, kaddr+size)
105 * - kaddr - kernel address
106 * - size - size in question
114 * __clean_dcache_area_pou(kaddr, size)
116 * Ensure that any D-cache lines for the interval [kaddr, kaddr+size)
119 * - kaddr - kernel address
120 * - size - size in question
132 * __inval_dcache_area(kaddr, size)
134 * Ensure that any D-cache lines for the interval [kaddr, kaddr+size)
138 * - kaddr - kernel address
139 * - size - size in question
146 * __dma_inv_area(start, size)
147 * - start - virtual start address of region
148 * - size - size in question
153 tst x1, x3 // end cache line aligned?
156 dc civac, x1 // clean & invalidate D / U line
157 1: tst x0, x3 // start cache line aligned?
160 dc civac, x0 // clean & invalidate D / U line
162 2: dc ivac, x0 // invalidate D / U line
172 * __clean_dcache_area_poc(kaddr, size)
174 * Ensure that any D-cache lines for the interval [kaddr, kaddr+size)
177 * - kaddr - kernel address
178 * - size - size in question
185 * __dma_clean_area(start, size)
186 * - start - virtual start address of region
187 * - size - size in question
195 * __clean_dcache_area_pop(kaddr, size)
197 * Ensure that any D-cache lines for the interval [kaddr, kaddr+size)
200 * - kaddr - kernel address
201 * - size - size in question
212 * __dma_flush_area(start, size)
214 * clean & invalidate D / U line
216 * - start - virtual start address of region
217 * - size - size in question
225 * __dma_map_area(start, size, dir)
226 * - start - kernel virtual start address
227 * - size - size of region
228 * - dir - DMA direction
237 * __dma_unmap_area(start, size, dir)
238 * - start - kernel virtual start address
239 * - size - size of region
240 * - dir - DMA direction