summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcrgeddes <crgeddes@us.ibm.com>2017-08-17 15:40:12 -0500
committerSachin Gupta <sgupta2m@in.ibm.com>2017-08-18 21:47:40 -0400
commit35f762935b3f898e6cca58431a12ecf49ffd9a2f (patch)
treeb8ca2b3f697ed5c9d641e3556c7ae8d34583526d
parent4a621260c91e04eae8c44894d32a6aeda53c5c54 (diff)
downloadtalos-sbe-35f762935b3f898e6cca58431a12ecf49ffd9a2f.tar.gz
talos-sbe-35f762935b3f898e6cca58431a12ecf49ffd9a2f.zip
Clear disable_ppm_writes bit on CPPM register prior to setting PFDLY
We were hitting problems in the MPIPL path where this bit was set causing scom writes to the PFDLY register to fail CQ: SW398564 Change-Id: Idd13cb3b8fe2ba90fceb37c330f06adcf11a44ad Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/44759 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Reviewed-by: YUE DU <daviddu@us.ibm.com> Reviewed-by: Gregory S. Still <stillgs@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/44774 Reviewed-by: Hostboot Team <hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
-rw-r--r--src/import/chips/p9/procedures/hwp/perv/p9_sbe_select_ex.C7
-rw-r--r--src/import/chips/p9/procedures/hwp/perv/p9_sbe_select_ex.H1
2 files changed, 8 insertions, 0 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..9fe395df 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
@@ -378,6 +378,13 @@ fapi2::ReturnCode p9_sbe_select_ex(
FAPI_DBG("Scoreboard values for OCC: Core 0x%016llX EX 0x%016llX",
l_core_config, l_quad_config);
+ // Prior to writing to PFET_DELAY register, ensure that the PPM write disable
+ // bit on the Core Power Management Mode Register is cleared
+ FAPI_DBG("Clearing WRITE_DISABLE bit in core %d", l_core_num);
+ l_data64.flush<0>().setBit<C_CPPM_CPMMR_PPM_WRITE_DISABLE>();
+
+ FAPI_TRY(fapi2::putScom(core, C_CPPM_CPMMR_CLEAR , l_data64));
+
// Write the default PFET Controller Delay values for the Core
// as it will be used for istep 4
FAPI_DBG("Setting PFET Delays in core %d", l_core_num);
diff --git a/src/import/chips/p9/procedures/hwp/perv/p9_sbe_select_ex.H b/src/import/chips/p9/procedures/hwp/perv/p9_sbe_select_ex.H
index 15efd37c..7a09e03c 100644
--- a/src/import/chips/p9/procedures/hwp/perv/p9_sbe_select_ex.H
+++ b/src/import/chips/p9/procedures/hwp/perv/p9_sbe_select_ex.H
@@ -46,6 +46,7 @@
#include <p9_quad_scom_addresses.H>
#include <p9_perv_scom_addresses.H>
#include <p9n2_perv_scom_addresses_fld.H>
+#include <p9_quad_scom_addresses_fld.H>
namespace p9selectex
{
OpenPOWER on IntegriCloud