From 3048b4b1689faf1842499f6402f6175909b2b410 Mon Sep 17 00:00:00 2001 From: Stephen Glancy Date: Fri, 9 Aug 2019 10:08:14 -0400 Subject: Updates RDTAG for NVDIMM at 2400 Change-Id: I03097276cda75a48f4a6365b274769995b376c88 CQ:SW472568 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/82015 Tested-by: FSP CI Jenkins Tested-by: Jenkins Server Tested-by: Hostboot CI Dev-Ready: STEPHEN GLANCY Reviewed-by: Louis Stermole Reviewed-by: TSUNG K YEUNG Reviewed-by: JEREMY R NEATON Reviewed-by: Jennifer A Stofer Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/82036 Tested-by: Jenkins OP Build CI Tested-by: Jenkins OP HW Reviewed-by: Christian R Geddes --- .../chips/p9/procedures/hwp/initfiles/p9n_mca_scom.C | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'src/import/chips') diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9n_mca_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9n_mca_scom.C index ce08da173..d770b6998 100644 --- a/src/import/chips/p9/procedures/hwp/initfiles/p9n_mca_scom.C +++ b/src/import/chips/p9/procedures/hwp/initfiles/p9n_mca_scom.C @@ -59,8 +59,8 @@ constexpr uint64_t literal_17 = 17; constexpr uint64_t literal_1867 = 1867; constexpr uint64_t literal_2134 = 2134; constexpr uint64_t literal_2401 = 2401; -constexpr uint64_t literal_2666 = 2666; constexpr uint64_t literal_9 = 9; +constexpr uint64_t literal_2666 = 2666; constexpr uint64_t literal_10 = 10; constexpr uint64_t literal_11 = 11; constexpr uint64_t literal_24 = 24; @@ -144,7 +144,15 @@ fapi2::ReturnCode p9n_mca_scom(const fapi2::Target& TGT0 fapi2::ATTR_EFF_DRAM_CL_Type l_TGT2_ATTR_EFF_DRAM_CL; FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_EFF_DRAM_CL, TGT2, l_TGT2_ATTR_EFF_DRAM_CL)); uint64_t l_def_MSS_FREQ_EQ_2133 = ((l_TGT1_ATTR_MSS_FREQ >= literal_1867) && (l_TGT1_ATTR_MSS_FREQ < literal_2134)); + fapi2::ATTR_EFF_HYBRID_MEMORY_TYPE_Type l_TGT2_ATTR_EFF_HYBRID_MEMORY_TYPE; + FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_EFF_HYBRID_MEMORY_TYPE, TGT2, l_TGT2_ATTR_EFF_HYBRID_MEMORY_TYPE)); + fapi2::ATTR_EFF_HYBRID_Type l_TGT2_ATTR_EFF_HYBRID; + FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_EFF_HYBRID, TGT2, l_TGT2_ATTR_EFF_HYBRID)); + uint64_t l_def_NOT_NVDIMM = ((l_TGT2_ATTR_EFF_HYBRID[l_def_PORT_INDEX][literal_0] == literal_0) + || (l_TGT2_ATTR_EFF_HYBRID_MEMORY_TYPE[l_def_PORT_INDEX][literal_0] == literal_0)); uint64_t l_def_MSS_FREQ_EQ_2400 = ((l_TGT1_ATTR_MSS_FREQ >= literal_2134) && (l_TGT1_ATTR_MSS_FREQ < literal_2401)); + uint64_t l_def_IS_NVDIMM = ((l_TGT2_ATTR_EFF_HYBRID[l_def_PORT_INDEX][literal_0] == literal_1) + && (l_TGT2_ATTR_EFF_HYBRID_MEMORY_TYPE[l_def_PORT_INDEX][literal_0] == literal_1)); uint64_t l_def_MSS_FREQ_EQ_2666 = (l_TGT1_ATTR_MSS_FREQ >= literal_2666); fapi2::ATTR_MSS_EFF_DPHY_WLO_Type l_TGT2_ATTR_MSS_EFF_DPHY_WLO; FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_MSS_EFF_DPHY_WLO, TGT2, l_TGT2_ATTR_MSS_EFF_DPHY_WLO)); @@ -447,11 +455,16 @@ fapi2::ReturnCode p9n_mca_scom(const fapi2::Target& TGT0 { l_scom_buffer.insert<36, 6, 58, uint64_t>((literal_7 + l_TGT2_ATTR_EFF_DRAM_CL[l_def_PORT_INDEX]) ); } - else if ((((l_def_MSS_FREQ_EQ_2400 == literal_1) - && (l_TGT2_ATTR_EFF_DIMM_TYPE[l_def_PORT_INDEX][literal_0] == literal_1)) && l_def_IS_HW)) + else if (((((l_def_MSS_FREQ_EQ_2400 == literal_1) + && (l_TGT2_ATTR_EFF_DIMM_TYPE[l_def_PORT_INDEX][literal_0] == literal_1)) && l_def_IS_HW) && l_def_NOT_NVDIMM)) { l_scom_buffer.insert<36, 6, 58, uint64_t>((literal_8 + l_TGT2_ATTR_EFF_DRAM_CL[l_def_PORT_INDEX]) ); } + else if (((((l_def_MSS_FREQ_EQ_2400 == literal_1) + && (l_TGT2_ATTR_EFF_DIMM_TYPE[l_def_PORT_INDEX][literal_0] == literal_1)) && l_def_IS_HW) && l_def_IS_NVDIMM)) + { + l_scom_buffer.insert<36, 6, 58, uint64_t>((literal_9 + l_TGT2_ATTR_EFF_DRAM_CL[l_def_PORT_INDEX]) ); + } else if ((((l_def_MSS_FREQ_EQ_2666 == literal_1) && (l_TGT2_ATTR_EFF_DIMM_TYPE[l_def_PORT_INDEX][literal_0] == literal_1)) && l_def_IS_HW)) { -- cgit v1.2.1