summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf
diff options
context:
space:
mode:
authorZane Shelley <zshelle@us.ibm.com>2019-07-29 14:29:19 -0500
committerZane C Shelley <zshelle@us.ibm.com>2019-08-09 13:32:26 -0500
commit2870f766e37b2c07ef7c993c7588d716af165723 (patch)
treea56688edcd1dc0ec97296003d7a567d3fb7e7345 /src/usr/diag/prdf
parenta7892148b7dcd0d0a332e09835189f7a9d4f913b (diff)
downloadtalos-hostboot-2870f766e37b2c07ef7c993c7588d716af165723.tar.gz
talos-hostboot-2870f766e37b2c07ef7c993c7588d716af165723.zip
PRD: Temp fix to ignore lane repair attns in OpenCAPI mode
The hardware team reused several bits in the IOOLFIR for OpenCAPI mode. Previously, we had expected these bits only to be reported in SMP mode. Removed assert to allow for bring-up while waiting for actual design changes to be finalized. Change-Id: Iad4015f372c37257fd7d5efef25865d006484cd3 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/81274 Reviewed-by: Caleb N Palmer <cnpalmer@us.ibm.com> Reviewed-by: Paul Greenwood <paul.greenwood@ibm.com> Reviewed-by: Benjamen G Tyner <ben.tyner@ibm.com> Reviewed-by: Brian J Stegmiller <bjs@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Zane C Shelley <zshelle@us.ibm.com>
Diffstat (limited to 'src/usr/diag/prdf')
-rw-r--r--src/usr/diag/prdf/common/plat/axone/axone_obus.rule44
-rw-r--r--src/usr/diag/prdf/common/plat/cumulus/cumulus_obus.rule44
-rw-r--r--src/usr/diag/prdf/common/plat/nimbus/nimbus_obus.rule44
-rw-r--r--src/usr/diag/prdf/common/plat/p9/prdfLaneRepair.C32
4 files changed, 164 insertions, 0 deletions
diff --git a/src/usr/diag/prdf/common/plat/axone/axone_obus.rule b/src/usr/diag/prdf/common/plat/axone/axone_obus.rule
index a079fac59..1fa9ed61e 100644
--- a/src/usr/diag/prdf/common/plat/axone/axone_obus.rule
+++ b/src/usr/diag/prdf/common/plat/axone/axone_obus.rule
@@ -459,21 +459,25 @@ group gIOOLFIR
/** IOOLFIR[6]
* link0 crc error
*/
+ # DL0 - orx_otx_crc_error
(rIOOLFIR, bit(6)) ? threshold_and_mask_self;
/** IOOLFIR[7]
* link1 crc error
*/
+ # DL1 - orx_otx_crc_error
(rIOOLFIR, bit(7)) ? threshold_and_mask_self;
/** IOOLFIR[8]
* link0 nak received
*/
+ # DL0 - orx_otx_nack
(rIOOLFIR, bit(8)) ? defaultMaskedError;
/** IOOLFIR[9]
* link1 nak received
*/
+ # DL1 - orx_otx_nack
(rIOOLFIR, bit(9)) ? defaultMaskedError;
/** IOOLFIR[10]
@@ -529,21 +533,25 @@ group gIOOLFIR
/** IOOLFIR[20]
* link0 loss block align
*/
+ # DL0 - lost_block_lock
(rIOOLFIR, bit(20)) ? defaultMaskedError;
/** IOOLFIR[21]
* link1 loss block align
*/
+ # DL1 - lost_block_lock
(rIOOLFIR, bit(21)) ? defaultMaskedError;
/** IOOLFIR[22]
* link0 invalid block
*/
+ # DL0 - lost_data_sh
(rIOOLFIR, bit(22)) ? defaultMaskedError;
/** IOOLFIR[23]
* link1 invalid block
*/
+ # DL1 - lost_data_sh
(rIOOLFIR, bit(23)) ? defaultMaskedError;
/** IOOLFIR[24]
@@ -559,21 +567,25 @@ group gIOOLFIR
/** IOOLFIR[26]
* link0 deskew overflow
*/
+ # DL0 - deskew_overflow
(rIOOLFIR, bit(26)) ? defaultMaskedError;
/** IOOLFIR[27]
* link1 deskew overflow
*/
+ # DL1 - deskew_overflow
(rIOOLFIR, bit(27)) ? defaultMaskedError;
/** IOOLFIR[28]
* link0 sw retrain
*/
+ # DL0 - software_retrain
(rIOOLFIR, bit(28)) ? defaultMaskedError;
/** IOOLFIR[29]
* link1 sw retrain
*/
+ # DL1 - software_retrain
(rIOOLFIR, bit(29)) ? defaultMaskedError;
/** IOOLFIR[30]
@@ -599,21 +611,25 @@ group gIOOLFIR
/** IOOLFIR[34]
* link0 num replay
*/
+ # DL0 - no_fwd_progress
(rIOOLFIR, bit(34)) ? defaultMaskedError;
/** IOOLFIR[35]
* link1 num replay
*/
+ # DL1 - no_fwd_progress
(rIOOLFIR, bit(35)) ? defaultMaskedError;
/** IOOLFIR[36]
* link0 training set received
*/
+ # DL0 - training_sh
(rIOOLFIR, bit(36)) ? defaultMaskedError;
/** IOOLFIR[37]
* link1 training set received
*/
+ # DL1 - training_sh
(rIOOLFIR, bit(37)) ? defaultMaskedError;
/** IOOLFIR[38]
@@ -649,11 +665,13 @@ group gIOOLFIR
/** IOOLFIR[44]
* link0 spare done
*/
+ # DL0 - degraded_mode
(rIOOLFIR, bit(44)) ? obusSmpCallout_th32_L0;
/** IOOLFIR[45]
* link1 spare done
*/
+ # DL1 - degraded_mode
(rIOOLFIR, bit(45)) ? obusSmpCallout_th32_L1;
/** IOOLFIR[46]
@@ -669,11 +687,13 @@ group gIOOLFIR
/** IOOLFIR[48]
* link0 npu error
*/
+ # DL0 - orx_otx_dlx_errors
(rIOOLFIR, bit(48)) ? threshold_and_mask_self;
/** IOOLFIR[49]
* link1 npu error
*/
+ # DL1 - orx_otx_dlx_errors
(rIOOLFIR, bit(49)) ? threshold_and_mask_self;
/** IOOLFIR[50]
@@ -689,51 +709,75 @@ group gIOOLFIR
/** IOOLFIR[52]
* link0 correctable array error
*/
+ # DL0 - oflt_octl_frb_df_ue
+ # DL0 - oflt_octl_rpb_df_ue
+ # DL0 - ebit_10
+ # DL0 - ebit_11
(rIOOLFIR, bit(52)) ? obusSmpCallout_th32_L0;
/** IOOLFIR[53]
* link1 correctable array error
*/
+ # DL1 - oflt_octl_frb_df_ue
+ # DL1 - oflt_octl_rpb_df_ue
+ # DL1 - ebit_10
+ # DL1 - ebit_11
(rIOOLFIR, bit(53)) ? obusSmpCallout_th32_L1;
/** IOOLFIR[54]
* link0 uncorrectable array error
*/
+ # DL0 - oflt_octl_frb_cf_ue
+ # DL0 - oflt_octl_rpb_cf_ue
(rIOOLFIR, bit(54)) ? obusSmpFailure_L0;
/** IOOLFIR[55]
* link1 uncorrectable array error
*/
+ # DL1 - oflt_octl_frb_cf_ue
+ # DL1 - oflt_octl_rpb_cf_ue
(rIOOLFIR, bit(55)) ? obusSmpFailure_L1;
/** IOOLFIR[56]
* link0 training failed
*/
+ # DL0 - slower_rx_clk
(rIOOLFIR, bit(56)) ? obusSmpFailure_L0;
/** IOOLFIR[57]
* link1 training failed
*/
+ # DL1 - slower_rx_clk
(rIOOLFIR, bit(57)) ? obusSmpFailure_L1;
/** IOOLFIR[58]
* link0 unrecoverable error
*/
+ # DL0 - ACK_ptr_error
+ # DL0 - run_length_error
+ # DL0 - orx_otx_rx_ill_rl
(rIOOLFIR, bit(58)) ? obusSmpFailure_L0;
/** IOOLFIR[59]
* link1 unrecoverable error
*/
+ # DL1 - ACK_ptr_error
+ # DL1 - run_length_error
+ # DL1 - orx_otx_rx_ill_rl
(rIOOLFIR, bit(59)) ? obusSmpFailure_L1;
/** IOOLFIR[60]
* link0 internal error
*/
+ # DL0 - oflt_octl_data_pty_error
+ # DL0 - ctl_parity_error
(rIOOLFIR, bit(60)) ? obusSmpFailure_L0;
/** IOOLFIR[61]
* link1 internal error
*/
+ # DL1 - oflt_octl_data_pty_error
+ # DL1 - ctl_parity_error
(rIOOLFIR, bit(61)) ? obusSmpFailure_L1;
/** IOOLFIR[62]
diff --git a/src/usr/diag/prdf/common/plat/cumulus/cumulus_obus.rule b/src/usr/diag/prdf/common/plat/cumulus/cumulus_obus.rule
index 8c950bbc7..372029e7d 100644
--- a/src/usr/diag/prdf/common/plat/cumulus/cumulus_obus.rule
+++ b/src/usr/diag/prdf/common/plat/cumulus/cumulus_obus.rule
@@ -459,21 +459,25 @@ group gIOOLFIR
/** IOOLFIR[6]
* link0 crc error
*/
+ # DL0 - orx_otx_crc_error
(rIOOLFIR, bit(6)) ? threshold_and_mask_self;
/** IOOLFIR[7]
* link1 crc error
*/
+ # DL1 - orx_otx_crc_error
(rIOOLFIR, bit(7)) ? threshold_and_mask_self;
/** IOOLFIR[8]
* link0 nak received
*/
+ # DL0 - orx_otx_nack
(rIOOLFIR, bit(8)) ? defaultMaskedError;
/** IOOLFIR[9]
* link1 nak received
*/
+ # DL1 - orx_otx_nack
(rIOOLFIR, bit(9)) ? defaultMaskedError;
/** IOOLFIR[10]
@@ -529,21 +533,25 @@ group gIOOLFIR
/** IOOLFIR[20]
* link0 loss block align
*/
+ # DL0 - lost_block_lock
(rIOOLFIR, bit(20)) ? defaultMaskedError;
/** IOOLFIR[21]
* link1 loss block align
*/
+ # DL1 - lost_block_lock
(rIOOLFIR, bit(21)) ? defaultMaskedError;
/** IOOLFIR[22]
* link0 invalid block
*/
+ # DL0 - lost_data_sh
(rIOOLFIR, bit(22)) ? defaultMaskedError;
/** IOOLFIR[23]
* link1 invalid block
*/
+ # DL1 - lost_data_sh
(rIOOLFIR, bit(23)) ? defaultMaskedError;
/** IOOLFIR[24]
@@ -559,21 +567,25 @@ group gIOOLFIR
/** IOOLFIR[26]
* link0 deskew overflow
*/
+ # DL0 - deskew_overflow
(rIOOLFIR, bit(26)) ? defaultMaskedError;
/** IOOLFIR[27]
* link1 deskew overflow
*/
+ # DL1 - deskew_overflow
(rIOOLFIR, bit(27)) ? defaultMaskedError;
/** IOOLFIR[28]
* link0 sw retrain
*/
+ # DL0 - software_retrain
(rIOOLFIR, bit(28)) ? defaultMaskedError;
/** IOOLFIR[29]
* link1 sw retrain
*/
+ # DL1 - software_retrain
(rIOOLFIR, bit(29)) ? defaultMaskedError;
/** IOOLFIR[30]
@@ -599,21 +611,25 @@ group gIOOLFIR
/** IOOLFIR[34]
* link0 num replay
*/
+ # DL0 - no_fwd_progress
(rIOOLFIR, bit(34)) ? defaultMaskedError;
/** IOOLFIR[35]
* link1 num replay
*/
+ # DL1 - no_fwd_progress
(rIOOLFIR, bit(35)) ? defaultMaskedError;
/** IOOLFIR[36]
* link0 training set received
*/
+ # DL0 - training_sh
(rIOOLFIR, bit(36)) ? defaultMaskedError;
/** IOOLFIR[37]
* link1 training set received
*/
+ # DL1 - training_sh
(rIOOLFIR, bit(37)) ? defaultMaskedError;
/** IOOLFIR[38]
@@ -649,11 +665,13 @@ group gIOOLFIR
/** IOOLFIR[44]
* link0 spare done
*/
+ # DL0 - degraded_mode
(rIOOLFIR, bit(44)) ? obusSmpCallout_th32_L0;
/** IOOLFIR[45]
* link1 spare done
*/
+ # DL1 - degraded_mode
(rIOOLFIR, bit(45)) ? obusSmpCallout_th32_L1;
/** IOOLFIR[46]
@@ -669,11 +687,13 @@ group gIOOLFIR
/** IOOLFIR[48]
* link0 npu error
*/
+ # DL0 - orx_otx_dlx_errors
(rIOOLFIR, bit(48)) ? threshold_and_mask_self;
/** IOOLFIR[49]
* link1 npu error
*/
+ # DL1 - orx_otx_dlx_errors
(rIOOLFIR, bit(49)) ? threshold_and_mask_self;
/** IOOLFIR[50]
@@ -689,51 +709,75 @@ group gIOOLFIR
/** IOOLFIR[52]
* link0 correctable array error
*/
+ # DL0 - oflt_octl_frb_df_ue
+ # DL0 - oflt_octl_rpb_df_ue
+ # DL0 - ebit_10
+ # DL0 - ebit_11
(rIOOLFIR, bit(52)) ? obusSmpCallout_th32_L0;
/** IOOLFIR[53]
* link1 correctable array error
*/
+ # DL1 - oflt_octl_frb_df_ue
+ # DL1 - oflt_octl_rpb_df_ue
+ # DL1 - ebit_10
+ # DL1 - ebit_11
(rIOOLFIR, bit(53)) ? obusSmpCallout_th32_L1;
/** IOOLFIR[54]
* link0 uncorrectable array error
*/
+ # DL0 - oflt_octl_frb_cf_ue
+ # DL0 - oflt_octl_rpb_cf_ue
(rIOOLFIR, bit(54)) ? obusSmpFailure_L0;
/** IOOLFIR[55]
* link1 uncorrectable array error
*/
+ # DL1 - oflt_octl_frb_cf_ue
+ # DL1 - oflt_octl_rpb_cf_ue
(rIOOLFIR, bit(55)) ? obusSmpFailure_L1;
/** IOOLFIR[56]
* link0 training failed
*/
+ # DL0 - slower_rx_clk
(rIOOLFIR, bit(56)) ? obusSmpFailure_L0;
/** IOOLFIR[57]
* link1 training failed
*/
+ # DL1 - slower_rx_clk
(rIOOLFIR, bit(57)) ? obusSmpFailure_L1;
/** IOOLFIR[58]
* link0 unrecoverable error
*/
+ # DL0 - ACK_ptr_error
+ # DL0 - run_length_error
+ # DL0 - orx_otx_rx_ill_rl
(rIOOLFIR, bit(58)) ? obusSmpFailure_L0;
/** IOOLFIR[59]
* link1 unrecoverable error
*/
+ # DL1 - ACK_ptr_error
+ # DL1 - run_length_error
+ # DL1 - orx_otx_rx_ill_rl
(rIOOLFIR, bit(59)) ? obusSmpFailure_L1;
/** IOOLFIR[60]
* link0 internal error
*/
+ # DL0 - oflt_octl_data_pty_error
+ # DL0 - ctl_parity_error
(rIOOLFIR, bit(60)) ? obusSmpFailure_L0;
/** IOOLFIR[61]
* link1 internal error
*/
+ # DL1 - oflt_octl_data_pty_error
+ # DL1 - ctl_parity_error
(rIOOLFIR, bit(61)) ? obusSmpFailure_L1;
/** IOOLFIR[62]
diff --git a/src/usr/diag/prdf/common/plat/nimbus/nimbus_obus.rule b/src/usr/diag/prdf/common/plat/nimbus/nimbus_obus.rule
index a4ce0d02d..f467cf64a 100644
--- a/src/usr/diag/prdf/common/plat/nimbus/nimbus_obus.rule
+++ b/src/usr/diag/prdf/common/plat/nimbus/nimbus_obus.rule
@@ -459,21 +459,25 @@ group gIOOLFIR
/** IOOLFIR[6]
* link0 crc error
*/
+ # DL0 - orx_otx_crc_error
(rIOOLFIR, bit(6)) ? threshold_and_mask_self;
/** IOOLFIR[7]
* link1 crc error
*/
+ # DL1 - orx_otx_crc_error
(rIOOLFIR, bit(7)) ? threshold_and_mask_self;
/** IOOLFIR[8]
* link0 nak received
*/
+ # DL0 - orx_otx_nack
(rIOOLFIR, bit(8)) ? defaultMaskedError;
/** IOOLFIR[9]
* link1 nak received
*/
+ # DL1 - orx_otx_nack
(rIOOLFIR, bit(9)) ? defaultMaskedError;
/** IOOLFIR[10]
@@ -529,21 +533,25 @@ group gIOOLFIR
/** IOOLFIR[20]
* link0 loss block align
*/
+ # DL0 - lost_block_lock
(rIOOLFIR, bit(20)) ? defaultMaskedError;
/** IOOLFIR[21]
* link1 loss block align
*/
+ # DL1 - lost_block_lock
(rIOOLFIR, bit(21)) ? defaultMaskedError;
/** IOOLFIR[22]
* link0 invalid block
*/
+ # DL0 - lost_data_sh
(rIOOLFIR, bit(22)) ? defaultMaskedError;
/** IOOLFIR[23]
* link1 invalid block
*/
+ # DL1 - lost_data_sh
(rIOOLFIR, bit(23)) ? defaultMaskedError;
/** IOOLFIR[24]
@@ -559,21 +567,25 @@ group gIOOLFIR
/** IOOLFIR[26]
* link0 deskew overflow
*/
+ # DL0 - deskew_overflow
(rIOOLFIR, bit(26)) ? defaultMaskedError;
/** IOOLFIR[27]
* link1 deskew overflow
*/
+ # DL1 - deskew_overflow
(rIOOLFIR, bit(27)) ? defaultMaskedError;
/** IOOLFIR[28]
* link0 sw retrain
*/
+ # DL0 - software_retrain
(rIOOLFIR, bit(28)) ? defaultMaskedError;
/** IOOLFIR[29]
* link1 sw retrain
*/
+ # DL1 - software_retrain
(rIOOLFIR, bit(29)) ? defaultMaskedError;
/** IOOLFIR[30]
@@ -599,21 +611,25 @@ group gIOOLFIR
/** IOOLFIR[34]
* link0 num replay
*/
+ # DL0 - no_fwd_progress
(rIOOLFIR, bit(34)) ? defaultMaskedError;
/** IOOLFIR[35]
* link1 num replay
*/
+ # DL1 - no_fwd_progress
(rIOOLFIR, bit(35)) ? defaultMaskedError;
/** IOOLFIR[36]
* link0 training set received
*/
+ # DL0 - training_sh
(rIOOLFIR, bit(36)) ? defaultMaskedError;
/** IOOLFIR[37]
* link1 training set received
*/
+ # DL1 - training_sh
(rIOOLFIR, bit(37)) ? defaultMaskedError;
/** IOOLFIR[38]
@@ -649,11 +665,13 @@ group gIOOLFIR
/** IOOLFIR[44]
* link0 spare done
*/
+ # DL0 - degraded_mode
(rIOOLFIR, bit(44)) ? obusSmpCallout_th32_L0;
/** IOOLFIR[45]
* link1 spare done
*/
+ # DL1 - degraded_mode
(rIOOLFIR, bit(45)) ? obusSmpCallout_th32_L1;
/** IOOLFIR[46]
@@ -669,11 +687,13 @@ group gIOOLFIR
/** IOOLFIR[48]
* link0 npu error
*/
+ # DL0 - orx_otx_dlx_errors
(rIOOLFIR, bit(48)) ? threshold_and_mask_self;
/** IOOLFIR[49]
* link1 npu error
*/
+ # DL1 - orx_otx_dlx_errors
(rIOOLFIR, bit(49)) ? threshold_and_mask_self;
/** IOOLFIR[50]
@@ -689,51 +709,75 @@ group gIOOLFIR
/** IOOLFIR[52]
* link0 correctable array error
*/
+ # DL0 - oflt_octl_frb_df_ue
+ # DL0 - oflt_octl_rpb_df_ue
+ # DL0 - ebit_10
+ # DL0 - ebit_11
(rIOOLFIR, bit(52)) ? obusSmpCallout_th32_L0;
/** IOOLFIR[53]
* link1 correctable array error
*/
+ # DL1 - oflt_octl_frb_df_ue
+ # DL1 - oflt_octl_rpb_df_ue
+ # DL1 - ebit_10
+ # DL1 - ebit_11
(rIOOLFIR, bit(53)) ? obusSmpCallout_th32_L1;
/** IOOLFIR[54]
* link0 uncorrectable array error
*/
+ # DL0 - oflt_octl_frb_cf_ue
+ # DL0 - oflt_octl_rpb_cf_ue
(rIOOLFIR, bit(54)) ? obusSmpFailure_L0;
/** IOOLFIR[55]
* link1 uncorrectable array error
*/
+ # DL1 - oflt_octl_frb_cf_ue
+ # DL1 - oflt_octl_rpb_cf_ue
(rIOOLFIR, bit(55)) ? obusSmpFailure_L1;
/** IOOLFIR[56]
* link0 training failed
*/
+ # DL0 - slower_rx_clk
(rIOOLFIR, bit(56)) ? obusSmpFailure_L0;
/** IOOLFIR[57]
* link1 training failed
*/
+ # DL1 - slower_rx_clk
(rIOOLFIR, bit(57)) ? obusSmpFailure_L1;
/** IOOLFIR[58]
* link0 unrecoverable error
*/
+ # DL0 - ACK_ptr_error
+ # DL0 - run_length_error
+ # DL0 - orx_otx_rx_ill_rl
(rIOOLFIR, bit(58)) ? obusSmpFailure_L0;
/** IOOLFIR[59]
* link1 unrecoverable error
*/
+ # DL1 - ACK_ptr_error
+ # DL1 - run_length_error
+ # DL1 - orx_otx_rx_ill_rl
(rIOOLFIR, bit(59)) ? obusSmpFailure_L1;
/** IOOLFIR[60]
* link0 internal error
*/
+ # DL0 - oflt_octl_data_pty_error
+ # DL0 - ctl_parity_error
(rIOOLFIR, bit(60)) ? obusSmpFailure_L0;
/** IOOLFIR[61]
* link1 internal error
*/
+ # DL1 - oflt_octl_data_pty_error
+ # DL1 - ctl_parity_error
(rIOOLFIR, bit(61)) ? obusSmpFailure_L1;
/** IOOLFIR[62]
diff --git a/src/usr/diag/prdf/common/plat/p9/prdfLaneRepair.C b/src/usr/diag/prdf/common/plat/p9/prdfLaneRepair.C
index ca9508f6c..a51b94134 100644
--- a/src/usr/diag/prdf/common/plat/p9/prdfLaneRepair.C
+++ b/src/usr/diag/prdf/common/plat/p9/prdfLaneRepair.C
@@ -572,6 +572,10 @@ int32_t obus_callout_L0( ExtensibleChip * i_chip,
{
int32_t rc = SUCCESS;
+ // TODO: Temporary fix to avoid asserts for bits that are reused for
+ // OpenCAPI.
+ if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+
// Need the obus target
TargetHandle_t rxTrgt = i_chip->getTrgt();
// Call out LINK0 in SMPGROUP
@@ -589,6 +593,10 @@ int32_t obus_callout_L1( ExtensibleChip * i_chip,
{
int32_t rc = SUCCESS;
+ // TODO: Temporary fix to avoid asserts for bits that are reused for
+ // OpenCAPI.
+ if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+
// Need the obus target
TargetHandle_t rxTrgt = i_chip->getTrgt();
// Call out LINK1 in SMPGROUP
@@ -803,6 +811,10 @@ int32_t obus_fail_L0( ExtensibleChip * i_chip,
{
int32_t rc = SUCCESS;
+ // TODO: Temporary fix to avoid asserts for bits that are reused for
+ // OpenCAPI.
+ if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+
TargetHandle_t rxTrgt = i_chip->getTrgt();
TargetHandle_t txTrgt = getTxBusEndPt(rxTrgt);
@@ -836,6 +848,10 @@ int32_t obus_fail_L1( ExtensibleChip * i_chip,
{
int32_t rc = SUCCESS;
+ // TODO: Temporary fix to avoid asserts for bits that are reused for
+ // OpenCAPI.
+ if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+
TargetHandle_t rxTrgt = i_chip->getTrgt();
TargetHandle_t txTrgt = getTxBusEndPt(rxTrgt);
@@ -1022,6 +1038,10 @@ int32_t calloutBusInterface( ExtensibleChip * i_chip,
int32_t spareDeployed( ExtensibleChip * i_chip,
STEP_CODE_DATA_STRUCT & io_sc )
{
+ // TODO: Temporary fix to avoid asserts for bits that are reused for
+ // OpenCAPI.
+ if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+
if ( CHECK_STOP != io_sc.service_data->getPrimaryAttnType() )
return handleLaneRepairEvent(i_chip, io_sc, true);
else
@@ -1044,6 +1064,10 @@ PRDF_PLUGIN_DEFINE_NS( centaur_membuf, LaneRepair, spareDeployed );
int32_t maxSparesExceeded( ExtensibleChip * i_chip,
STEP_CODE_DATA_STRUCT & io_sc )
{
+ // TODO: Temporary fix to avoid asserts for bits that are reused for
+ // OpenCAPI.
+ if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+
if ( CHECK_STOP != io_sc.service_data->getPrimaryAttnType() )
return handleLaneRepairEvent(i_chip, io_sc, false);
else
@@ -1066,6 +1090,10 @@ PRDF_PLUGIN_DEFINE_NS( centaur_membuf, LaneRepair, maxSparesExceeded );
int32_t tooManyBusErrors( ExtensibleChip * i_chip,
STEP_CODE_DATA_STRUCT & io_sc )
{
+ // TODO: Temporary fix to avoid asserts for bits that are reused for
+ // OpenCAPI.
+ if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+
if ( CHECK_STOP != io_sc.service_data->getPrimaryAttnType() )
return handleLaneRepairEvent(i_chip, io_sc, false);
else
@@ -1088,6 +1116,10 @@ PRDF_PLUGIN_DEFINE_NS( centaur_membuf, LaneRepair, tooManyBusErrors );
int32_t calloutBusInterfacePlugin( ExtensibleChip * i_chip,
STEP_CODE_DATA_STRUCT & io_sc )
{
+ // TODO: Temporary fix to avoid asserts for bits that are reused for
+ // OpenCAPI.
+ if ( !obusInSmpMode(i_chip->getTrgt()) ) return SUCCESS;
+
calloutBusInterface(i_chip, io_sc, MRU_LOW);
return SUCCESS;
}
OpenPOWER on IntegriCloud