summaryrefslogtreecommitdiffstats
path: root/src/import/chips
diff options
context:
space:
mode:
authorYue Du <daviddu@us.ibm.com>2017-03-28 22:41:39 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-04-05 14:03:01 -0400
commitb422d4419f9ba1bd076532e455d1cf29da37f411 (patch)
treeb992242bd315344b9f46bd94ec6546bf050e46d3 /src/import/chips
parent7d82159434d84d6fe06c2c8210a35595dbe2b378 (diff)
downloadtalos-hostboot-b422d4419f9ba1bd076532e455d1cf29da37f411.tar.gz
talos-hostboot-b422d4419f9ba1bd076532e455d1cf29da37f411.zip
STOP: move DPLL setup to SGPE init
CMVC-Coreq: 1021028 CMVC-Prereq:1021177 Change-Id: Ie83b057061d5a8db3f3945775f11da201fb18998 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/38561 Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Reviewed-by: Michael S. Floyd <mfloyd@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: AMIT KUMAR <akumar3@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/38565 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')
-rw-r--r--src/import/chips/p9/procedures/hwp/pm/p9_pm_stop_gpe_init.C22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/import/chips/p9/procedures/hwp/pm/p9_pm_stop_gpe_init.C b/src/import/chips/p9/procedures/hwp/pm/p9_pm_stop_gpe_init.C
index f4e9a85d5..ca477bbb3 100644
--- a/src/import/chips/p9/procedures/hwp/pm/p9_pm_stop_gpe_init.C
+++ b/src/import/chips/p9/procedures/hwp/pm/p9_pm_stop_gpe_init.C
@@ -182,6 +182,28 @@ fapi2::ReturnCode p9_pm_stop_gpe_init(
.set_MODE(p9pm::PM_RESET),
"PBA setup failed");
+ // Initialize DPLL Mode and Slew Rate (Done once for runtime STOPs)
+ // Hostboot Master is done in istep4 hwp prior to this
+ uint8_t l_quad_number = 0;
+ fapi2::buffer<uint64_t> l_data64 = 0;
+
+ auto l_functional_quad_vector =
+ i_target.getChildren<fapi2::TARGET_TYPE_EQ>
+ (fapi2::TARGET_STATE_FUNCTIONAL);
+
+ for(auto l_chplt_trgt : l_functional_quad_vector)
+ {
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_UNIT_POS,
+ l_chplt_trgt,
+ l_quad_number),
+ "ERROR: Failed to get the position of the QUAD:0x%08X",
+ l_chplt_trgt);
+ FAPI_DBG("QUAD number = %d", l_quad_number);
+ l_data64.flush<0>().setBit<2>().insertFromRight<6, 10>(0x01);
+ FAPI_TRY(putScom(l_chplt_trgt, EQ_QPPM_DPLL_CTRL_OR, l_data64),
+ "ERROR: Failed to assert DPLL in mode 1 and set slew rate to 1");
+ }
+
// Boot the STOP GPE
FAPI_TRY(stop_gpe_init(i_target), "ERROR: failed to initialize Stop GPE");
OpenPOWER on IntegriCloud