Lines Matching refs:cdesc
48 struct cache_desc *cdesc = current_cpu_data.cache_leaves + leaf;
50 nr_nodes = cache_private(cdesc) ? 1 : loongson_sysconf.nr_nodes;
53 for (i = 0; i < cdesc->sets; i++) {
54 for (j = 0; j < cdesc->ways; j++) {
59 addr -= cdesc->ways;
60 addr += cdesc->linesz;
69 struct cache_desc *cdesc = current_cpu_data.cache_leaves;
73 if (cache_inclusive(cdesc + leaf)) {
94 #define populate_cache_properties(cfg0, cdesc, level, leaf) \
100 cdesc->flags |= CACHE_PRIVATE; \
103 cdesc->flags |= CACHE_PRIVATE; \
105 cdesc->flags |= CACHE_INCLUSIVE; \
107 cdesc->level = level; \
108 cdesc->flags |= CACHE_PRESENT; \
109 cdesc->ways = ((cfg1 & CPUCFG_CACHE_WAYS_M) >> CPUCFG_CACHE_WAYS) + 1; \
110 cdesc->sets = 1 << ((cfg1 & CPUCFG_CACHE_SETS_M) >> CPUCFG_CACHE_SETS); \
111 cdesc->linesz = 1 << ((cfg1 & CPUCFG_CACHE_LSIZE_M) >> CPUCFG_CACHE_LSIZE); \
112 cdesc++; leaf++; \
119 struct cache_desc *cdesc = current_cpu_data.cache_leaves;
123 cdesc->type = CACHE_TYPE_UNIFIED;
125 cdesc->type = CACHE_TYPE_INST;
126 populate_cache_properties(config, cdesc, level, leaf);
130 cdesc->type = CACHE_TYPE_DATA;
131 populate_cache_properties(config, cdesc, level, leaf);
141 cdesc->type = CACHE_TYPE_UNIFIED;
143 cdesc->type = CACHE_TYPE_INST;
144 populate_cache_properties(config, cdesc, level, leaf);
148 cdesc->type = CACHE_TYPE_DATA;
149 populate_cache_properties(config, cdesc, level, leaf);