From a058d0e237d9dca00d7b27feb179c9e7b10a84af Mon Sep 17 00:00:00 2001 From: Christian Geddes Date: Wed, 23 Oct 2019 10:36:24 -0500 Subject: Call cronus version of memdiags for explorer until prd version works There are some delays in getting the attention driven memory diagnostics code up and running. In the mean time we will use the memory diagnostics HWP that cronus uses. This will allow us to init the system without any bootscripts. Eventually, after we get the correct fir settings, we will enable PRD's version of memory diagnostics and remove the cronus version. Change-Id: I6b9b5ff8f32983487a7b811a82a515d9da9502d9 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/85863 Tested-by: Jenkins Server Tested-by: Jenkins OP Build CI Tested-by: Jenkins OP HW Tested-by: FSP CI Jenkins Reviewed-by: Caleb N Palmer Reviewed-by: Matt Derksen Reviewed-by: Nicholas E Bofferding --- src/usr/isteps/istep14/call_mss_memdiag.C | 32 +++++++++++++++++++++++++++++++ src/usr/isteps/istep14/makefile | 3 +++ 2 files changed, 35 insertions(+) diff --git a/src/usr/isteps/istep14/call_mss_memdiag.C b/src/usr/isteps/istep14/call_mss_memdiag.C index 5810dc4fa..6ad840e68 100644 --- a/src/usr/isteps/istep14/call_mss_memdiag.C +++ b/src/usr/isteps/istep14/call_mss_memdiag.C @@ -41,6 +41,12 @@ #include #endif +// TODO RTC:245219 +// use PRD's version of memdiags instead of this cronus verison once its working +#ifdef CONFIG_AXONE +#include +#endif + using namespace ISTEP; using namespace ISTEP_ERROR; using namespace ERRORLOG; @@ -161,6 +167,32 @@ void* call_mss_memdiag (void* io_pArgs) // No need to unmask or turn off FIFO. That is already contained // within the other Centaur HWPs. } +#ifdef CONFIG_AXONE + else if (MODEL_AXONE == procType ) + { + // no need to run in simics + if ( Util::isSimicsRunning() == false ) + { + // TODO RTC:245219 + // use PRD's version of memdiags instead of this cronus verison once its working + TargetHandleList trgtList; getAllChips( trgtList, TYPE_OCMB_CHIP ); + for (const auto & l_ocmb_target : trgtList) + { + fapi2::Target l_fapi_ocmb_target(l_ocmb_target); + // Start Memory Diagnostics. + FAPI_INVOKE_HWP( errl, exp_mss_memdiag, l_fapi_ocmb_target ); + if ( nullptr != errl ) + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "exp_mss_memdiag (0x%08x) " + "failed", get_huid(l_ocmb_target) ); + break; + } + } + + } + } +#endif } while (0); diff --git a/src/usr/isteps/istep14/makefile b/src/usr/isteps/istep14/makefile index e34a2b5da..8aff38063 100644 --- a/src/usr/isteps/istep14/makefile +++ b/src/usr/isteps/istep14/makefile @@ -115,6 +115,9 @@ VPATH += ${PROCEDURE_PATH}/hwp/memory/lib/dimm/ddr4/ VPATH += $(if $(CONFIG_AXONE),${EXPLORER_HWP_PATH},) OBJS += $(if $(CONFIG_AXONE),p9a_throttle_sync.o,p9_throttle_sync.o) OBJS += $(if $(CONFIG_AXONE),exp_mss_thermal_init.o,) +# TODO RTC:245219 +# use PRD's version of memdiags instead of this cronus verison once its working +OBJS += $(if $(CONFIG_AXONE),exp_mss_memdiag.o,) include ${ROOTPATH}/config.mk -- cgit v1.2.1