mb/siemens/mc_ehl: Increase SPD buffer size to 512 bytes

DDR4 SPD data needs to be 512 byte to comply with the spec.

Though there is no vital timing data used beyond 256 byte there are some
part information which will be used to show the part info in the
coreboot log. If the buffer is too small this log shows garbage.

This patch increases the SPD buffer size from 256 byte to 512 to avoid
side effects.

Change-Id: I5b88df7818cfd62b3579d69f9f5bb14880f49c8c
Signed-off-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/62698
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
This commit is contained in:
Werner Zeh 2022-03-09 08:47:23 +01:00 committed by Felix Held
parent ceecc485b0
commit 06fe5d565d
1 changed files with 2 additions and 2 deletions

View File

@ -14,7 +14,7 @@ void mainboard_memory_init_params(FSPM_UPD *memupd)
{
static struct spd_info spd_info;
const struct mb_cfg *board_cfg = variant_memcfg_config();
static uint8_t spd_data[0x100];
static uint8_t spd_data[CONFIG_DIMM_SPD_SIZE];
const char *cbfs_hwi_name = "hwinfo.hex";
/* Initialize SPD information for LPDDR4x from HW-Info primarily with a fallback to
@ -24,7 +24,7 @@ void mainboard_memory_init_params(FSPM_UPD *memupd)
(hwilib_get_field(SPD, spd_data, 0x80) == 0x80) &&
(ddr_crc16(spd_data, 126) == read16((void *)&spd_data[126]))) {
spd_info.spd_spec.spd_data_ptr_info.spd_data_ptr = (uintptr_t)spd_data;
spd_info.spd_spec.spd_data_ptr_info.spd_data_len = sizeof(spd_data);
spd_info.spd_spec.spd_data_ptr_info.spd_data_len = CONFIG_DIMM_SPD_SIZE;
spd_info.read_type = READ_SPD_MEMPTR;
} else {
printk(BIOS_WARNING, "SPD in HW-Info not valid, fall back to spd.bin!\n");