diff options
author | Dan Crowell <dcrowell@us.ibm.com> | 2014-03-08 15:51:02 -0600 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-03-21 10:26:12 -0500 |
commit | 9789508b0d23b4c253588c6f5f88c6ebab2c7ade (patch) | |
tree | 182beb26daaa8e26ea394a189031c0162864d322 /src/usr/fsiscom | |
parent | 46e34007e23485adf58a0b3df32b36c262644133 (diff) | |
download | talos-hostboot-9789508b0d23b4c253588c6f5f88c6ebab2c7ade.tar.gz talos-hostboot-9789508b0d23b4c253588c6f5f88c6ebab2c7ade.zip |
Force low-level hardware ops to use delayed deconfig
Some code (PRD) chooses to commit errors from register accesses
immediately and then continue on. If the error ends up
deconfiguring a target that can then lead to even more confusing
results downstream.
Change-Id: I289b43506a6d7c9d18d4ac6792fffbfc733daea6
CQ: SW250177
Backport: release-fips810
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/9415
Tested-by: Jenkins Server
Reviewed-by: Michael Baiocchi <baiocchi@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/fsiscom')
-rw-r--r-- | src/usr/fsiscom/fsiscom.C | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/usr/fsiscom/fsiscom.C b/src/usr/fsiscom/fsiscom.C index 4d390360a..dd17a6169 100644 --- a/src/usr/fsiscom/fsiscom.C +++ b/src/usr/fsiscom/fsiscom.C @@ -80,7 +80,7 @@ void pib_error_handler( TARGETING::Target* i_target, // callout this chip as Medium and deconfigure it i_errlog->addHwCallout( i_target, HWAS::SRCI_PRIORITY_LOW, - HWAS::DECONFIG, + HWAS::DELAYED_DECONFIG, HWAS::GARD_NULL ); // grab all the FFDC we can think of @@ -418,7 +418,7 @@ errlHndl_t fsiScomPerformOp(DeviceFW::OperationType i_opType, } else { - TRACFCOMP( g_trac_fsiscom, ERR_MRK"fsiScomPerformOp:Read: PCB/PIB error received: l_status=0x%.8X)", l_status); + TRACFCOMP( g_trac_fsiscom, ERR_MRK"fsiScomPerformOp:Unsupported Operation Type: i_opType=%d)", i_opType); /*@ * @errortype @@ -434,14 +434,12 @@ errlHndl_t fsiScomPerformOp(DeviceFW::OperationType i_opType, FSISCOM::RC_INVALID_OPTYPE, TWO_UINT32_TO_UINT64(i_opType, l_scomAddr), - TARGETING::get_huid(i_target)); + TARGETING::get_huid(i_target), + true /*SW error*/); //Add this target to the FFDC ERRORLOG::ErrlUserDetailsTarget(i_target,"SCOM Target"). addToLog(l_err); - l_err->addProcedureCallout(HWAS::EPUB_PRC_HB_CODE, - HWAS::SRCI_PRIORITY_HIGH); - break; } |