[PATCH 1/2] x86/topology: Name the AMD core-type values

From: Vishal Badole

Date: Mon Jun 29 2026 - 05:47:56 EST


Replace the bare 0/1 in get_topology_cpu_type() with named constants
that mirror what the AMD APM publishes for CPUID Fn0x80000026
EBX[31:28] (Extended CPU Topology, Core Type):

0 - Performance core
1 - Efficient core
2 - Low-power core (used by a follow-up)

No functional change.

Suggested-by: Borislav Petkov (AMD) <bp@xxxxxxxxx>
Signed-off-by: Vishal Badole <Vishal.Badole@xxxxxxx>
---
arch/x86/include/asm/topology.h | 6 ++++++
arch/x86/kernel/cpu/topology_common.c | 4 ++--
2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/arch/x86/include/asm/topology.h b/arch/x86/include/asm/topology.h
index 0ba9bdb99871..9658b5676ce6 100644
--- a/arch/x86/include/asm/topology.h
+++ b/arch/x86/include/asm/topology.h
@@ -120,6 +120,12 @@ enum x86_topology_cpu_type {
TOPO_CPU_TYPE_UNKNOWN,
};

+enum amd_cpu_type {
+ AMD_CPU_TYPE_PERFORMANCE = 0,
+ AMD_CPU_TYPE_EFFICIENCY = 1,
+ AMD_CPU_TYPE_LOW_POWER = 2,
+};
+
struct x86_topology_system {
unsigned int dom_shifts[TOPO_MAX_DOMAIN];
unsigned int dom_size[TOPO_MAX_DOMAIN];
diff --git a/arch/x86/kernel/cpu/topology_common.c b/arch/x86/kernel/cpu/topology_common.c
index cf7513416b70..e1cc25a115ca 100644
--- a/arch/x86/kernel/cpu/topology_common.c
+++ b/arch/x86/kernel/cpu/topology_common.c
@@ -42,8 +42,8 @@ enum x86_topology_cpu_type get_topology_cpu_type(struct cpuinfo_x86 *c)
}
if (c->x86_vendor == X86_VENDOR_AMD) {
switch (c->topo.amd_type) {
- case 0: return TOPO_CPU_TYPE_PERFORMANCE;
- case 1: return TOPO_CPU_TYPE_EFFICIENCY;
+ case AMD_CPU_TYPE_PERFORMANCE: return TOPO_CPU_TYPE_PERFORMANCE;
+ case AMD_CPU_TYPE_EFFICIENCY: return TOPO_CPU_TYPE_EFFICIENCY;
}
}

--
2.34.1