/linux/arch/x86/kernel/cpu/ |
H A D | topology_ext.c | 45 static inline bool topo_subleaf(struct topo_scan *tscan, u32 leaf, u32 subleaf, in topo_subleaf() argument 73 cpuid_subleaf(leaf, subleaf, &sl); in topo_subleaf() 80 leaf, subleaf, sl.type); in topo_subleaf() 97 leaf, subleaf, tscan->c->topo.initial_apicid, sl.x2apic_id); in topo_subleaf() 107 u32 subleaf; in parse_topology_leaf() local 110 for (subleaf = 0, last_dom = 0; topo_subleaf(tscan, leaf, subleaf, &last_dom); subleaf++); in parse_topology_leaf() 113 if (!subleaf) in parse_topology_leaf()
|
/linux/tools/arch/x86/kcpuid/ |
H A D | kcpuid.c | 49 struct subleaf { 62 struct subleaf *leafs; 114 static void leaf_print_raw(struct subleaf *leaf) in has_subleafs() 129 static bool cpuid_store(struct cpuid_range *range, u32 f, int subleaf, in leaf_print_raw() 133 struct subleaf *leaf; in leaf_print_raw() 146 func->leafs = malloc(sizeof(struct subleaf)); in cpuid_store() 163 leaf->sub = subleaf; in cpuid_store() 200 u32 max_func, idx_func, subleaf, max_subleaf; in raw_dump_range() 230 subleaf = ecx = 0; in setup_cpuid_range() 233 allzero = cpuid_store(range, f, subleaf, ea in setup_cpuid_range() 48 struct subleaf { global() struct 61 infosubleaf global() argument 139 cpuid_store(struct cpuid_range * range,u32 f,int subleaf,u32 a,u32 b,u32 c,u32 d) cpuid_store() argument 211 int subleaf; setup_cpuid_range() local [all...] |
/linux/arch/x86/include/asm/ |
H A D | cpuid.h | 130 static inline void __cpuid_read(unsigned int leaf, unsigned int subleaf, u32 *regs) in __cpuid_read() argument 133 regs[CPUID_ECX] = subleaf; in __cpuid_read() 137 #define cpuid_subleaf(leaf, subleaf, regs) { \ argument 139 __cpuid_read(leaf, subleaf, (u32 *)(regs)); \ 147 static inline void __cpuid_read_reg(unsigned int leaf, unsigned int subleaf, in __cpuid_read_reg() argument 152 __cpuid_read(leaf, subleaf, regs); in __cpuid_read_reg() 156 #define cpuid_subleaf_reg(leaf, subleaf, regidx, reg) { \ argument 158 __cpuid_read_reg(leaf, subleaf, regidx, (u32 *)(reg)); \
|
/linux/tools/perf/arch/x86/tests/ |
H A D | intel-pt-test.c | 352 struct cpuid_result subleaf[INTEL_PT_SUBLEAF_CNT]; member 372 caps->subleaf[i] = r; in get_pt_caps() 393 .subleaf = { in compare_caps() 410 m = mask.subleaf[i].reg[j]; in compare_caps() 411 reg = m & caps->subleaf[i].reg[j]; in compare_caps() 412 reg0 = m & caps0->subleaf[i].reg[j]; in compare_caps() 422 reg = m & caps->subleaf[1].eax; in compare_caps() 423 reg0 = m & caps0->subleaf[1].eax; in compare_caps()
|
/linux/arch/x86/kernel/cpu/resctrl/ |
H A D | core.c | 247 u32 eax, ebx, ecx, edx, subleaf; in __rdt_get_mem_config_amd() local 253 subleaf = (r->rid == RDT_RESOURCE_SMBA) ? 2 : 1; in __rdt_get_mem_config_amd() 255 cpuid_count(0x80000020, subleaf, &eax, &ebx, &ecx, &edx); in __rdt_get_mem_config_amd()
|