Lines Matching refs:end
34 * end addresses to successive cp15 registers, and process every
36 * [start:end].
73 static inline void l2_clean_pa_range(unsigned long start, unsigned long end)
78 * Make sure 'start' and 'end' reference the same page, as
82 BUG_ON((start ^ end) >> PAGE_SHIFT);
85 va_end = va_start + (end - start);
104 static inline void l2_inv_pa_range(unsigned long start, unsigned long end)
109 * Make sure 'start' and 'end' reference the same page, as
113 BUG_ON((start ^ end) >> PAGE_SHIFT);
116 va_end = va_start + (end - start);
133 * Note that the end addresses passed to Linux primitives are
135 * inclusive start and end addresses.
142 static unsigned long calc_range_end(unsigned long start, unsigned long end)
147 BUG_ON(end & (CACHE_LINE_SIZE - 1));
150 * Try to process all cache lines between 'start' and 'end'.
152 range_end = end;
171 static void feroceon_l2_inv_range(unsigned long start, unsigned long end)
184 if (start < end && end & (CACHE_LINE_SIZE - 1)) {
185 l2_clean_inv_pa(end & ~(CACHE_LINE_SIZE - 1));
186 end &= ~(CACHE_LINE_SIZE - 1);
190 * Invalidate all full cache lines between 'start' and 'end'.
192 while (start < end) {
193 unsigned long range_end = calc_range_end(start, end);
201 static void feroceon_l2_clean_range(unsigned long start, unsigned long end)
209 end = (end + CACHE_LINE_SIZE - 1) & ~(CACHE_LINE_SIZE - 1);
210 while (start != end) {
211 unsigned long range_end = calc_range_end(start, end);
220 static void feroceon_l2_flush_range(unsigned long start, unsigned long end)
223 end = (end + CACHE_LINE_SIZE - 1) & ~(CACHE_LINE_SIZE - 1);
224 while (start != end) {
225 unsigned long range_end = calc_range_end(start, end);