Lines Matching +full:no +full:- +full:1 +full:- +full:8 +full:- +full:v
1 // SPDX-License-Identifier: GPL-2.0
9 * Write back the dirty D-caches, but not invalidate them.
16 reg_size_t aligned_start, v, cnt, end; in sh4__flush_wback_region() local
19 v = aligned_start & ~(L1_CACHE_BYTES-1); in sh4__flush_wback_region()
20 end = (aligned_start + size + L1_CACHE_BYTES-1) in sh4__flush_wback_region()
21 & ~(L1_CACHE_BYTES-1); in sh4__flush_wback_region()
22 cnt = (end - v) / L1_CACHE_BYTES; in sh4__flush_wback_region()
24 while (cnt >= 8) { in sh4__flush_wback_region()
25 __ocbwb(v); v += L1_CACHE_BYTES; in sh4__flush_wback_region()
26 __ocbwb(v); v += L1_CACHE_BYTES; in sh4__flush_wback_region()
27 __ocbwb(v); v += L1_CACHE_BYTES; in sh4__flush_wback_region()
28 __ocbwb(v); v += L1_CACHE_BYTES; in sh4__flush_wback_region()
29 __ocbwb(v); v += L1_CACHE_BYTES; in sh4__flush_wback_region()
30 __ocbwb(v); v += L1_CACHE_BYTES; in sh4__flush_wback_region()
31 __ocbwb(v); v += L1_CACHE_BYTES; in sh4__flush_wback_region()
32 __ocbwb(v); v += L1_CACHE_BYTES; in sh4__flush_wback_region()
33 cnt -= 8; in sh4__flush_wback_region()
37 __ocbwb(v); v += L1_CACHE_BYTES; in sh4__flush_wback_region()
38 cnt--; in sh4__flush_wback_region()
43 * Write back the dirty D-caches and invalidate them.
50 reg_size_t aligned_start, v, cnt, end; in sh4__flush_purge_region() local
53 v = aligned_start & ~(L1_CACHE_BYTES-1); in sh4__flush_purge_region()
54 end = (aligned_start + size + L1_CACHE_BYTES-1) in sh4__flush_purge_region()
55 & ~(L1_CACHE_BYTES-1); in sh4__flush_purge_region()
56 cnt = (end - v) / L1_CACHE_BYTES; in sh4__flush_purge_region()
58 while (cnt >= 8) { in sh4__flush_purge_region()
59 __ocbp(v); v += L1_CACHE_BYTES; in sh4__flush_purge_region()
60 __ocbp(v); v += L1_CACHE_BYTES; in sh4__flush_purge_region()
61 __ocbp(v); v += L1_CACHE_BYTES; in sh4__flush_purge_region()
62 __ocbp(v); v += L1_CACHE_BYTES; in sh4__flush_purge_region()
63 __ocbp(v); v += L1_CACHE_BYTES; in sh4__flush_purge_region()
64 __ocbp(v); v += L1_CACHE_BYTES; in sh4__flush_purge_region()
65 __ocbp(v); v += L1_CACHE_BYTES; in sh4__flush_purge_region()
66 __ocbp(v); v += L1_CACHE_BYTES; in sh4__flush_purge_region()
67 cnt -= 8; in sh4__flush_purge_region()
70 __ocbp(v); v += L1_CACHE_BYTES; in sh4__flush_purge_region()
71 cnt--; in sh4__flush_purge_region()
76 * No write back please
80 reg_size_t aligned_start, v, cnt, end; in sh4__flush_invalidate_region() local
83 v = aligned_start & ~(L1_CACHE_BYTES-1); in sh4__flush_invalidate_region()
84 end = (aligned_start + size + L1_CACHE_BYTES-1) in sh4__flush_invalidate_region()
85 & ~(L1_CACHE_BYTES-1); in sh4__flush_invalidate_region()
86 cnt = (end - v) / L1_CACHE_BYTES; in sh4__flush_invalidate_region()
88 while (cnt >= 8) { in sh4__flush_invalidate_region()
89 __ocbi(v); v += L1_CACHE_BYTES; in sh4__flush_invalidate_region()
90 __ocbi(v); v += L1_CACHE_BYTES; in sh4__flush_invalidate_region()
91 __ocbi(v); v += L1_CACHE_BYTES; in sh4__flush_invalidate_region()
92 __ocbi(v); v += L1_CACHE_BYTES; in sh4__flush_invalidate_region()
93 __ocbi(v); v += L1_CACHE_BYTES; in sh4__flush_invalidate_region()
94 __ocbi(v); v += L1_CACHE_BYTES; in sh4__flush_invalidate_region()
95 __ocbi(v); v += L1_CACHE_BYTES; in sh4__flush_invalidate_region()
96 __ocbi(v); v += L1_CACHE_BYTES; in sh4__flush_invalidate_region()
97 cnt -= 8; in sh4__flush_invalidate_region()
101 __ocbi(v); v += L1_CACHE_BYTES; in sh4__flush_invalidate_region()
102 cnt--; in sh4__flush_invalidate_region()