On Wed, May 06, 2020 at 05:44:09PM +0100, Sudeep Holla wrote:
> In order to add newer SMCCC v1.1+ functionality and to avoid cluttering
> PSCI firmware driver with SMCCC bits, let us move the SMCCC specific
> details under drivers/firmware/smccc/smccc.c
> 
> We can also drop conduit and smccc_version from psci_operations structure
> as SMCCC was the sole user and now it maintains those.
> 
> No functionality change in this patch though.
> 
> Signed-off-by: Sudeep Holla <[email protected]>
> ---
>  MAINTAINERS                     |  9 +++++++++
>  drivers/firmware/Makefile       |  3 ++-
>  drivers/firmware/psci/psci.c    | 19 ++++---------------
>  drivers/firmware/smccc/Makefile |  3 +++
>  drivers/firmware/smccc/smccc.c  | 26 ++++++++++++++++++++++++++
>  include/linux/arm-smccc.h       | 11 +++++++++++
>  include/linux/psci.h            |  2 --
>  7 files changed, 55 insertions(+), 18 deletions(-)
>  create mode 100644 drivers/firmware/smccc/Makefile
>  create mode 100644 drivers/firmware/smccc/smccc.c
> 
> Hi Mark, Lorenzo,
> 
> I have replicated PSCI entry in MAINTAINERS file and added myself to
> for SMCCC entry. If you prefer I can merge it under PSCI. Let me know
> your preference along with other review comments.

> +SECURE MONITOR CALL(SMC) CALLING CONVENTION (SMCCC)
> +M:   Mark Rutland <[email protected]>
> +M:   Lorenzo Pieralisi <[email protected]>
> +M:   Sudeep Holla <[email protected]>
> +L:   [email protected]
> +S:   Maintained
> +F:   drivers/firmware/smccc/
> +F:   include/linux/arm-smccc.h

As per the above, I'm fine with having this separate from the PSCI
entry, and I'm fine with sharing this maintainership.

> diff --git a/include/linux/arm-smccc.h b/include/linux/arm-smccc.h

> +/**
> + * arm_smccc_version_init() - Sets SMCCC version and conduit
> + * @version: SMCCC version v1.1 or above
> + * @conduit: SMCCC_CONDUIT_SMC or SMCCC_CONDUIT_HVC
> + *
> + * When SMCCCv1.1 or above is not present, defaults to ARM_SMCCC_VERSION_1_0
> + * and SMCCC_CONDUIT_NONE respectively.
> + */
> +void __init arm_smccc_version_init(u32 version, enum arm_smccc_conduit 
> conduit);

Given we only expect the PSCI code to call this, could we avoid putting
this in a header and just define it within psci.c?

Either way:

Acked-by: Mark Rutland <[email protected]>

Thanks,
Mark.

Reply via email to