summaryrefslogtreecommitdiffstats
path: root/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_pstate.c
diff options
context:
space:
mode:
authorRahul Batra <rbatra@us.ibm.com>2018-03-20 15:47:52 -0500
committerhostboot <hostboot@us.ibm.com>2018-04-13 09:17:49 -0500
commit6127d105431fc13ce8a61f8d7262c6add47193dd (patch)
tree85609b2395e71e3ed8d0b4fafb887ea13020be41 /import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_pstate.c
parent46385e17566c4e12c914414dd0608889d15a798e (diff)
downloadtalos-hcode-6127d105431fc13ce8a61f8d7262c6add47193dd.tar.gz
talos-hcode-6127d105431fc13ce8a61f8d7262c6add47193dd.zip
PGPE: Fixes PGPE Halt when Pstate STOP req through OCCFLG
Key_Cronus_Test=PM_REGRESS Change-Id: Ic709c5b68d1fcfdee92fcb463f4ce3bb19a98f6d CQ: SW421750 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56108 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Adam S. Hale <adam.samuel.hale@ibm.com> Tested-by: Cronus HW CI <cronushw-ci+hostboot@us.ibm.com> Reviewed-by: YUE DU <daviddu@us.ibm.com> Reviewed-by: Gregory S. Still <stillgs@us.ibm.com>
Diffstat (limited to 'import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_pstate.c')
-rw-r--r--import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_pstate.c10
1 files changed, 1 insertions, 9 deletions
diff --git a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_pstate.c b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_pstate.c
index 920adad8..69219866 100644
--- a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_pstate.c
+++ b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_pstate.c
@@ -1047,6 +1047,7 @@ void p9_pgpe_pstate_stop()
}
}
+ //Send PSTATE_STOP DB0
p.db0val = db0_stop.value;
p.type = PGPE_DB0_TYPE_UNICAST;
p.targetCores = G_pgpe_pstate_record.activeDB;
@@ -1059,17 +1060,8 @@ void p9_pgpe_pstate_stop()
uint32_t occScr2 = in32(OCB_OCCS2);
occScr2 &= ~BIT32(PGPE_PSTATE_PROTOCOL_ACTIVE);
out32(OCB_OCCS2, occScr2);
-
G_pgpe_pstate_record.pstatesStatus = PSTATE_STOPPED;
- //ACK back to OCC
- ipc_async_cmd_t* async_cmd = (ipc_async_cmd_t*)G_pgpe_pstate_record.ipcPendTbl[IPC_PEND_PSTATE_START_STOP].cmd;
- ipcmsg_start_stop_t* args = (ipcmsg_start_stop_t*)async_cmd->cmd_data;
- args->msg_cb.rc = PGPE_RC_SUCCESS;
- G_pgpe_pstate_record.ipcPendTbl[IPC_PEND_PSTATE_START_STOP].pending_processing = 0;
- G_pgpe_pstate_record.ipcPendTbl[IPC_PEND_PSTATE_START_STOP].pending_ack = 0;
- ipc_send_rsp(G_pgpe_pstate_record.ipcPendTbl[IPC_PEND_PSTATE_START_STOP].cmd, IPC_RC_SUCCESS);
-
G_pgpe_optrace_data.word[0] = (START_STOP_FLAG << 24) | (G_pgpe_pstate_record.psComputed.fields.glb << 16)
| (in32(OCB_QCSR) >> 16);
p9_pgpe_optrace(PRC_START_STOP);
OpenPOWER on IntegriCloud