diff options
author | Andre Marin <aamarin@us.ibm.com> | 2017-03-14 09:26:40 -0500 |
---|---|---|
committer | Christian R. Geddes <crgeddes@us.ibm.com> | 2017-03-16 16:35:48 -0400 |
commit | 1700a42ed2e6bcba2c5e0c0d1e256e79b5d08d90 (patch) | |
tree | 6bdb6f085e0c73459602f804d29e58664062ec38 /src/import/chips/p9/procedures/hwp/memory/lib/dimm/eff_dimm.C | |
parent | 3b87f474990c43edbf8180b9f4eaef189b4d2f6b (diff) | |
download | talos-hostboot-1700a42ed2e6bcba2c5e0c0d1e256e79b5d08d90.tar.gz talos-hostboot-1700a42ed2e6bcba2c5e0c0d1e256e79b5d08d90.zip |
Fix add rtt_wr eff_dimm unit tests and header file fix
Change-Id: Ia7b91218dabc071ee47287cf40fa57359446b398
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/37902
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: JACOB L. HARVEY <jlharvey@us.ibm.com>
Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com>
Reviewed-by: Benjamin Gass <bgass@us.ibm.com>
Reviewed-by: PARVATHI RACHAKONDA <prachako@in.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/37921
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/memory/lib/dimm/eff_dimm.C')
-rw-r--r-- | src/import/chips/p9/procedures/hwp/memory/lib/dimm/eff_dimm.C | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/src/import/chips/p9/procedures/hwp/memory/lib/dimm/eff_dimm.C b/src/import/chips/p9/procedures/hwp/memory/lib/dimm/eff_dimm.C index 84ddaa1c6..90004c830 100644 --- a/src/import/chips/p9/procedures/hwp/memory/lib/dimm/eff_dimm.C +++ b/src/import/chips/p9/procedures/hwp/memory/lib/dimm/eff_dimm.C @@ -3445,24 +3445,27 @@ fapi2::ReturnCode eff_rdimm::dram_rtt_wr() { std::vector< uint64_t > l_ranks; uint8_t l_encoding = 0; + uint8_t l_dram_rtt_wr[MAX_RANK_PER_DIMM] = {}; uint8_t l_mcs_attrs[PORTS_PER_MCS][MAX_DIMM_PER_PORT][MAX_RANK_PER_DIMM] = {}; + // RTT_WR mapping + static const std::vector< std::pair<uint8_t, uint8_t> > l_rtt_wr_map = + { + { fapi2::ENUM_ATTR_MSS_VPD_MT_DRAM_RTT_WR_DISABLE, 0b000 }, + { fapi2::ENUM_ATTR_MSS_VPD_MT_DRAM_RTT_WR_HIGHZ, 0b011 }, + { fapi2::ENUM_ATTR_MSS_VPD_MT_DRAM_RTT_WR_OHM80, 0b100 }, + { fapi2::ENUM_ATTR_MSS_VPD_MT_DRAM_RTT_WR_OHM120, 0b001 }, + { fapi2::ENUM_ATTR_MSS_VPD_MT_DRAM_RTT_WR_OHM240, 0b010 } + }; + + // Retrieve current MCS level attribute FAPI_TRY( eff_dram_rtt_wr(iv_mcs, &l_mcs_attrs[0][0][0]) ); // Get RTT_WR from VPD - uint8_t l_dram_rtt_wr[MAX_RANK_PER_DIMM]; FAPI_TRY( mss::vpd_mt_dram_rtt_wr(iv_dimm, &(l_dram_rtt_wr[0])) ); // Calculate the value for each rank and store in attribute FAPI_TRY(mss::rank::ranks(iv_dimm, l_ranks)); - static const std::vector< std::pair<uint8_t, uint8_t> > l_rtt_wr_map = - { - {fapi2::ENUM_ATTR_MSS_VPD_MT_DRAM_RTT_WR_DISABLE, 0b000}, - {fapi2::ENUM_ATTR_MSS_VPD_MT_DRAM_RTT_WR_HIGHZ, 0b011}, - {fapi2::ENUM_ATTR_MSS_VPD_MT_DRAM_RTT_WR_OHM80, 0b100}, - {fapi2::ENUM_ATTR_MSS_VPD_MT_DRAM_RTT_WR_OHM120, 0b001}, - {fapi2::ENUM_ATTR_MSS_VPD_MT_DRAM_RTT_WR_OHM240, 0b010} - }; for (const auto& l_rank : l_ranks) { |