Home
last modified time | relevance | path

Searched full:way (Results 1 – 25 of 7602) sorted by relevance

12345678910>>...305

/kernel/linux/linux-4.19/arch/nios2/mm/
Dtlb.c55 unsigned int way; in flush_tlb_one_pid() local
60 /* remember pid/way until we return. */ in flush_tlb_one_pid()
65 for (way = 0; way < cpuinfo.tlb_num_ways; way++) { in flush_tlb_one_pid()
70 tlbmisc = pid_misc | TLBMISC_RD | (way << TLBMISC_WAY_SHIFT); in flush_tlb_one_pid()
78 ((PAGE_SIZE * cpuinfo.tlb_num_lines) * way) + in flush_tlb_one_pid()
80 pr_debug("Flush entry by writing %#lx way=%dl pid=%ld\n", in flush_tlb_one_pid()
81 vaddr, way, (pid_misc >> TLBMISC_PID_SHIFT)); in flush_tlb_one_pid()
85 (way << TLBMISC_WAY_SHIFT); in flush_tlb_one_pid()
119 unsigned int way; in flush_tlb_one() local
124 /* remember pid/way until we return. */ in flush_tlb_one()
[all …]
/kernel/linux/linux-5.10/arch/nios2/mm/
Dtlb.c47 unsigned int way; in replace_tlb_one_pid() local
50 /* remember pid/way until we return. */ in replace_tlb_one_pid()
55 for (way = 0; way < cpuinfo.tlb_num_ways; way++) { in replace_tlb_one_pid()
60 tlbmisc = TLBMISC_RD | (way << TLBMISC_WAY_SHIFT); in replace_tlb_one_pid()
73 (way << TLBMISC_WAY_SHIFT); in replace_tlb_one_pid()
126 unsigned int way; in flush_tlb_one() local
131 /* remember pid/way until we return. */ in flush_tlb_one()
136 for (way = 0; way < cpuinfo.tlb_num_ways; way++) { in flush_tlb_one()
140 tlbmisc = TLBMISC_RD | (way << TLBMISC_WAY_SHIFT); in flush_tlb_one()
147 pr_debug("Flush entry by writing way=%dl pid=%ld\n", in flush_tlb_one()
[all …]
/kernel/linux/linux-4.19/arch/x86/kernel/cpu/
Dcacheinfo.c44 { 0x06, LVL_1_INST, 8 }, /* 4-way set assoc, 32 byte line size */
45 { 0x08, LVL_1_INST, 16 }, /* 4-way set assoc, 32 byte line size */
46 { 0x09, LVL_1_INST, 32 }, /* 4-way set assoc, 64 byte line size */
47 { 0x0a, LVL_1_DATA, 8 }, /* 2 way set assoc, 32 byte line size */
48 { 0x0c, LVL_1_DATA, 16 }, /* 4-way set assoc, 32 byte line size */
49 { 0x0d, LVL_1_DATA, 16 }, /* 4-way set assoc, 64 byte line size */
50 { 0x0e, LVL_1_DATA, 24 }, /* 6-way set assoc, 64 byte line size */
51 { 0x21, LVL_2, 256 }, /* 8-way set assoc, 64 byte line size */
52 { 0x22, LVL_3, 512 }, /* 4-way set assoc, sectored cache, 64 byte line size */
53 { 0x23, LVL_3, MB(1) }, /* 8-way set assoc, sectored cache, 64 byte line size */
[all …]
Dintel.c36 * allow a way to override the automatic disabling of MPX.
781 * One has 256kb of cache, the other 512. We have no way in intel_size_cache()
789 * Intel Quark SoC X1000 contains a 4-way set associative in intel_size_cache()
820 { 0x01, TLB_INST_4K, 32, " TLB_INST 4 KByte pages, 4-way set associative" },
822 { 0x03, TLB_DATA_4K, 64, " TLB_DATA 4 KByte pages, 4-way set associative" },
823 { 0x04, TLB_DATA_4M, 8, " TLB_DATA 4 MByte pages, 4-way set associative" },
824 { 0x05, TLB_DATA_4M, 32, " TLB_DATA 4 MByte pages, 4-way set associative" },
825 { 0x0b, TLB_INST_4M, 4, " TLB_INST 4 MByte pages, 4-way set associative" },
831 { 0x56, TLB_DATA0_4M, 16, " TLB_DATA0 4 MByte pages, 4-way set associative" },
832 { 0x57, TLB_DATA0_4K, 16, " TLB_DATA0 4 KByte pages, 4-way associative" },
[all …]
/kernel/linux/linux-5.10/arch/x86/kernel/cpu/
Dcacheinfo.c45 { 0x06, LVL_1_INST, 8 }, /* 4-way set assoc, 32 byte line size */
46 { 0x08, LVL_1_INST, 16 }, /* 4-way set assoc, 32 byte line size */
47 { 0x09, LVL_1_INST, 32 }, /* 4-way set assoc, 64 byte line size */
48 { 0x0a, LVL_1_DATA, 8 }, /* 2 way set assoc, 32 byte line size */
49 { 0x0c, LVL_1_DATA, 16 }, /* 4-way set assoc, 32 byte line size */
50 { 0x0d, LVL_1_DATA, 16 }, /* 4-way set assoc, 64 byte line size */
51 { 0x0e, LVL_1_DATA, 24 }, /* 6-way set assoc, 64 byte line size */
52 { 0x21, LVL_2, 256 }, /* 8-way set assoc, 64 byte line size */
53 { 0x22, LVL_3, 512 }, /* 4-way set assoc, sectored cache, 64 byte line size */
54 { 0x23, LVL_3, MB(1) }, /* 8-way set assoc, sectored cache, 64 byte line size */
[all …]
/kernel/linux/linux-4.19/arch/sh/mm/
Dcache-sh2a.c27 static void sh2a_flush_oc_line(unsigned long v, int way) in sh2a_flush_oc_line() argument
29 unsigned long addr = (v & 0x000007f0) | (way << 11); in sh2a_flush_oc_line()
77 int way; in sh2a__flush_wback_region() local
78 for (way = 0; way < nr_ways; way++) { in sh2a__flush_wback_region()
80 sh2a_flush_oc_line(v, way); in sh2a__flush_wback_region()
107 int way; in sh2a__flush_purge_region() local
109 for (way = 0; way < nr_ways; way++) in sh2a__flush_purge_region()
110 sh2a_flush_oc_line(v, way); in sh2a__flush_purge_region()
Dcache-sh2.c29 int way; in sh2__flush_wback_region() local
30 for (way = 0; way < 4; way++) { in sh2__flush_wback_region()
31 unsigned long data = __raw_readl(addr | (way << 12)); in sh2__flush_wback_region()
34 __raw_writel(data, addr | (way << 12)); in sh2__flush_wback_region()
Dcache-debugfs.c29 unsigned int waysize, way; in cache_seq_show() local
66 for (way = 0; way < cache->ways; way++) { in cache_seq_show()
71 seq_printf(file, "Way %d\n", way); in cache_seq_show()
/kernel/linux/linux-5.10/arch/sh/mm/
Dcache-sh2a.c26 static void sh2a_flush_oc_line(unsigned long v, int way) in sh2a_flush_oc_line() argument
28 unsigned long addr = (v & 0x000007f0) | (way << 11); in sh2a_flush_oc_line()
76 int way; in sh2a__flush_wback_region() local
77 for (way = 0; way < nr_ways; way++) { in sh2a__flush_wback_region()
79 sh2a_flush_oc_line(v, way); in sh2a__flush_wback_region()
106 int way; in sh2a__flush_purge_region() local
108 for (way = 0; way < nr_ways; way++) in sh2a__flush_purge_region()
109 sh2a_flush_oc_line(v, way); in sh2a__flush_purge_region()
Dcache-sh2.c28 int way; in sh2__flush_wback_region() local
29 for (way = 0; way < 4; way++) { in sh2__flush_wback_region()
30 unsigned long data = __raw_readl(addr | (way << 12)); in sh2__flush_wback_region()
33 __raw_writel(data, addr | (way << 12)); in sh2__flush_wback_region()
Dcache-debugfs.c29 unsigned int waysize, way; in cache_seq_show() local
66 for (way = 0; way < cache->ways; way++) { in cache_seq_show()
71 seq_printf(file, "Way %d\n", way); in cache_seq_show()
/kernel/linux/linux-4.19/arch/xtensa/include/asm/
Dtlbflush.h130 static inline void write_dtlb_entry (pte_t entry, int way) in write_dtlb_entry() argument
133 : : "r" (way), "r" (entry) ); in write_dtlb_entry()
136 static inline void write_itlb_entry (pte_t entry, int way) in write_itlb_entry() argument
139 : : "r" (way), "r" (entry) ); in write_itlb_entry()
179 static inline unsigned long read_dtlb_virtual (int way) in read_dtlb_virtual() argument
182 __asm__ __volatile__("rdtlb0 %0, %1\n\t" : "=a" (tmp), "+a" (way)); in read_dtlb_virtual()
186 static inline unsigned long read_dtlb_translation (int way) in read_dtlb_translation() argument
189 __asm__ __volatile__("rdtlb1 %0, %1\n\t" : "=a" (tmp), "+a" (way)); in read_dtlb_translation()
193 static inline unsigned long read_itlb_virtual (int way) in read_itlb_virtual() argument
196 __asm__ __volatile__("ritlb0 %0, %1\n\t" : "=a" (tmp), "+a" (way)); in read_itlb_virtual()
[all …]
/kernel/linux/linux-5.10/arch/xtensa/include/asm/
Dtlbflush.h130 static inline void write_dtlb_entry (pte_t entry, int way) in write_dtlb_entry() argument
133 : : "r" (way), "r" (entry) ); in write_dtlb_entry()
136 static inline void write_itlb_entry (pte_t entry, int way) in write_itlb_entry() argument
139 : : "r" (way), "r" (entry) ); in write_itlb_entry()
176 static inline unsigned long read_dtlb_virtual (int way) in read_dtlb_virtual() argument
179 __asm__ __volatile__("rdtlb0 %0, %1\n\t" : "=a" (tmp), "+a" (way)); in read_dtlb_virtual()
183 static inline unsigned long read_dtlb_translation (int way) in read_dtlb_translation() argument
186 __asm__ __volatile__("rdtlb1 %0, %1\n\t" : "=a" (tmp), "+a" (way)); in read_dtlb_translation()
190 static inline unsigned long read_itlb_virtual (int way) in read_itlb_virtual() argument
193 __asm__ __volatile__("ritlb0 %0, %1\n\t" : "=a" (tmp), "+a" (way)); in read_itlb_virtual()
[all …]
/kernel/linux/linux-5.10/arch/arm/mm/
Dcache-xsc3l2.c44 int set, way; in xsc3_l2_inv_all() local
49 for (way = 0; way < CACHE_WAY_PER_SET; way++) { in xsc3_l2_inv_all()
50 set_way = (way << 29) | (set << 5); in xsc3_l2_inv_all()
149 * optimize L2 flush all operation by set/way format
154 int set, way; in xsc3_l2_flush_all() local
159 for (way = 0; way < CACHE_WAY_PER_SET; way++) { in xsc3_l2_flush_all()
160 set_way = (way << 29) | (set << 5); in xsc3_l2_flush_all()
/kernel/linux/linux-4.19/arch/arm/mm/
Dcache-xsc3l2.c56 int set, way; in xsc3_l2_inv_all() local
61 for (way = 0; way < CACHE_WAY_PER_SET; way++) { in xsc3_l2_inv_all()
62 set_way = (way << 29) | (set << 5); in xsc3_l2_inv_all()
161 * optimize L2 flush all operation by set/way format
166 int set, way; in xsc3_l2_flush_all() local
171 for (way = 0; way < CACHE_WAY_PER_SET; way++) { in xsc3_l2_flush_all()
172 set_way = (way << 29) | (set << 5); in xsc3_l2_flush_all()
/kernel/linux/linux-4.19/arch/openrisc/include/asm/
Dspr_defs.h76 #define SPR_DTLBMR_BASE(WAY) (SPRGROUP_DMMU + 0x200 + (WAY) * 0x100) argument
77 #define SPR_DTLBMR_LAST(WAY) (SPRGROUP_DMMU + 0x27f + (WAY) * 0x100) argument
78 #define SPR_DTLBTR_BASE(WAY) (SPRGROUP_DMMU + 0x280 + (WAY) * 0x100) argument
79 #define SPR_DTLBTR_LAST(WAY) (SPRGROUP_DMMU + 0x2ff + (WAY) * 0x100) argument
84 #define SPR_ITLBMR_BASE(WAY) (SPRGROUP_IMMU + 0x200 + (WAY) * 0x100) argument
85 #define SPR_ITLBMR_LAST(WAY) (SPRGROUP_IMMU + 0x27f + (WAY) * 0x100) argument
86 #define SPR_ITLBTR_BASE(WAY) (SPRGROUP_IMMU + 0x280 + (WAY) * 0x100) argument
87 #define SPR_ITLBTR_LAST(WAY) (SPRGROUP_IMMU + 0x2ff + (WAY) * 0x100) argument
96 #define SPR_DCR_BASE(WAY) (SPRGROUP_DC + 0x200 + (WAY) * 0x200) argument
97 #define SPR_DCR_LAST(WAY) (SPRGROUP_DC + 0x3ff + (WAY) * 0x200) argument
[all …]
/kernel/linux/linux-5.10/arch/openrisc/include/asm/
Dspr_defs.h72 #define SPR_DTLBMR_BASE(WAY) (SPRGROUP_DMMU + 0x200 + (WAY) * 0x100) argument
73 #define SPR_DTLBMR_LAST(WAY) (SPRGROUP_DMMU + 0x27f + (WAY) * 0x100) argument
74 #define SPR_DTLBTR_BASE(WAY) (SPRGROUP_DMMU + 0x280 + (WAY) * 0x100) argument
75 #define SPR_DTLBTR_LAST(WAY) (SPRGROUP_DMMU + 0x2ff + (WAY) * 0x100) argument
80 #define SPR_ITLBMR_BASE(WAY) (SPRGROUP_IMMU + 0x200 + (WAY) * 0x100) argument
81 #define SPR_ITLBMR_LAST(WAY) (SPRGROUP_IMMU + 0x27f + (WAY) * 0x100) argument
82 #define SPR_ITLBTR_BASE(WAY) (SPRGROUP_IMMU + 0x280 + (WAY) * 0x100) argument
83 #define SPR_ITLBTR_LAST(WAY) (SPRGROUP_IMMU + 0x2ff + (WAY) * 0x100) argument
92 #define SPR_DCR_BASE(WAY) (SPRGROUP_DC + 0x200 + (WAY) * 0x200) argument
93 #define SPR_DCR_LAST(WAY) (SPRGROUP_DC + 0x3ff + (WAY) * 0x200) argument
[all …]
/kernel/linux/linux-5.10/arch/x86/crypto/
Dtwofish_glue_3way.c3 * Glue Code for 3-way parallel assembler optimized version of Twofish
175 .base.cra_driver_name = "ecb-twofish-3way",
187 .base.cra_driver_name = "cbc-twofish-3way",
200 .base.cra_driver_name = "ctr-twofish-3way",
225 * On Atom, twofish-3way is slower than original assembler in is_blacklisted_cpu()
226 * implementation. Twofish-3way trades off some performance in in is_blacklisted_cpu()
238 * On Pentium 4, twofish-3way is slower than original assembler in is_blacklisted_cpu()
257 "twofish-x86_64-3way: performance on this CPU " in init()
259 "twofish-x86_64-3way.\n"); in init()
276 MODULE_DESCRIPTION("Twofish Cipher Algorithm, 3-way parallel asm optimized");
/kernel/linux/linux-4.19/Documentation/x86/
Dentry_64.txt22 either way.
30 magically-generated functions that make their way to do_IRQ with
58 Now, there's a secondary complication: there's a cheap way to test
59 which mode the CPU is in and an expensive way.
61 The cheap way is to pick this info off the entry frame on the kernel
69 The expensive (paranoid) way is to read back the MSR_GS_BASE value
90 stack but before we executed SWAPGS, then the only safe way to check
/kernel/linux/linux-5.10/Documentation/x86/
Dentry_64.rst28 either way.
36 magically-generated functions that make their way to do_IRQ with
64 Now, there's a secondary complication: there's a cheap way to test
65 which mode the CPU is in and an expensive way.
67 The cheap way is to pick this info off the entry frame on the kernel
75 The expensive (paranoid) way is to read back the MSR_GS_BASE value
96 stack but before we executed SWAPGS, then the only safe way to check
/kernel/linux/linux-4.19/arch/x86/crypto/
Dtwofish_glue_3way.c2 * Glue Code for 3-way parallel assembler optimized version of Twofish
187 .base.cra_driver_name = "ecb-twofish-3way",
199 .base.cra_driver_name = "cbc-twofish-3way",
212 .base.cra_driver_name = "ctr-twofish-3way",
237 * On Atom, twofish-3way is slower than original assembler in is_blacklisted_cpu()
238 * implementation. Twofish-3way trades off some performance in in is_blacklisted_cpu()
250 * On Pentium 4, twofish-3way is slower than original assembler in is_blacklisted_cpu()
269 "twofish-x86_64-3way: performance on this CPU " in init()
271 "twofish-x86_64-3way.\n"); in init()
288 MODULE_DESCRIPTION("Twofish Cipher Algorithm, 3-way parallel asm optimized");
/kernel/linux/linux-5.10/arch/mips/include/asm/octeon/
Dcvmx-l2c.h183 * Return the L2 Cache way partitioning for a given core.
199 * a way, while a 1 bit blocks the core from evicting any
200 * lines from that way. There must be at least one allowed
201 * way (0 bit) in the mask.
212 * Return the L2 Cache way partitioning for the hw blocks.
214 * Returns The mask specifying the reserved way. 0 bits in mask indicates
225 * a way, while a 1 bit blocks the core from evicting any
226 * lines from that way. There must be at least one allowed
227 * way (0 bit) in the mask.
295 * @index: Which way to read from.
[all …]
/kernel/linux/linux-4.19/arch/mips/include/asm/octeon/
Dcvmx-l2c.h183 * Return the L2 Cache way partitioning for a given core.
199 * a way, while a 1 bit blocks the core from evicting any
200 * lines from that way. There must be at least one allowed
201 * way (0 bit) in the mask.
212 * Return the L2 Cache way partitioning for the hw blocks.
214 * Returns The mask specifying the reserved way. 0 bits in mask indicates
225 * a way, while a 1 bit blocks the core from evicting any
226 * lines from that way. There must be at least one allowed
227 * way (0 bit) in the mask.
295 * @index: Which way to read from.
[all …]
/kernel/linux/linux-5.10/arch/mips/kernel/
Dbmips_5xxx_init.S126 * Determine sets per way: IS
128 * This field contains the number of sets (i.e., indices) per way of
137 /* sets per way = (64<<IS) */
164 /* v0 now have sets per way, multiply it by line size now
174 * i) 0x0: Direct mapped, ii) 0x1: 2-way, iii) 0x2: 3-way, iv) 0x3:
175 * 4-way, v) 0x4 - 0x7: Reserved.
219 * Determine sets per way: IS
221 * This field contains the number of sets (i.e., indices) per way of
230 /* sets per way = (64<<IS) */
256 /* v0 now have sets per way, multiply it by line size now
[all …]
/kernel/linux/linux-4.19/arch/mips/kernel/
Dbmips_5xxx_init.S126 * Determine sets per way: IS
128 * This field contains the number of sets (i.e., indices) per way of
137 /* sets per way = (64<<IS) */
164 /* v0 now have sets per way, multiply it by line size now
174 * i) 0x0: Direct mapped, ii) 0x1: 2-way, iii) 0x2: 3-way, iv) 0x3:
175 * 4-way, v) 0x4 - 0x7: Reserved.
219 * Determine sets per way: IS
221 * This field contains the number of sets (i.e., indices) per way of
230 /* sets per way = (64<<IS) */
256 /* v0 now have sets per way, multiply it by line size now
[all …]

12345678910>>...305