Subrata Banik has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/39401 )
Change subject: soc/intel/tigerlake: add support to read spd data from SMBUS ......................................................................
Patch Set 3:
(1 comment)
https://review.coreboot.org/c/coreboot/+/39401/3/src/soc/intel/tigerlake/mem... File src/soc/intel/tigerlake/meminit_jsl.c:
https://review.coreboot.org/c/coreboot/+/39401/3/src/soc/intel/tigerlake/mem... PS3, Line 122: get_spd_data can u do something like this ? in that way u don't need to change assumptions of get_spd_data()
/* Initialize onboard memory configurations for lpddr4x */ void memcfg_init(FSP_M_CONFIG *mem_cfg, const struct mb_cfg *board_cfg, const struct spd_info *spd_info, bool half_populated) { if (spd_info->read_type == READ_SMBUS) { for (int i = 0; i < NUM_DIMM_SLOT; i++) mem_cfg->SpdAddressTable[i] = spd_info->spd_spec.spd_smbus_address[i]; } else { size_t spd_data_len = 0; uintptr_t spd_data_ptr = 0;
memset (&mem_cfg->SpdAddressTable, 0, sizeof(mem_cfg->SpdAddressTable)); get_spd_data(spd_info, &spd_data_ptr, &spd_data_len);
mem_cfg->MemorySpdDataLen = spd_data_len; meminit_channels(mem_cfg, board_cfg, spd_data_ptr, half_populated); }
mem_cfg->ECT = board_cfg->ect; mem_cfg->UserBd = board_cfg->UserBd; }