From 634b785321e11a1b8c888df5698c05d0d0384182 Mon Sep 17 00:00:00 2001 From: Corey Swenson Date: Fri, 3 Jan 2020 09:41:17 -0600 Subject: NVDIMM : Catch save error during MPIPL During MPIPL, call nvdimm_init() from nvdimmRestore() to catch errors skipped during SAVE step. Change-Id: I5a4177af59b0a5909ece27700cc3d51840e29440 CQ:SW476125 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/89682 Tested-by: Jenkins Server Tested-by: Jenkins OP Build CI Tested-by: Jenkins OP HW Tested-by: FSP CI Jenkins Reviewed-by: Roland Veloz Reviewed-by: Matt Derksen Reviewed-by: Nicholas E Bofferding --- src/usr/isteps/nvdimm/nvdimm.C | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/usr/isteps/nvdimm/nvdimm.C') diff --git a/src/usr/isteps/nvdimm/nvdimm.C b/src/usr/isteps/nvdimm/nvdimm.C index 273aa04e9..2f9f96c2b 100644 --- a/src/usr/isteps/nvdimm/nvdimm.C +++ b/src/usr/isteps/nvdimm/nvdimm.C @@ -1187,6 +1187,7 @@ errlHndl_t nvdimmRestore(TargetHandleList& io_nvdimmList, uint8_t &i_mpipl) for (TargetHandleList::iterator it = io_nvdimmList.begin(); it != io_nvdimmList.end();) { + // Default state during boot is unarmed, therefore not preserved nvdimmSetStatusFlag(*it, NSTD_VAL_DISARMED); @@ -1206,6 +1207,9 @@ errlHndl_t nvdimmRestore(TargetHandleList& io_nvdimmList, uint8_t &i_mpipl) // Note: a regular IPL will already have this masked maskMbacalfir_eventn(*it); + // Call init for error checking skipped in the SAVE step + nvdimm_init(*it); + FAPI_INVOKE_HWP(l_err, mss::ddr_resetn, l_fapi_mca, HIGH); if (l_err) -- cgit v1.2.1