Re: [PATCH v2 1/2] dt-bindings: firmware: arm,scmi: support parameter passing in smc/hvc

From: Sudeep Holla
Date: Tue Apr 11 2023 - 08:55:15 EST


On Mon, Apr 10, 2023 at 11:20:57AM -0700, Nikunj Kela wrote:
> Currently, smc/hvc calls are made with smc-id only. The parameters are
> all set to zeros. This patch defines two optional device tree bindings,
> that can be used to pass parameters in smc/hvc calls.
>

Why 2 values ?

> This is useful when multiple scmi instances are used with common smc-id.
>

I really would like to avoid this binding. Because of lack of standard
SMC/HVC FID for SCMI we had to add this binding. Extending for newer use
case like this in a vendor specific way is something I would like to avoid.

> Signed-off-by: Nikunj Kela <quic_nkela@xxxxxxxxxxx>
> ---
> .../devicetree/bindings/firmware/arm,scmi.yaml | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> index 5824c43e9893..ecf76b763c8c 100644
> --- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> +++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> @@ -115,6 +115,23 @@ properties:
> description:
> SMC id required when using smc or hvc transports
>
> + arm,smc32-params:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + description:
> + An optional parameter list passed in smc32 or hvc32 calls
> + default: 0
> + minItems: 1
> + maxItems: 6
> +
> + arm,smc64-params:
> + $ref: /schemas/types.yaml#/definitions/uint64-array
> + description:
> + An optional parameter list passed in smc64 or hvc64 calls.
> + This is valid only on ARM64 machines.
> + default: 0
> + minItems: 1
> + maxItems: 6
> +

Even if we end up adding(which I would very much like to avoid), I don't see
the need for 32 and 64 bit params like this. There must be ways to avoid that
used by some property in some other binding(I will look for one if we choose
this path)

--
Regards,
Sudeep