diff options
author | Greg Still <stillgs@us.ibm.com> | 2017-11-07 09:23:48 -0600 |
---|---|---|
committer | Joshua Hunsberger <jahunsbe@us.ibm.com> | 2017-11-17 14:55:57 -0600 |
commit | 42953975c749a36522ab1a42fa4619eed6fd16b4 (patch) | |
tree | 389dabc6461d7378996a6921c8bab7735365fbd6 /import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_thread_process_requests.c | |
parent | 267a2daa12c5dd2428e2d0005560bc58f460bbad (diff) | |
download | talos-hcode-42953975c749a36522ab1a42fa4619eed6fd16b4.tar.gz talos-hcode-42953975c749a36522ab1a42fa4619eed6fd16b4.zip |
PGPE/CME Hcode: Safe Pstate and STOP<>VDM Fixes
- Set OVERRIDE_PSAFE_PSTATE=0(use psafe from GPPB) (PGPE)
- Make safe Pstate be lowest frequency limit (PGPE)
- Uses POWERSAVE if the safe mode frequency is not set. Otherwise, uses the
in the general clipping equation vs the safe computation (PGPE)
- Use the correct jump field (L_S) for setting safe mode (split variables for
better understanding (HWP)
- Incorporate PGPE fix for registration doorbell acks as Safe Mode exacerbated
a STOP 11 Quad Manager Registration timing window
- Fix CME DB0 ack window upon before QM registration
- Fix PGPE auto mode for Cronus
- Put CME Pstate analog update and Next Pstate update in critical section
to fix testing issues
Key_Cronus_Test=PM_REGRESS
Change-Id: I10388e288251d9915a5dc0b38a9424747524ea17
CQ: SW405402
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/49372
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Brian T. Vanderpool <vanderp@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: RANGANATHPRASAD G. BRAHMASAMUDRA <prasadbgr@in.ibm.com>
Tested-by: Cronus HW CI <cronushw-ci+hostboot@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Diffstat (limited to 'import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_thread_process_requests.c')
-rw-r--r-- | import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_thread_process_requests.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_thread_process_requests.c b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_thread_process_requests.c index 402297cf..8e164eb8 100644 --- a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_thread_process_requests.c +++ b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_thread_process_requests.c @@ -1019,7 +1019,7 @@ void p9_pgpe_process_registration() db0_clip_bcast.fields.quad3_clip = G_pgpe_pstate_record.psClipMax[3]; db0_clip_bcast.fields.quad4_clip = G_pgpe_pstate_record.psClipMax[4]; db0_clip_bcast.fields.quad5_clip = G_pgpe_pstate_record.psClipMax[5]; - p9_pgpe_send_db0(db0_clip_bcast.value, unicastCoresVector, PGPE_DB0_UNICAST, PGPE_DB0_ACK_WAIT_CME, 0); + p9_pgpe_send_db0(db0_clip_bcast.value, unicastCoresVector, PGPE_DB0_UNICAST, PGPE_DB0_ACK_WAIT_CME, quadAckExpect); db0_clip_bcast.value = 0; db0_clip_bcast.fields.msg_id = MSGID_DB0_CLIP_BROADCAST; @@ -1030,7 +1030,7 @@ void p9_pgpe_process_registration() db0_clip_bcast.fields.quad3_clip = G_pgpe_pstate_record.psClipMin[3]; db0_clip_bcast.fields.quad4_clip = G_pgpe_pstate_record.psClipMin[4]; db0_clip_bcast.fields.quad5_clip = G_pgpe_pstate_record.psClipMin[5]; - p9_pgpe_send_db0(db0_clip_bcast.value, unicastCoresVector, PGPE_DB0_UNICAST, PGPE_DB0_ACK_WAIT_CME, 0); + p9_pgpe_send_db0(db0_clip_bcast.value, unicastCoresVector, PGPE_DB0_UNICAST, PGPE_DB0_ACK_WAIT_CME, quadAckExpect); //Send Pstate Start DB0 to all quads that registered db0_glb_bcast.value = 0; |