summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDean Sanner <dsanner@us.ibm.com>2017-09-15 14:52:25 -0500
committerSachin Gupta <sgupta2m@in.ibm.com>2017-09-22 07:52:19 -0400
commit3c46b699bec294a8023f5709958df62fb7d586df (patch)
tree37bddbeb375629ffcf19fef8b0a4e80395218fd5
parent9affdfc753635d3997d5db3f38127b5f011c03a5 (diff)
downloadtalos-sbe-3c46b699bec294a8023f5709958df62fb7d586df.tar.gz
talos-sbe-3c46b699bec294a8023f5709958df62fb7d586df.zip
Allow request fused mode bit when in HW fused mode
-Relax a restrictive check where the "force" fuse lab mode bit would cause a FW error even if the part is in HW fused mode (was just requesting same setting) -Check still prevents mistaken requests when in Normal core mode when lab mode can't override Change-Id: Iad710bceb90bd1bd8d988ba0234c446c63773158 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/46292 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Reviewed-by: Joachim Fenkes <fenkes@de.ibm.com> Reviewed-by: Joseph J. McGill <jmcgill@us.ibm.com> Reviewed-by: Gregory S. Still <stillgs@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/46409 Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
-rw-r--r--src/import/chips/p9/procedures/hwp/perv/p9_sbe_select_ex.C6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/import/chips/p9/procedures/hwp/perv/p9_sbe_select_ex.C b/src/import/chips/p9/procedures/hwp/perv/p9_sbe_select_ex.C
index 583a34fc..183e036a 100644
--- a/src/import/chips/p9/procedures/hwp/perv/p9_sbe_select_ex.C
+++ b/src/import/chips/p9/procedures/hwp/perv/p9_sbe_select_ex.C
@@ -222,7 +222,8 @@ fapi2::ReturnCode p9_sbe_select_ex(
}
// Check that we're not trying to force fused cores on a chip where the
- // force mechanism is disabled via eFuses */
+ // force mechanism is disabled via eFuses AND we are not already in
+ // fused mode
{
fapi2::buffer<uint64_t> l_perv_ctrl0;
fapi2::buffer<uint64_t> l_device_id_reg;
@@ -231,7 +232,8 @@ fapi2::ReturnCode p9_sbe_select_ex(
FAPI_TRY(fapi2::getScom(i_target, PERV_DEVICE_ID_REG, l_device_id_reg));
FAPI_ASSERT(!(l_perv_ctrl0.getBit<P9N2_PERV_PERV_CTRL0_TP_OTP_SCOM_FUSED_CORE_MODE>()
- && l_device_id_reg.getBit<P9N2_PERV_DEVICE_ID_REG_HW_MODE_SEL>()),
+ && l_device_id_reg.getBit<P9N2_PERV_DEVICE_ID_REG_HW_MODE_SEL>() &&
+ !l_device_id_reg.getBit<P9N2_PERV_DEVICE_ID_REG_TP_EX_FUSE_SMT8_CTYPE_EN>()),
fapi2::SBE_SELECT_EX_FORCE_FUSED_CORES_DISABLED(),
"Failed to force fused core mode because external control has been disabled via eFuses");
}
OpenPOWER on IntegriCloud