From 15f6f3aa588157780ee86ef9dabf608bf093718a Mon Sep 17 00:00:00 2001 From: Ravi Sarawadi Date: Thu, 18 Aug 2016 13:31:29 -0700 Subject: soc/intel/apollolake: Save DIMM info from SMBIOS memory HOB Read FSP produced memory HOB and use it to populate DIMM info. DIMM 'part_num' info is stored statically based on memory/SKU id. BUG=chrome-os-partner:55505 TEST='dmidecode -t 17' and 'mosys -k memory spd print all' Change-Id: Ifcbb3329fd4414bba90eb584e065b1cb7f120e73 Signed-off-by: Ravi Sarawadi Reviewed-on: https://review.coreboot.org/16246 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin Reviewed-by: Paul Menzel --- src/soc/intel/apollolake/include/soc/meminit.h | 2 ++ src/soc/intel/apollolake/include/soc/romstage.h | 1 + 2 files changed, 3 insertions(+) (limited to 'src/soc/intel/apollolake/include') diff --git a/src/soc/intel/apollolake/include/soc/meminit.h b/src/soc/intel/apollolake/include/soc/meminit.h index a7da1ac2bd..c115c4ae23 100644 --- a/src/soc/intel/apollolake/include/soc/meminit.h +++ b/src/soc/intel/apollolake/include/soc/meminit.h @@ -101,6 +101,7 @@ struct lpddr4_sku { int ch1_rank_density; int ch0_dual_rank; int ch1_dual_rank; + const char *part_num; }; struct lpddr4_cfg { @@ -115,5 +116,6 @@ struct lpddr4_cfg { */ void meminit_lpddr4_by_sku(struct FSP_M_CONFIG *cfg, const struct lpddr4_cfg *lpcfg, size_t sku_id); +void save_lpddr4_dimm_info(const struct lpddr4_cfg *lpcfg, size_t mem_sku); #endif /* _SOC_APOLLOLAKE_MEMINIT_H_ */ diff --git a/src/soc/intel/apollolake/include/soc/romstage.h b/src/soc/intel/apollolake/include/soc/romstage.h index e7ee335845..5b76f65856 100644 --- a/src/soc/intel/apollolake/include/soc/romstage.h +++ b/src/soc/intel/apollolake/include/soc/romstage.h @@ -22,5 +22,6 @@ #include void mainboard_memory_init_params(struct FSPM_UPD *mupd); +void mainboard_save_dimm_info(void); #endif /* _SOC_APOLLOLAKE_ROMSTAGE_H_ */ -- cgit v1.2.3