summaryrefslogtreecommitdiff
path: root/src/mainboard/intel/tglrvp/romstage_fsp_params.c
diff options
context:
space:
mode:
authorFurquan Shaikh <furquan@google.com>2020-03-26 15:36:19 -0700
committerFurquan Shaikh <furquan@google.com>2020-04-02 16:53:55 +0000
commit5b1f335ef8aed95e01f040bc7074fb00acc8ab7e (patch)
treea119e13f3d7a88955dee92a9de23ab6973f5673e /src/mainboard/intel/tglrvp/romstage_fsp_params.c
parent3c57819005af59064ea0397e8b1ed59fab5a8f7c (diff)
downloadcoreboot-5b1f335ef8aed95e01f040bc7074fb00acc8ab7e.tar.xz
soc/intel/tigerlake: Reorganize memory initialization support
This change reorganizes memory initialization code for LPDDR4x on TGL to allow sharing of code when adding support for other memory types. In follow-up changes, support for DDR4 will be added. 1. It adds configuration for memory topology which is currently only MEMORY_DOWN, however DDR4 requires more topologies to be supported. 2. spd_info structure is organized to allow mixed topologies as well. 3. DQ/DQS maps are organized to reflect hardware configuration. TEST=Verified that volteer still boots and memory initialization is successful. Signed-off-by: Furquan Shaikh <furquan@google.com> Change-Id: Ib625f2ab30a6e1362a310d9abb3f2051f85c3013 Reviewed-on: https://review.coreboot.org/c/coreboot/+/39865 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: EricR Lai <ericr_lai@compal.corp-partner.google.com>
Diffstat (limited to 'src/mainboard/intel/tglrvp/romstage_fsp_params.c')
-rw-r--r--src/mainboard/intel/tglrvp/romstage_fsp_params.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/mainboard/intel/tglrvp/romstage_fsp_params.c b/src/mainboard/intel/tglrvp/romstage_fsp_params.c
index 0af394494f..d8057f6564 100644
--- a/src/mainboard/intel/tglrvp/romstage_fsp_params.c
+++ b/src/mainboard/intel/tglrvp/romstage_fsp_params.c
@@ -56,13 +56,14 @@ void mainboard_memory_init_params(FSPM_UPD *mupd)
{
FSP_M_CONFIG *mem_cfg = &mupd->FspmConfig;
- const struct mb_lpddr4x_cfg *mem_config = variant_memory_params();
+ const struct lpddr4x_cfg *mem_config = variant_memory_params();
const struct spd_info spd_info = {
- .read_type = READ_SPD_CBFS,
- .spd_spec.spd_index = mainboard_get_spd_index(),
+ .topology = MEMORY_DOWN,
+ .md_spd_loc = SPD_CBFS,
+ .cbfs_index = mainboard_get_spd_index(),
};
bool half_populated = false;
- meminit_lpddr4x_dimm0(mem_cfg, mem_config, &spd_info, half_populated);
+ meminit_lpddr4x(mem_cfg, mem_config, &spd_info, half_populated);
}