summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp
diff options
context:
space:
mode:
authorStephen Glancy <sglancy@us.ibm.com>2019-03-08 14:04:53 -0500
committerChristian R. Geddes <crgeddes@us.ibm.com>2019-03-13 10:32:27 -0500
commitb850083ce640d8cd046d48f110eef8f2eb8384ae (patch)
tree7b10d60237c15980037ad7d75d5d80064eade870 /src/import/chips/p9/procedures/hwp
parent2b943a5ba24f028f24fde19dac5f818280f75829 (diff)
downloadtalos-hostboot-b850083ce640d8cd046d48f110eef8f2eb8384ae.tar.gz
talos-hostboot-b850083ce640d8cd046d48f110eef8f2eb8384ae.zip
Fixes LRDIMM CKE issue
ZQ cal and set training mode for LRDIMM's were causing the LRDIMM to be powered off. Workaround for holding CKE high was added to the code to fix the bug Change-Id: Ic1d6c3307dc9f1bb38db0273e8b23c59958e99c9 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/73066 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Mark Pizzutillo <mark.pizzutillo@ibm.com> Reviewed-by: Louis Stermole <stermole@us.ibm.com> Reviewed-by: ANDRE A. MARIN <aamarin@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/73078 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp')
-rw-r--r--src/import/chips/p9/procedures/hwp/memory/lib/dimm/ddr4/zqcal.C2
-rw-r--r--src/import/chips/p9/procedures/hwp/memory/lib/phy/mss_lrdimm_training.H1
2 files changed, 3 insertions, 0 deletions
diff --git a/src/import/chips/p9/procedures/hwp/memory/lib/dimm/ddr4/zqcal.C b/src/import/chips/p9/procedures/hwp/memory/lib/dimm/ddr4/zqcal.C
index a5ff4c90b..f007d2c17 100644
--- a/src/import/chips/p9/procedures/hwp/memory/lib/dimm/ddr4/zqcal.C
+++ b/src/import/chips/p9/procedures/hwp/memory/lib/dimm/ddr4/zqcal.C
@@ -40,6 +40,7 @@
#include <lib/dimm/ddr4/data_buffer_ddr4.H>
#include <lib/ccs/ccs.H>
#include <lib/eff_config/timing.H>
+#include <lib/workarounds/ccs_workarounds.H>
using fapi2::TARGET_TYPE_MCBIST;
using fapi2::TARGET_TYPE_MCA;
@@ -150,6 +151,7 @@ fapi2::ReturnCode setup_and_execute_zqcal( const fapi2::Target<fapi2::TARGET_TYP
}// dimm
// execute ZQCAL instructions
+ mss::ccs::workarounds::hold_cke_high(l_program.iv_instructions);
FAPI_TRY( mss::ccs::execute(mss::find_target<fapi2::TARGET_TYPE_MCBIST>(i_target), l_program, i_target) );
fapi_try_exit:
diff --git a/src/import/chips/p9/procedures/hwp/memory/lib/phy/mss_lrdimm_training.H b/src/import/chips/p9/procedures/hwp/memory/lib/phy/mss_lrdimm_training.H
index cce5beef2..fb9362680 100644
--- a/src/import/chips/p9/procedures/hwp/memory/lib/phy/mss_lrdimm_training.H
+++ b/src/import/chips/p9/procedures/hwp/memory/lib/phy/mss_lrdimm_training.H
@@ -596,6 +596,7 @@ inline fapi2::ReturnCode set_buffer_training(const fapi2::Target<fapi2::TARGET_T
const auto& l_mca = mss::find_target<fapi2::TARGET_TYPE_MCA>(i_target);
FAPI_TRY(mss::ddr4::set_buffer_training(i_target, i_mode, l_program.iv_instructions));
+ mss::ccs::workarounds::hold_cke_high(l_program.iv_instructions);
FAPI_TRY( ccs::execute(l_mcbist,
l_program,
OpenPOWER on IntegriCloud