| /Linux-v5.10/arch/mips/mm/ |
| D | c-octeon.c | 186 c->dcache.linesz = 128; in probe_octeon() 188 c->dcache.sets = 2; /* CN5XXX has two Dcache sets */ in probe_octeon() 190 c->dcache.sets = 1; /* CN3XXX has one Dcache set */ in probe_octeon() 191 c->dcache.ways = 64; in probe_octeon() 193 c->dcache.sets * c->dcache.ways * c->dcache.linesz; in probe_octeon() 194 c->dcache.waybit = ffs(dcache_size / c->dcache.ways) - 1; in probe_octeon() 205 c->dcache.linesz = 128; in probe_octeon() 206 c->dcache.ways = 32; in probe_octeon() 207 c->dcache.sets = 8; in probe_octeon() 208 dcache_size = c->dcache.sets * c->dcache.ways * c->dcache.linesz; in probe_octeon() [all …]
|
| D | c-r4k.c | 1125 c->dcache.linesz = 16 << ((config & CONF_DB) >> 4); in probe_pcache() 1126 c->dcache.ways = 2; in probe_pcache() 1127 c->dcache.waybit= __ffs(dcache_size/2); in probe_pcache() 1139 c->dcache.linesz = 16 << ((config & CONF_DB) >> 4); in probe_pcache() 1140 c->dcache.ways = 2; in probe_pcache() 1141 c->dcache.waybit = 0; in probe_pcache() 1153 c->dcache.linesz = 16 << ((config & CONF_DB) >> 4); in probe_pcache() 1154 c->dcache.ways = 4; in probe_pcache() 1155 c->dcache.waybit = 0; in probe_pcache() 1173 c->dcache.linesz = 16 << ((config & CONF_DB) >> 4); in probe_pcache() [all …]
|
| D | c-tx39.c | 303 current_cpu_data.dcache.ways = 1; in tx39_probe_cache() 304 current_cpu_data.dcache.linesz = 4; in tx39_probe_cache() 309 current_cpu_data.dcache.ways = 2; in tx39_probe_cache() 310 current_cpu_data.dcache.linesz = 16; in tx39_probe_cache() 316 current_cpu_data.dcache.ways = 1; in tx39_probe_cache() 317 current_cpu_data.dcache.linesz = 16; in tx39_probe_cache() 383 (dcache_size / current_cpu_data.dcache.ways) - 1, in tx39_cache_init() 393 current_cpu_data.dcache.waysize = dcache_size / current_cpu_data.dcache.ways; in tx39_cache_init() 397 current_cpu_data.dcache.sets = in tx39_cache_init() 398 current_cpu_data.dcache.waysize / current_cpu_data.dcache.linesz; in tx39_cache_init() [all …]
|
| /Linux-v5.10/arch/sh/kernel/cpu/sh2/ |
| D | probe.c | 34 boot_cpu_data.dcache.ways = 4; in cpu_probe() 35 boot_cpu_data.dcache.way_incr = (1<<12); in cpu_probe() 36 boot_cpu_data.dcache.sets = 256; in cpu_probe() 37 boot_cpu_data.dcache.entry_shift = 4; in cpu_probe() 38 boot_cpu_data.dcache.linesz = L1_CACHE_BYTES; in cpu_probe() 39 boot_cpu_data.dcache.flags = 0; in cpu_probe() 56 boot_cpu_data.dcache.ways = 1; in cpu_probe() 57 boot_cpu_data.dcache.sets = 256; in cpu_probe() 58 boot_cpu_data.dcache.entry_shift = 5; in cpu_probe() 59 boot_cpu_data.dcache.linesz = 32; in cpu_probe() [all …]
|
| /Linux-v5.10/arch/sh/kernel/cpu/sh3/ |
| D | probe.c | 50 boot_cpu_data.dcache.ways = 4; in cpu_probe() 51 boot_cpu_data.dcache.entry_shift = 4; in cpu_probe() 52 boot_cpu_data.dcache.linesz = L1_CACHE_BYTES; in cpu_probe() 53 boot_cpu_data.dcache.flags = 0; in cpu_probe() 60 boot_cpu_data.dcache.way_incr = (1 << 11); in cpu_probe() 61 boot_cpu_data.dcache.entry_mask = 0x7f0; in cpu_probe() 62 boot_cpu_data.dcache.sets = 128; in cpu_probe() 67 boot_cpu_data.dcache.way_incr = (1 << 12); in cpu_probe() 68 boot_cpu_data.dcache.entry_mask = 0xff0; in cpu_probe() 69 boot_cpu_data.dcache.sets = 256; in cpu_probe() [all …]
|
| /Linux-v5.10/arch/sh/kernel/cpu/ |
| D | init.c | 128 waysize = current_cpu_data.dcache.sets; in cache_init() 139 waysize <<= current_cpu_data.dcache.entry_shift; in cache_init() 147 ways = current_cpu_data.dcache.ways; in cache_init() 155 addr += current_cpu_data.dcache.linesz) in cache_init() 158 addrstart += current_cpu_data.dcache.way_incr; in cache_init() 170 if (current_cpu_data.dcache.ways > 1) in cache_init() 204 l1d_cache_shape = CACHE_DESC_SHAPE(current_cpu_data.dcache); in detect_cache_shape() 206 if (current_cpu_data.dcache.flags & SH_CACHE_COMBINED) in detect_cache_shape() 313 current_cpu_data.dcache.entry_mask = current_cpu_data.dcache.way_incr - in cpu_init() 314 current_cpu_data.dcache.linesz; in cpu_init() [all …]
|
| /Linux-v5.10/arch/sh/mm/ |
| D | cache-sh7705.c | 34 ways = current_cpu_data.dcache.ways; in cache_wback_all() 35 waysize = current_cpu_data.dcache.sets; in cache_wback_all() 36 waysize <<= current_cpu_data.dcache.entry_shift; in cache_wback_all() 45 addr += current_cpu_data.dcache.linesz) { in cache_wback_all() 56 addrstart += current_cpu_data.dcache.way_incr; in cache_wback_all() 102 ways = current_cpu_data.dcache.ways; in __flush_dcache_page() 103 waysize = current_cpu_data.dcache.sets; in __flush_dcache_page() 104 waysize <<= current_cpu_data.dcache.entry_shift; in __flush_dcache_page() 113 addr += current_cpu_data.dcache.linesz) { in __flush_dcache_page() 123 addrstart += current_cpu_data.dcache.way_incr; in __flush_dcache_page()
|
| D | cache.c | 64 if (boot_cpu_data.dcache.n_aliases && page_mapcount(page) && in copy_to_user_page() 71 if (boot_cpu_data.dcache.n_aliases) in copy_to_user_page() 83 if (boot_cpu_data.dcache.n_aliases && page_mapcount(page) && in copy_from_user_page() 90 if (boot_cpu_data.dcache.n_aliases) in copy_from_user_page() 102 if (boot_cpu_data.dcache.n_aliases && page_mapcount(from) && in copy_user_highpage() 142 if (!boot_cpu_data.dcache.n_aliases) in __update_cache() 158 if (boot_cpu_data.dcache.n_aliases && page_mapcount(page) && in __flush_anon_page() 179 if (boot_cpu_data.dcache.n_aliases == 0) in flush_cache_mm() 187 if (boot_cpu_data.dcache.n_aliases == 0) in flush_cache_dup_mm() 268 boot_cpu_data.dcache.ways, in emit_cache_params() [all …]
|
| D | cache-sh4.c | 153 (current_cpu_data.dcache.sets << in flush_dcache_all() 154 current_cpu_data.dcache.entry_shift) * in flush_dcache_all() 155 current_cpu_data.dcache.ways; in flush_dcache_all() 157 entry_offset = 1 << current_cpu_data.dcache.entry_shift; in flush_dcache_all() 237 map_coherent = (current_cpu_data.dcache.n_aliases && in sh4_flush_cache_page() 288 if (boot_cpu_data.dcache.n_aliases == 0) in sh4_flush_cache_range() 316 struct cache_info *dcache; in __flush_cache_one() local 321 dcache = &boot_cpu_data.dcache; in __flush_cache_one() 323 way_count = dcache->ways; in __flush_cache_one() 324 way_incr = dcache->way_incr; in __flush_cache_one()
|
| D | cache-sh3.c | 44 for (j = 0; j < current_cpu_data.dcache.ways; j++) { in sh3__flush_wback_region() 48 addr = addrstart | (v & current_cpu_data.dcache.entry_mask); in sh3__flush_wback_region() 60 addrstart += current_cpu_data.dcache.way_incr; in sh3__flush_wback_region() 85 (v & current_cpu_data.dcache.entry_mask) | SH_CACHE_ASSOC; in sh3__flush_purge_region()
|
| D | cache-shx3.c | 27 if (boot_cpu_data.dcache.n_aliases || boot_cpu_data.icache.n_aliases) { in shx3_cache_init() 31 boot_cpu_data.dcache.n_aliases = 0; in shx3_cache_init()
|
| D | cache-sh2a.c | 60 nr_ways = current_cpu_data.dcache.ways; in sh2a__flush_wback_region() 68 end = begin + (nr_ways * current_cpu_data.dcache.way_size); in sh2a__flush_wback_region() 107 int nr_ways = current_cpu_data.dcache.ways; in sh2a__flush_purge_region()
|
| /Linux-v5.10/arch/sh/kernel/cpu/sh4/ |
| D | probe.c | 44 boot_cpu_data.dcache.way_incr = (1 << 14); in cpu_probe() 45 boot_cpu_data.dcache.entry_shift = 5; in cpu_probe() 46 boot_cpu_data.dcache.sets = 512; in cpu_probe() 47 boot_cpu_data.dcache.ways = 1; in cpu_probe() 48 boot_cpu_data.dcache.linesz = L1_CACHE_BYTES; in cpu_probe() 68 boot_cpu_data.dcache.ways = 4; in cpu_probe() 172 boot_cpu_data.dcache.ways = 2; in cpu_probe() 177 boot_cpu_data.dcache.ways = 2; in cpu_probe() 193 boot_cpu_data.dcache.ways = 2; in cpu_probe() 210 if (boot_cpu_data.dcache.ways > 1) { in cpu_probe() [all …]
|
| /Linux-v5.10/arch/sh/kernel/cpu/sh2a/ |
| D | probe.c | 43 boot_cpu_data.dcache.ways = 4; in cpu_probe() 44 boot_cpu_data.dcache.way_incr = (1 << 11); in cpu_probe() 45 boot_cpu_data.dcache.sets = 128; in cpu_probe() 46 boot_cpu_data.dcache.entry_shift = 4; in cpu_probe() 47 boot_cpu_data.dcache.linesz = L1_CACHE_BYTES; in cpu_probe() 48 boot_cpu_data.dcache.flags = 0; in cpu_probe() 56 boot_cpu_data.icache = boot_cpu_data.dcache; in cpu_probe()
|
| /Linux-v5.10/arch/mips/include/asm/ |
| D | r4kcache.h | 250 __BUILD_BLAST_CACHE(d, dcache, Index_Writeback_Inv_D, Hit_Writeback_Inv_D, 16, ) 253 __BUILD_BLAST_CACHE(d, dcache, Index_Writeback_Inv_D, Hit_Writeback_Inv_D, 32, ) 257 __BUILD_BLAST_CACHE(d, dcache, Index_Writeback_Inv_D, Hit_Writeback_Inv_D, 64, ) 260 __BUILD_BLAST_CACHE(d, dcache, Index_Writeback_Inv_D, Hit_Writeback_Inv_D, 128, ) 264 __BUILD_BLAST_CACHE(inv_d, dcache, Index_Writeback_Inv_D, Hit_Invalidate_D, 16, ) 265 __BUILD_BLAST_CACHE(inv_d, dcache, Index_Writeback_Inv_D, Hit_Invalidate_D, 32, ) 283 __BUILD_BLAST_USER_CACHE(d, dcache, Index_Writeback_Inv_D, Hit_Writeback_Inv_D, 286 __BUILD_BLAST_USER_CACHE(d, dcache, Index_Writeback_Inv_D, Hit_Writeback_Inv_D, 289 __BUILD_BLAST_USER_CACHE(d, dcache, Index_Writeback_Inv_D, Hit_Writeback_Inv_D, 312 __BUILD_BLAST_CACHE_RANGE(d, dcache, Hit_Writeback_Inv_D, protected_, ) [all …]
|
| /Linux-v5.10/Documentation/filesystems/nfs/ |
| D | exporting.rst | 34 The dcache normally contains a proper prefix of any given filesystem 35 tree. This means that if any filesystem object is in the dcache, then 36 all of the ancestors of that filesystem object are also in the dcache. 41 However when objects are included into the dcache by interpreting a 44 the dcache that are not needed for normal filesystem access. 46 1. The dcache must sometimes contain objects that are not part of the 48 2. The dcache must be prepared for a newly found (via ->lookup) directory 52 it is a dcache invariant that directories only have one dentry. 54 To implement these features, the dcache has: 62 kept in the dcache. If a dentry that is not already in the dcache [all …]
|
| /Linux-v5.10/arch/arm64/boot/dts/qcom/ |
| D | sdm660.dtsi | 52 L1_D_100: l1-dcache { 67 L1_D_101: l1-dcache { 82 L1_D_102: l1-dcache { 97 L1_D_103: l1-dcache { 116 L1_D_0: l1-dcache { 131 L1_D_1: l1-dcache { 146 L1_D_2: l1-dcache { 161 L1_D_3: l1-dcache {
|
| /Linux-v5.10/arch/mips/kernel/ |
| D | cacheinfo.c | 30 if (c->dcache.waysize) in __init_cache_level() 81 populate_cache(dcache, this_leaf, 1, CACHE_TYPE_DATA); in __populate_cache_leaves() 85 populate_cache(dcache, this_leaf, 1, CACHE_TYPE_UNIFIED); in __populate_cache_leaves()
|
| /Linux-v5.10/Documentation/devicetree/bindings/nios2/ |
| D | nios2.txt | 17 - dcache-line-size: Contains data cache line size. 19 - dcache-size: Contains data cache size. 46 dcache-line-size = <32>; 48 dcache-size = <32768>;
|
| /Linux-v5.10/arch/powerpc/perf/ |
| D | power8-pmu.c | 133 CACHE_EVENT_ATTR(L1-dcache-load-misses, PM_LD_MISS_L1); 134 CACHE_EVENT_ATTR(L1-dcache-loads, PM_LD_REF_L1); 136 CACHE_EVENT_ATTR(L1-dcache-prefetches, PM_L1_PREF); 137 CACHE_EVENT_ATTR(L1-dcache-store-misses, PM_ST_MISS_L1);
|
| D | power10-pmu.c | 117 CACHE_EVENT_ATTR(L1-dcache-load-misses, PM_LD_MISS_L1); 118 CACHE_EVENT_ATTR(L1-dcache-loads, PM_LD_REF_L1); 119 CACHE_EVENT_ATTR(L1-dcache-prefetches, PM_LD_PREFETCH_CACHE_LINE_MISS); 120 CACHE_EVENT_ATTR(L1-dcache-store-misses, PM_ST_MISS_L1);
|
| D | power9-pmu.c | 165 CACHE_EVENT_ATTR(L1-dcache-load-misses, PM_LD_MISS_L1_FIN); 166 CACHE_EVENT_ATTR(L1-dcache-loads, PM_LD_REF_L1); 167 CACHE_EVENT_ATTR(L1-dcache-prefetches, PM_L1_PREF); 168 CACHE_EVENT_ATTR(L1-dcache-store-misses, PM_ST_MISS_L1);
|
| /Linux-v5.10/arch/microblaze/boot/dts/ |
| D | system.dts | 54 xlnx,allow-dcache-wr = <0x1>; 62 xlnx,dcache-addr-tag = <0xf>; 63 xlnx,dcache-always-used = <0x1>; 64 xlnx,dcache-byte-size = <0x2000>; 65 xlnx,dcache-line-len = <0x4>; 66 xlnx,dcache-use-fsl = <0x1>; 104 xlnx,use-dcache = <0x1>;
|
| /Linux-v5.10/Documentation/filesystems/ |
| D | path-lookup.txt | 16 Prior to 2.5.10, dcache_lock was acquired in d_lookup (dcache hash lookup) and 22 Since 2.5.62 kernel, dcache has been using a new locking model that uses RCU to 23 make dcache look-up lock-free. 35 (including dcache look-up) completely "store-free" (so, no locks, atomics, or 69 - perform dcache hash name lookups on (parent, name element) tuples; 74 Safe store-free look-up of dcache hash table 79 In order to lookup a dcache (parent, name) tuple, we take a hash on the tuple 80 and use that to select a bucket in the dcache-hash table. The list of entries 88 Parent and name members of a dentry, as well as its membership in the dcache 177 In refcount based dcache lookups, d_lock is used to serialise access to [all …]
|
| D | api-summary.rst | 20 .. kernel-doc:: fs/dcache.c 23 .. kernel-doc:: include/linux/dcache.h
|