summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYue Du <daviddu@us.ibm.com>2017-10-18 16:22:44 -0500
committerJoshua Hunsberger <jahunsbe@us.ibm.com>2017-11-17 15:05:49 -0600
commitca23decaa3e9f2385bdf5486338dacd8b9031597 (patch)
tree81d07bd1011ba6faf4abc282097f44efc9357122
parentefb93c35defb123dd4fb0aff79aef12e51272d33 (diff)
downloadtalos-hcode-ca23decaa3e9f2385bdf5486338dacd8b9031597.tar.gz
talos-hcode-ca23decaa3e9f2385bdf5486338dacd8b9031597.zip
STOP: Clear OCC LFIR and CME LFIR halted bits on PPE boots
Change-Id: Ic59752c6896ef88857cdbb912e2d368845c11f89 Original-Change-Id: I60649b9d924414038c3575ee65985cb93e0c060c CQ: SW406206 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/48596 Reviewed-by: Michael S. Floyd <mfloyd@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Gregory S. Still <stillgs@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
-rw-r--r--import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_main.c3
-rw-r--r--import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_sgpe_boot_cme.c4
2 files changed, 7 insertions, 0 deletions
diff --git a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_main.c b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_main.c
index aa016191..38f5b010 100644
--- a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_main.c
+++ b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_main.c
@@ -190,6 +190,9 @@ main(int argc, char** argv)
asm volatile ("trap");
}
+ // Clear OCC LFIR[24] (gpe2_halted) bit upon PGPE boot
+ GPE_PUTSCOM(OCB_OCCLFIR_AND, ~BIT64(24));
+
// Initialize the thread control block for G_p9_pgpe_thread_process_requests
pk_thread_create(&G_p9_pgpe_thread_process_requests,
(PkThreadRoutine)p9_pgpe_thread_process_requests,
diff --git a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_sgpe_boot_cme.c b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_sgpe_boot_cme.c
index 5303636c..5e2df674 100644
--- a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_sgpe_boot_cme.c
+++ b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_sgpe_boot_cme.c
@@ -385,6 +385,10 @@ BootErrorCode_t boot_cme( uint16_t i_bootCme )
continue;
}
+ // Clear CME LFIR[5] (ppe_halted) upon respective CME boot
+ GPE_PUTSCOM(GPE_SCOM_ADDR_CME(CME_SCOM_LFIR_AND,
+ (l_cmeIndex >> 1), (l_cmeIndex % 2)), ~BIT64(5));
+
#if (NIMBUS_DD_LEVEL < 21 || CUMULUS_DD_LEVEL == 10) || DISABLE_STOP8 == 1
if(l_dataReg & BIT64(CME_FLAGS_RCLK_OPERABLE))
OpenPOWER on IntegriCloud