Lines Matching +full:cpu +full:- +full:core

1 /* SPDX-License-Identifier: GPL-2.0 */
13 * threads per core and the same number for each core in the system
15 * as the CPU numbers are still allocated, just not brought online).
41 int cpu_core_index_of_thread(int cpu);
42 int cpu_first_thread_of_core(int core);
44 static inline int cpu_core_index_of_thread(int cpu) { return cpu; } in cpu_core_index_of_thread() argument
45 static inline int cpu_first_thread_of_core(int core) { return core; } in cpu_first_thread_of_core() argument
48 static inline int cpu_thread_in_core(int cpu) in cpu_thread_in_core() argument
50 return cpu & (threads_per_core - 1); in cpu_thread_in_core()
53 static inline int cpu_thread_in_subcore(int cpu) in cpu_thread_in_subcore() argument
55 return cpu & (threads_per_subcore - 1); in cpu_thread_in_subcore()
58 static inline int cpu_first_thread_sibling(int cpu) in cpu_first_thread_sibling() argument
60 return cpu & ~(threads_per_core - 1); in cpu_first_thread_sibling()
63 static inline int cpu_last_thread_sibling(int cpu) in cpu_last_thread_sibling() argument
65 return cpu | (threads_per_core - 1); in cpu_last_thread_sibling()
71 * CPU may change behaviour even in compat mode, so this should only be
74 static inline int cpu_first_tlb_thread_sibling(int cpu) in cpu_first_tlb_thread_sibling() argument
77 return cpu & ~0x6; /* Big Core */ in cpu_first_tlb_thread_sibling()
79 return cpu_first_thread_sibling(cpu); in cpu_first_tlb_thread_sibling()
82 static inline int cpu_last_tlb_thread_sibling(int cpu) in cpu_last_tlb_thread_sibling() argument
85 return cpu | 0x6; /* Big Core */ in cpu_last_tlb_thread_sibling()
87 return cpu_last_thread_sibling(cpu); in cpu_last_tlb_thread_sibling()
93 return 2; /* Big Core */ in cpu_tlb_thread_sibling_step()