summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJingle Hsu <jingle_hsu@wiwynn.com>2021-09-09 14:24:25 +0800
committerFelix Held <felix-coreboot@felixheld.de>2021-09-13 13:50:04 +0000
commit869e90a3d481951c61024be042f3bf06d2887b89 (patch)
tree1c91ffc7671845b13b75b8ab6d50b977b8548f15
parentc1b98a43ae3493f3c91e432dfa49207a3b6a4ac4 (diff)
arch/x86/smbios: Add support for large memory capacity in type 16
Avoid SMBIOS type 16 Maximum Capacity showing incorrect information when value of maximum capacity exceeds 32 bits by extending the type. Handle 0x0009, DMI type 16, 23 bytes Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: Single-bit ECC Maximum Capacity: 4 TB Error Information Handle: Not Provided Number Of Devices: 6 Tested=On OCP Crater Lake, the SMBIOS type 16 shows expected Maximum Capacity. Signed-off-by: Jingle Hsu <jingle_hsu@wiwynn.com> Change-Id: Iaa79cc587808f1eab0a48e2ce1dab089e84e9721 Reviewed-on: https://review.coreboot.org/c/coreboot/+/57520 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Reviewed-by: Daocheng Bu <daocheng.bu@intel.com>
-rw-r--r--src/include/smbios.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/include/smbios.h b/src/include/smbios.h
index a98023b375..0f1386a963 100644
--- a/src/include/smbios.h
+++ b/src/include/smbios.h
@@ -825,7 +825,7 @@ enum {
SMBIOS_EVENTLOG_STATUS_FULL = 2, /* Bit 1 */
};
-#define SMBIOS_USE_EXTENDED_MAX_CAPACITY (1 << 31)
+#define SMBIOS_USE_EXTENDED_MAX_CAPACITY (1ULL << 31)
struct smbios_type16 {
struct smbios_header header;