summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElyes Haouas <ehaouas@noos.fr>2024-05-25 11:17:15 +0200
committerFelix Held <felix-coreboot@felixheld.de>2024-05-28 13:27:15 +0000
commitb72f5949ccefe060baf509a8ee2c6a7f0e197d91 (patch)
tree28b8e3813b449c39520bb00d036e64d748ebebf5
parent23e3ea889f62d0052ac8ec4815937344e60cb213 (diff)
tree: Add smbios_processor_type
Change-Id: I46f799ad255993ac42dab11b5c1d2608daa52b42 Signed-off-by: Elyes Haouas <ehaouas@noos.fr> Reviewed-on: https://review.coreboot.org/c/coreboot/+/82645 Reviewed-by: Eric Lai <ericllai@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
-rw-r--r--src/arch/arm64/smbios.c2
-rw-r--r--src/arch/x86/smbios.c2
-rw-r--r--src/include/smbios.h9
3 files changed, 11 insertions, 2 deletions
diff --git a/src/arch/arm64/smbios.c b/src/arch/arm64/smbios.c
index ede48e62ae..291659a4bc 100644
--- a/src/arch/arm64/smbios.c
+++ b/src/arch/arm64/smbios.c
@@ -68,7 +68,7 @@ int smbios_write_type4(unsigned long *current, int handle)
t->processor_version = smbios_processor_name(t->eos);
t->processor_family = 0xfe; /* Use processor_family2 field */
t->processor_family2 = 0x101; /* ARMv8 */
- t->processor_type = 3; /* System Processor */
+ t->processor_type = SMBIOS_PROCESSOR_TYPE_CENTRAL;
smbios_cpu_get_core_counts(&t->core_count2, &t->thread_count2);
t->core_count = MAX_CPUS_ENABLED(t->core_count2);
diff --git a/src/arch/x86/smbios.c b/src/arch/x86/smbios.c
index a2038b6dea..0338b60d1b 100644
--- a/src/arch/x86/smbios.c
+++ b/src/arch/x86/smbios.c
@@ -126,7 +126,7 @@ int smbios_write_type4(unsigned long *current, int handle)
t->processor_manufacturer = smbios_cpu_vendor(t->eos);
t->processor_version = smbios_processor_name(t->eos);
t->processor_family = smbios_processor_family(res);
- t->processor_type = 3; /* System Processor */
+ t->processor_type = SMBIOS_PROCESSOR_TYPE_CENTRAL;
/*
* If CPUID leaf 11 is available, calculate "core count" by dividing
* SMT_ID (logical processors in a core) by Core_ID (number of cores).
diff --git a/src/include/smbios.h b/src/include/smbios.h
index 63e80d90cf..0fe2b9c274 100644
--- a/src/include/smbios.h
+++ b/src/include/smbios.h
@@ -496,6 +496,15 @@ struct smbios_type4 {
#define SMBIOS_PROCESSOR_STATUS_POPULATED (1 << 6)
#define SMBIOS_PROCESSOR_STATUS_CPU_ENABLED (1 << 0)
+enum smbios_processor_type {
+ SMBIOS_PROCESSOR_TYPE_OTHER = 0x01,
+ SMBIOS_PROCESSOR_TYPE_UNKNOWN = 0x02,
+ SMBIOS_PROCESSOR_TYPE_CENTRAL = 0x03,
+ SMBIOS_PROCESSOR_TYPE_MATH = 0x04,
+ SMBIOS_PROCESSOR_TYPE_DSP = 0x05,
+ SMBIOS_PROCESSOR_TYPE_VIDEO = 0x06,
+};
+
/* enum for socket type */
enum smbios_processor_upgrade_field {
PROCESSOR_UPGRADE_OTHER = 0x01,