smbios: Add Type19

Implement type 19 by accumulating the DRAM dimm size found in cbmem's
CBMEM_ID_MEMINFO structure. This seems common on x86 where the
address space always starts at 0.

At least EDK2 uses this table in the UI and shows 0 MB DRAM if not
present.

Change-Id: Idee8b8cd0b155e14d62d4c12893ff01878ef3f1c
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/43672
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Christian Walter <christian.walter@9elements.com>
This commit is contained in:
Patrick Rudolph
2020-07-21 14:53:37 +02:00
committed by Patrick Georgi
parent f04b262710
commit 604295e508
2 changed files with 65 additions and 0 deletions

View File

@@ -828,6 +828,19 @@ struct smbios_type17 {
u8 eos[2];
} __packed;
struct smbios_type19 {
u8 type;
u8 length;
u16 handle;
u32 starting_address;
u32 ending_address;
u16 memory_array_handle;
u8 partition_width;
u64 extended_starting_address;
u64 extended_ending_address;
u8 eos[2];
} __packed;
struct smbios_type32 {
u8 type;
u8 length;