summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp/perv/p9_sbe_nest_initf.C
diff options
context:
space:
mode:
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/perv/p9_sbe_nest_initf.C')
-rw-r--r--src/import/chips/p9/procedures/hwp/perv/p9_sbe_nest_initf.C33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/import/chips/p9/procedures/hwp/perv/p9_sbe_nest_initf.C b/src/import/chips/p9/procedures/hwp/perv/p9_sbe_nest_initf.C
index ed2d87df..fc897a9b 100644
--- a/src/import/chips/p9/procedures/hwp/perv/p9_sbe_nest_initf.C
+++ b/src/import/chips/p9/procedures/hwp/perv/p9_sbe_nest_initf.C
@@ -56,6 +56,11 @@ fapi2::ReturnCode p9_sbe_nest_initf(const
bool mc23_iom01 = false;
bool mc23_iom23 = false;
#endif
+#if defined(SBE_AXONE_CONFIG) || !defined(__PPE__)
+ uint8_t l_read_attr_axone_only;
+ FAPI_DBG("Reading ATTR_CHIP_EC_FEATURE_P9A_LOGIC_ONLY\n");
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_P9A_LOGIC_ONLY, i_target_chip, l_read_attr_axone_only));
+#endif
for (auto& l_chplt_trgt : i_target_chip.getChildren<fapi2::TARGET_TYPE_PERV>(fapi2::TARGET_STATE_FUNCTIONAL))
{
@@ -192,11 +197,39 @@ fapi2::ReturnCode p9_sbe_nest_initf(const
}
}
+ // mc - Nimbus
for (auto& l_chplt_trgt : i_target_chip.getChildren<fapi2::TARGET_TYPE_MCBIST>(fapi2::TARGET_STATE_FUNCTIONAL))
{
FAPI_TRY(fapi2::putRing(l_chplt_trgt, mc_fure));
}
+ // mc - Cumulus, Axone
+ for (auto& l_chplt_trgt : i_target_chip.getChildren<fapi2::TARGET_TYPE_MC>(fapi2::TARGET_STATE_FUNCTIONAL))
+ {
+ FAPI_DBG("Scan mc_fure ring");
+ FAPI_TRY(fapi2::putRing(l_chplt_trgt, mc_fure));
+
+#if defined(SBE_AXONE_CONFIG) || !defined(__PPE__)
+
+ // Axone only
+ if (l_read_attr_axone_only)
+ {
+ FAPI_DBG("Scan mc_omi0_fure ring");
+ FAPI_TRY(fapi2::putRing(l_chplt_trgt, mc_omi0_fure));
+
+ FAPI_DBG("Scan mc_omi1_fure ring");
+ FAPI_TRY(fapi2::putRing(l_chplt_trgt, mc_omi1_fure));
+
+ FAPI_DBG("Scan mc_omi2_fure ring");
+ FAPI_TRY(fapi2::putRing(l_chplt_trgt, mc_omi2_fure));
+
+ FAPI_DBG("Scan mc_omippe_fure ring");
+ FAPI_TRY(fapi2::putRing(l_chplt_trgt, mc_omippe_fure));
+ }
+
+#endif
+ }
+
#if 0
// mcbist0
OpenPOWER on IntegriCloud