summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp/nest/p9_chiplet_scominit.C
diff options
context:
space:
mode:
authorJoshua Hannan <jlhannan@us.ibm.com>2017-02-16 11:25:34 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-02-21 14:14:56 -0500
commit9012fedd10eadc37fb184a3edd68818784ca377b (patch)
tree7a6058f537e69385d7bfd773ffcf065c5746e01f /src/import/chips/p9/procedures/hwp/nest/p9_chiplet_scominit.C
parent82ec1d2c0f791b3162595f2830b10a377371b03a (diff)
downloadtalos-hostboot-9012fedd10eadc37fb184a3edd68818784ca377b.tar.gz
talos-hostboot-9012fedd10eadc37fb184a3edd68818784ca377b.zip
adding sim and dd1 check to fir mask
Change-Id: I52c1758e302f03e7ea1b3f51667a7cd5e64f1c3a Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/36568 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: CHRISTINA L. GRAVES <clgraves@us.ibm.com> Reviewed-by: Thi N. Tran <thi@us.ibm.com> Tested-by: Thi N. Tran <thi@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/36725 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/nest/p9_chiplet_scominit.C')
-rw-r--r--src/import/chips/p9/procedures/hwp/nest/p9_chiplet_scominit.C24
1 files changed, 21 insertions, 3 deletions
diff --git a/src/import/chips/p9/procedures/hwp/nest/p9_chiplet_scominit.C b/src/import/chips/p9/procedures/hwp/nest/p9_chiplet_scominit.C
index f94507849..4411acd4f 100644
--- a/src/import/chips/p9/procedures/hwp/nest/p9_chiplet_scominit.C
+++ b/src/import/chips/p9/procedures/hwp/nest/p9_chiplet_scominit.C
@@ -74,8 +74,10 @@ const uint64_t FBC_IOE_DL_FIR_MASK = 0xFCFC3FFFFFFFE003ULL;
const uint64_t FBC_IOO_DL_FIR_ACTION0 = 0x0000000000000000ULL;
const uint64_t FBC_IOO_DL_FIR_ACTION1 = 0x0303C0000300FFFCULL;
-const uint64_t FBC_IOO_DL_FIR_MASK = 0xFCFC3FFFFCFF000FULL;
+const uint64_t FBC_IOO_DL_FIR_MASK = 0xFCFC3FFFFCFF000CULL;
+// link 0,1 internal errors are a simulation artifact in dd1 so they need to be masked
+const uint64_t FBC_IOO_DL_FIR_MASK_SIM_DD1 = 0xFCFC3FFFFCFF000FULL;
//------------------------------------------------------------------------------
// Function definitions
//------------------------------------------------------------------------------
@@ -90,10 +92,17 @@ fapi2::ReturnCode p9_chiplet_scominit(const fapi2::Target<fapi2::TARGET_TYPE_PRO
std::vector<fapi2::Target<fapi2::TARGET_TYPE_OBUS>> l_obus_chiplets;
std::vector<fapi2::Target<fapi2::TARGET_TYPE_MCS>> l_mcs_targets;
std::vector<fapi2::Target<fapi2::TARGET_TYPE_CAPP>> l_capp_targets;
+ uint8_t l_dd1 = 0;
+ uint8_t l_is_simulation = 0;
fapi2::ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_Type l_fbc_optics_cfg_mode = { fapi2::ENUM_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_SMP };
FAPI_DBG("Start");
+ // Get attribute to check if it is dd1 or dd2
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_P9N_DD1_SPY_NAMES, i_target, l_dd1));
+ // Get simulation indicator attribute
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_IS_SIMULATION, FAPI_SYSTEM, l_is_simulation));
+
// Get proc target string
fapi2::toString(i_target, l_procTargetStr, sizeof(l_procTargetStr));
@@ -222,8 +231,17 @@ fapi2::ReturnCode p9_chiplet_scominit(const fapi2::Target<fapi2::TARGET_TYPE_PRO
"Error from putScom (OBUS_LL0_PB_IOOL_FIR_ACTION0_REG)");
FAPI_TRY(fapi2::putScom(*l_iter, OBUS_LL0_PB_IOOL_FIR_ACTION1_REG, FBC_IOO_DL_FIR_ACTION1),
"Error from putScom (OBUS_LL0_PB_IOOL_FIR_ACTION1_REG)");
- FAPI_TRY(fapi2::putScom(*l_iter, OBUS_LL0_LL0_LL0_PB_IOOL_FIR_MASK_REG, FBC_IOO_DL_FIR_MASK),
- "Error from putScom (OBUS_LL0_LL0_LL0_PB_IOOL_FIR_MASK_REG)");
+
+ if ((l_dd1 != 0) && (l_is_simulation == 1))
+ {
+ FAPI_TRY(fapi2::putScom(*l_iter, OBUS_LL0_LL0_LL0_PB_IOOL_FIR_MASK_REG, FBC_IOO_DL_FIR_MASK_SIM_DD1),
+ "Error from putScom (OBUS_LL0_LL0_LL0_PB_IOOL_FIR_MASK_REG_SIM_DD1)");
+ }
+ else
+ {
+ FAPI_TRY(fapi2::putScom(*l_iter, OBUS_LL0_LL0_LL0_PB_IOOL_FIR_MASK_REG, FBC_IOO_DL_FIR_MASK),
+ "Error from putScom (OBUS_LL0_LL0_LL0_PB_IOOL_FIR_MASK_REG)");
+ }
}
FAPI_TRY(FAPI_ATTR_SET(fapi2::ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE, i_target, l_fbc_optics_cfg_mode),
OpenPOWER on IntegriCloud