Mathew King has uploaded this change for review.

View Change

smbios: Make SMBIOS type 3 enclosure type settable at runtime

smbios.h had already declared smbios_mainboard_enclosure_type so this
change defines it. It can be overridden in a mainboard so the enclosure
type can be set at runtime.

BUG=b:138745917
TEST=Built arcada firmware and verified via dmidecode that enclosure type
is correctly set to "Convertible", then temporarily added a
smbios_mainboard_enclosure_type to arcadas board file returning
0x20 and verified with dmidecode that the enclosure type is
"Detachable"

Change-Id: Iba6e582640989f5cb7e6613813e7b033760a977c
---
M src/arch/x86/smbios.c
1 file changed, 6 insertions(+), 1 deletion(-)

git pull ssh://review.coreboot.org:29418/coreboot refs/changes/46/34646/1
diff --git a/src/arch/x86/smbios.c b/src/arch/x86/smbios.c
index 2f5c3a6..346e874 100644
--- a/src/arch/x86/smbios.c
+++ b/src/arch/x86/smbios.c
@@ -500,6 +500,11 @@
return SMBIOS_BOARD_TYPE_UNKNOWN;
}

+u8 __weak smbios_mainboard_enclosure_type(void)
+{
+ return CONFIG_SMBIOS_ENCLOSURE_TYPE;
+}
+
const char *__weak smbios_system_serial_number(void)
{
return smbios_mainboard_serial_number();
@@ -620,7 +625,7 @@
t->bootup_state = SMBIOS_STATE_SAFE;
t->power_supply_state = SMBIOS_STATE_SAFE;
t->thermal_state = SMBIOS_STATE_SAFE;
- t->_type = CONFIG_SMBIOS_ENCLOSURE_TYPE;
+ t->_type = smbios_mainboard_enclosure_type();
t->security_status = SMBIOS_STATE_SAFE;
len = t->length + smbios_string_table_len(t->eos);
*current += len;

To view, visit change 34646. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Iba6e582640989f5cb7e6613813e7b033760a977c
Gerrit-Change-Number: 34646
Gerrit-PatchSet: 1
Gerrit-Owner: Mathew King <mathewk@chromium.org>
Gerrit-MessageType: newchange