[Skiboot] [PATCH 1/2] opal-prd: Add support for runtime OCC reset in ZZ

Vasant Hegde hegdevasant at linux.vnet.ibm.com
Mon Nov 27 19:59:24 AEDT 2017


On 11/17/2017 12:52 PM, Shilpasri G Bhat wrote:
> This patch handles OCC_RESET runtime events in host opal-prd and also
> provides support for calling 'hostinterface->wakeup()' which is
> required for doing the reset operation.
>
> Signed-off-by: Shilpasri G Bhat <shilpa.bhat at linux.vnet.ibm.com>

I have one minor comment on this patch (somehow I missed this earlier). 
Otherwise patch looks good to me.

Reviewed-by: Vasant Hegde <hegdevasant at linux.vnet.ibm.com>



> ---
>  core/direct-controls.c       | 31 +++++++++++++++++++++++++++--
>  core/hostservices.c          | 30 ++++++++++++++++++++++++++++
>  external/opal-prd/opal-prd.c | 40 ++++++++++++++++++++++++++++++++++++-
>  external/opal-prd/thunk.S    |  2 +-
>  hw/occ.c                     | 47 +++++++++++++++++++++++++++++++++++++++++++-
>  hw/prd.c                     |  9 +++++++++
>  include/cpu.h                |  4 ++++
>  include/hostservices.h       |  1 +
>  include/opal-api.h           | 10 ++++++++++
>  include/skiboot.h            |  2 ++
>  10 files changed, 171 insertions(+), 5 deletions(-)
>

.../...

>
>  enum events {
>  	EVENT_ATTN	= 1 << 0,
> @@ -430,6 +431,14 @@ static int64_t opal_prd_msg(struct opal_prd_msg *msg)
>  	case OPAL_PRD_MSG_TYPE_FIRMWARE_REQUEST:
>  		rc = prd_msg_handle_firmware_req(msg);
>  		break;
> +	case OPAL_PRD_MSG_TYPE_OCC_RESET_STATUS:
> +		rc = fsp_occ_reset_status(msg->occ_reset_status.chip,
> +					  msg->occ_reset_status.status);
> +		break;
> +	case OPAL_PRD_MSG_TYPE_CORE_SPECIAL_WAKEUP:
> +		rc = hservice_wakeup_p9(msg->spl_wakeup.core,
> +					msg->spl_wakeup.mode);

Consider renaming hservice_wakeup call like below.

Looks like existing hservice_wakeup() in hostservice.c is specific to P8. So 
rename function like
	hservice_wakeup_p8 and hservice_wakeup_p9 and have global wrapper function 
hservice_wakeup().

-Vasant



More information about the Skiboot mailing list