summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/plat/mem/prdfMemScrubUtils.C
diff options
context:
space:
mode:
authorZane Shelley <zshelle@us.ibm.com>2017-05-17 12:03:25 -0500
committerZane C. Shelley <zshelle@us.ibm.com>2017-05-19 10:54:14 -0400
commit8a05f8e673b9f5e1e2ae39f7db38bb27c8ea6559 (patch)
treea3c4fd0f230ea7ed05246e96c45de5bf5f85f11e /src/usr/diag/prdf/plat/mem/prdfMemScrubUtils.C
parent9ed2003cff9cf56e54f9e5c550685d402b1822f6 (diff)
downloadtalos-hostboot-8a05f8e673b9f5e1e2ae39f7db38bb27c8ea6559.tar.gz
talos-hostboot-8a05f8e673b9f5e1e2ae39f7db38bb27c8ea6559.zip
PRD: Clear maintenance IUE attn during memdiags
Change-Id: I54664ee37349f4c1a06a479db8d0a744ae974b90 CQ: SW389265 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40643 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Brian J. Stegmiller <bjs@us.ibm.com> Reviewed-by: Caleb N. Palmer <cnpalmer@us.ibm.com> Reviewed-by: Benjamin J. Weisenbeck <bweisenb@us.ibm.com> Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40722 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Diffstat (limited to 'src/usr/diag/prdf/plat/mem/prdfMemScrubUtils.C')
-rw-r--r--src/usr/diag/prdf/plat/mem/prdfMemScrubUtils.C21
1 files changed, 14 insertions, 7 deletions
diff --git a/src/usr/diag/prdf/plat/mem/prdfMemScrubUtils.C b/src/usr/diag/prdf/plat/mem/prdfMemScrubUtils.C
index 7943e4d5b..ad442f82d 100644
--- a/src/usr/diag/prdf/plat/mem/prdfMemScrubUtils.C
+++ b/src/usr/diag/prdf/plat/mem/prdfMemScrubUtils.C
@@ -196,13 +196,20 @@ uint32_t clearEccFirs<TYPE_MCBIST>( ExtensibleChip * i_chip )
// Maintenance AUEs/IAUEs will be reported as system checkstops.
// Maintenance IMPEs will be reported as recoverable attentions at
- // all times. Maintence IUEs will be reported as recoverable in the
- // field (doesn't stop-on-error), however, we will want to stop the
- // command in MNFG mode for more accuracy in the callout. So clear
- // MCAECCFIR[20:32,34:35,38] always and MCAECCFIR[37] in MNFG
- // mode only.
- uint64_t mask = 0xfffff0004dffffffull;
- if ( mfgMode() ) mask &= 0xfffffffffbffffffull;
+ // all times. Maintence IUEs will be masked during Memory
+ // Diagnostics and handled in the Targeted diagnostics code. After
+ // Memory Diagnostics, maintenance IUEs will be reported as
+ // recoverable in the field (no stop-on-error), but will remain
+ // masked if MNFG thresholds are enabled. In this case, the command
+ // will stop on RCE ETE in order to get a more accuracy callout. So
+ // clear MCAECCFIR[20:32,34:35,38] always and MCAECCFIR[37] in MNFG
+ // mode or during Memory Diagnostics.
+ uint64_t mask = 0xfffff0004dffffffull;
+ if ( mfgMode() ) mask &= 0xfffffffffbffffffull;
+ #ifndef __HOSTBOOT_RUNTIME
+ if ( isInMdiaMode() ) mask &= 0xfffffffffbffffffull;
+ #endif
+
o_rc = __clearFir<TYPE_MCA>( mcaChip, "MCAECCFIR_AND", mask );
if ( SUCCESS != o_rc ) break;
}
OpenPOWER on IntegriCloud