diff options
author | Bilicon Patil <bilpatil@in.ibm.com> | 2013-09-20 02:47:57 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2013-09-24 14:18:56 -0500 |
commit | bae38bba69c6987650a40b789126be23c90be3ea (patch) | |
tree | e322791a733f9f343b56dbcafc352671f3efc6ee /src/usr | |
parent | cdf834fbbbce4ddaaea4c74ceac1625b81860001 (diff) | |
download | talos-hostboot-bae38bba69c6987650a40b789126be23c90be3ea.tar.gz talos-hostboot-bae38bba69c6987650a40b789126be23c90be3ea.zip |
Clean up of error logs created by Lane eRepair
Change-Id: Ie751ac176bdd5c7b99134872618c7427a42ba011
RTC: 85946
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/6269
Tested-by: Jenkins Server
Reviewed-by: Zane Shelley <zshelle@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr')
-rw-r--r-- | src/usr/hwpf/hwp/bus_training/erepairAccessorHwpFuncs.C | 57 | ||||
-rw-r--r-- | src/usr/hwpf/hwp/bus_training/erepair_errors.xml | 14 |
2 files changed, 21 insertions, 50 deletions
diff --git a/src/usr/hwpf/hwp/bus_training/erepairAccessorHwpFuncs.C b/src/usr/hwpf/hwp/bus_training/erepairAccessorHwpFuncs.C index 84f8d4f90..a26676eb7 100644 --- a/src/usr/hwpf/hwp/bus_training/erepairAccessorHwpFuncs.C +++ b/src/usr/hwpf/hwp/bus_training/erepairAccessorHwpFuncs.C @@ -270,6 +270,8 @@ fapi::ReturnCode erepairGetRestoreLanes(const fapi::Target &i_endp1_target, bool l_sparesFound = false; uint8_t l_threshold = 0; uint64_t l_allMnfgFlags = 0; + uint32_t l_numTxFailLanes = 0; + uint32_t l_numRxFailLanes = 0; fapi::TargetType l_endp1_tgtType = fapi::TARGET_TYPE_NONE; fapi::TargetType l_endp2_tgtType = fapi::TARGET_TYPE_NONE; @@ -504,85 +506,57 @@ fapi::ReturnCode erepairGetRestoreLanes(const fapi::Target &i_endp1_target, break; } - /*** We want to create eRepair threshold exceed error logs for ***/ - /*** each of the Tx and Rx sub-interfaces of both the end-points ***/ - // Check if the eRepair threshold has exceeded for Tx side of endp1 if(o_endp1_txFaillanes.size() > l_threshold) { l_thresholdExceed = true; + l_numTxFailLanes = o_endp1_txFaillanes.size(); FAPI_ERR("erepairGetRestoreLanes: eRepair threshold exceed error" " seen in Tx of endp1 target. No.of lanes: %d", - o_endp1_txFaillanes.size()); - - fapi::ReturnCode l_rcLog; - const fapi::Target &FFDC_ENDP_TARGET = i_endp1_target; - const interfaceType &FFDC_SUB_IFACE = DRIVE; - const uint32_t &FFDC_LANES = o_endp1_txFaillanes.size(); - FAPI_SET_HWP_ERROR(l_rcLog, RC_EREPAIR_RESTORE_THRESHOLD_EXCEED); - - fapiLogError(l_rcLog); + l_numTxFailLanes); } // Check if the eRepair threshold has exceeded for Rx side of endp1 if(o_endp1_rxFaillanes.size() > l_threshold) { l_thresholdExceed = true; + l_numRxFailLanes = o_endp1_rxFaillanes.size(); FAPI_ERR("erepairGetRestoreLanes: eRepair threshold exceed error" " seen in Rx of endp1 target. No.of lanes: %d", - o_endp1_rxFaillanes.size()); - - fapi::ReturnCode l_rcLog; - const fapi::Target &FFDC_ENDP_TARGET = i_endp1_target; - const interfaceType &FFDC_SUB_IFACE = RECEIVE; - const uint32_t &FFDC_LANES = o_endp1_rxFaillanes.size(); - FAPI_SET_HWP_ERROR(l_rcLog, RC_EREPAIR_RESTORE_THRESHOLD_EXCEED); - - fapiLogError(l_rcLog); + l_numRxFailLanes); } // Check if the eRepair threshold has exceeded for Tx side of endp2 if(o_endp2_txFaillanes.size() > l_threshold) { l_thresholdExceed = true; + l_numTxFailLanes = o_endp2_txFaillanes.size(); FAPI_ERR("erepairGetRestoreLanes: eRepair threshold exceed error" " seen in Tx of endp2 target. No.of lanes: %d", - o_endp2_txFaillanes.size()); - - fapi::ReturnCode l_rcLog; - const fapi::Target &FFDC_ENDP_TARGET = i_endp2_target; - const interfaceType &FFDC_SUB_IFACE = DRIVE; - const uint32_t &FFDC_LANES = o_endp2_txFaillanes.size(); - FAPI_SET_HWP_ERROR(l_rcLog, RC_EREPAIR_RESTORE_THRESHOLD_EXCEED); - - fapiLogError(l_rcLog); + l_numTxFailLanes); } // Check if the eRepair threshold has exceeded for Rx side of endp2 if(o_endp2_rxFaillanes.size() > l_threshold) { l_thresholdExceed = true; + l_numRxFailLanes = o_endp2_rxFaillanes.size(); FAPI_ERR("erepairGetRestoreLanes: eRepair threshold exceed error" " seen in Rx of endp2 target. No.of lanes: %d", - o_endp2_rxFaillanes.size()); - - fapi::ReturnCode l_rcLog; - const fapi::Target &FFDC_ENDP_TARGET = i_endp2_target; - const interfaceType &FFDC_SUB_IFACE = RECEIVE; - const uint32_t &FFDC_LANES = o_endp2_rxFaillanes.size(); - FAPI_SET_HWP_ERROR(l_rcLog, RC_EREPAIR_RESTORE_THRESHOLD_EXCEED); - - fapiLogError(l_rcLog); + l_numRxFailLanes); } if(l_thresholdExceed) { FAPI_ERR("erepairGetRestoreLanes: Threshold has Exceeded"); + const uint32_t &FFDC_TX_NUM_LANES = l_numTxFailLanes; + const uint32_t &FFDC_RX_NUM_LANES = l_numRxFailLanes; + const uint32_t &FFDC_THRESHOLD = l_threshold; FAPI_SET_HWP_ERROR(l_rc, RC_EREPAIR_THRESHOLD_EXCEED); break; } @@ -605,7 +579,8 @@ fapi::ReturnCode erepairGetRestoreLanes(const fapi::Target &i_endp1_target, { FAPI_ERR("erepairGetRestoreLanes: CHARM IPL, Threshold Exceed"); - FAPI_SET_HWP_ERROR(l_rc, RC_EREPAIR_RESTORE_CHARM_THRESHOLD_EXCEED); + FAPI_SET_HWP_ERROR(l_rc, + RC_EREPAIR_RESTORE_CHARM_THRESHOLD_EXCEED); break; } } @@ -631,6 +606,7 @@ fapi::ReturnCode erepairGetRestoreLanes(const fapi::Target &i_endp1_target, if(l_sparesFound) { + const fapi::Target &FFDC_TARGET = i_endp1_target; FAPI_SET_HWP_ERROR(l_rc, RC_EREPAIR_RESTORE_SPARE_LANES_IN_VPD); fapiLogError(l_rc); } @@ -654,6 +630,7 @@ fapi::ReturnCode erepairGetRestoreLanes(const fapi::Target &i_endp1_target, if(l_sparesFound) { + const fapi::Target &FFDC_TARGET = i_endp2_target; FAPI_SET_HWP_ERROR(l_rc, RC_EREPAIR_RESTORE_SPARE_LANES_IN_VPD); fapiLogError(l_rc); } diff --git a/src/usr/hwpf/hwp/bus_training/erepair_errors.xml b/src/usr/hwpf/hwp/bus_training/erepair_errors.xml index 3ceaaca5c..0f5b08be1 100644 --- a/src/usr/hwpf/hwp/bus_training/erepair_errors.xml +++ b/src/usr/hwpf/hwp/bus_training/erepair_errors.xml @@ -52,16 +52,6 @@ </hwpError> <!-- ********************************************************************* --> <hwpError> - <rc>RC_EREPAIR_RESTORE_THRESHOLD_EXCEED</rc> - <description> - The threshold limit for eRepair has been crossed - </description> - <ffdc>FFDC_ENDP_TARGET</ffdc> - <ffdc>FFDC_SUB_IFACE</ffdc> - <ffdc>FFDC_LANES</ffdc> - </hwpError> - <!-- ********************************************************************* --> - <hwpError> <rc>RC_EREPAIR_RESTORE_CHARM_THRESHOLD_EXCEED</rc> <description> The threshold limit for eRepair has been crossed during CHARM operation @@ -73,6 +63,7 @@ <description> There are spare lanes in the VPD. Spare lanes cannot be restored. </description> + <ffdc>FFDC_TARGET</ffdc> </hwpError> <!-- ********************************************************************* --> <hwpError> @@ -87,6 +78,9 @@ <description> The threshold limit for eRepair has been crossed </description> + <ffdc>FFDC_TX_NUM_LANES</ffdc> + <ffdc>FFDC_RX_NUM_LANES</ffdc> + <ffdc>FFDC_THRESHOLD</ffdc> </hwpError> <!-- ********************************************************************* --> <hwpError> |