diff options
author | Shilpasri G Bhat <shilpa.bhat@linux.vnet.ibm.com> | 2016-06-29 10:34:22 +0530 |
---|---|---|
committer | Stewart Smith <stewart@linux.vnet.ibm.com> | 2016-09-26 14:12:11 +1000 |
commit | b5e54375bdc424eb2e709d41d2306d854f7e07bb (patch) | |
tree | 57372ca141273947bf9cda55ee4fd68078eb9424 /hw/prd.c | |
parent | 583c8203dcb26b42cea81e4734ea926dae05dbb9 (diff) | |
download | skiboot-b5e54375bdc424eb2e709d41d2306d854f7e07bb.zip skiboot-b5e54375bdc424eb2e709d41d2306d854f7e07bb.tar.gz skiboot-b5e54375bdc424eb2e709d41d2306d854f7e07bb.tar.bz2 |
occ/prd/opal-prd: Queue OCC_RESET event message to host in OpenPOWER
During an OCC reset cycle the system is forced to Psafe pstate.
When OCC becomes active, the system has to be restored to its
last pstate as requested by host. So host needs to be notified
of OCC_RESET event or else system will continue to remian in
Psafe state until host requests a new pstate after the OCC
reset cycle.
This patch defines 'OPAL_PRD_MSG_TYPE_OCC_RESET_NOTIFY' to
notify OPAL when opal-prd issues OCC reset. OPAL will queue
OCC_RESET message to host when it receives opal_prd_msg of
type '*_OCC_RESET_NOTIFY'.
Signed-off-by: Shilpasri G Bhat <shilpa.bhat@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'hw/prd.c')
-rw-r--r-- | hw/prd.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -182,6 +182,7 @@ static void send_next_pending_event(void) } else if (event & EVENT_OCC_RESET) { prd_msg.hdr.type = OPAL_PRD_MSG_TYPE_OCC_RESET; prd_msg.occ_reset.chip = proc; + occ_msg_queue_occ_reset(); } queue_prd_msg(&prd_msg, prd_msg_consumed); @@ -339,6 +340,9 @@ static int64_t opal_prd_msg(struct opal_prd_msg *msg) case OPAL_PRD_MSG_TYPE_ATTN_ACK: rc = prd_msg_handle_attn_ack(msg); break; + case OPAL_PRD_MSG_TYPE_OCC_RESET_NOTIFY: + rc = occ_msg_queue_occ_reset(); + break; default: rc = OPAL_UNSUPPORTED; } |