From f6b7234d960a9d00341fc3d7a7f179eeae79b317 Mon Sep 17 00:00:00 2001 From: Matthew Hickman Date: Wed, 29 Nov 2017 17:14:19 -0600 Subject: Fixed port fail SUE bug for DD2 modules Change-Id: I8e1ab78c688684ceba1805277d1473c747248104 CQ: SW408973 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/50166 Tested-by: FSP CI Jenkins Reviewed-by: Louis Stermole Reviewed-by: ANDRE A. MARIN Tested-by: Jenkins Server Tested-by: Hostboot CI Reviewed-by: STEPHEN GLANCY Dev-Ready: STEPHEN GLANCY Reviewed-by: Jennifer A. Stofer Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/54464 Tested-by: Jenkins OP Build CI Tested-by: Jenkins OP HW Reviewed-by: Daniel M. Crowell --- src/import/chips/p9/procedures/hwp/memory/lib/fir/memdiags_fir.C | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/import/chips/p9/procedures/hwp/memory') diff --git a/src/import/chips/p9/procedures/hwp/memory/lib/fir/memdiags_fir.C b/src/import/chips/p9/procedures/hwp/memory/lib/fir/memdiags_fir.C index c15ea5220..7aa41f6d4 100644 --- a/src/import/chips/p9/procedures/hwp/memory/lib/fir/memdiags_fir.C +++ b/src/import/chips/p9/procedures/hwp/memory/lib/fir/memdiags_fir.C @@ -94,14 +94,20 @@ fapi2::ReturnCode after_memdiags( const fapi2::Target& i_tar .checkstop() .recoverable_error(); + l_cal_fir_reg.recoverable_error(); + // If ATTR_CHIP_EC_FEATURE_HW414700 is enabled set checkstops auto l_chip_target = mss::find_target(i_target); FAPI_TRY( FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_HW414700, l_chip_target, l_checkstop_flag) ); + // If the system is running DD2 chips override some recoverable firs with checkstop + // Due to a known hardware defect with DD2 certain errors are not handled properly + // As a result, these firs are marked as checkstop for DD2 to avoid any mishandling if (l_checkstop_flag) { l_ecc64_fir_reg.checkstop() .checkstop(); + l_cal_fir_reg.checkstop(); } // If MNFG FLAG Threshhold is enabled skip IUE unflagging @@ -112,8 +118,6 @@ fapi2::ReturnCode after_memdiags( const fapi2::Target& i_tar l_ecc64_fir_reg.recoverable_error(); } - l_cal_fir_reg.recoverable_error(); - FAPI_TRY(l_ecc64_fir_reg.write(), "unable to write fir::reg %d", MCA_FIR); FAPI_TRY(l_cal_fir_reg.write(), "unable to write fir::reg %d", MCA_MBACALFIRQ); -- cgit v1.2.1