[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAN5uoS_ab2Te6++JPAQ2UJqjdO46t=vyT2Ek0DvWG8umSibTnQ@mail.gmail.com>
Date: Tue, 19 Oct 2021 11:20:44 +0200
From: Etienne Carriere <etienne.carriere@...aro.org>
To: Rob Herring <robh@...nel.org>
Cc: linux-kernel@...r.kernel.org,
"moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE"
<linux-arm-kernel@...ts.infradead.org>,
Sudeep Holla <sudeep.holla@....com>,
Cristian Marussi <cristian.marussi@....com>,
Vincent Guittot <vincent.guittot@...aro.org>,
devicetree@...r.kernel.org
Subject: Re: [PATCH v3 1/2] dt-bindings: arm: Add OP-TEE transport for SCMI
On Mon, 18 Oct 2021 at 19:40, Rob Herring <robh@...nel.org> wrote:
>
> On Mon, Oct 18, 2021 at 01:40:45PM +0200, Etienne Carriere wrote:
> > Introduce compatible "linaro,scmi-optee" for SCMI transport channel
> > based on an OP-TEE service invocation. The compatible mandates a
> > channel ID defined with property "linaro,optee-channel-id".
> >
> > Cc: devicetree@...r.kernel.org
> > Cc: Rob Herring <robh+dt@...nel.org>
> > Signed-off-by: Etienne Carriere <etienne.carriere@...aro.org>
> > ---
> > Changes since v2:
> > - Define mandatory property linaro,optee-channel-id
> > - Rebased on yaml description file
> >
> > Changes since v1:
> > - Removed modification regarding mboxes property description.
> > ---
> > .../bindings/firmware/arm,scmi.yaml | 44 +++++++++++++++++++
> > 1 file changed, 44 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> > index 5c4c6782e052..12154ecc081b 100644
> > --- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> > +++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> > @@ -38,6 +38,9 @@ properties:
> > The virtio transport only supports a single device.
> > items:
> > - const: arm,scmi-virtio
> > + - description: SCMI compliant firmware with OP-TEE transport
> > + items:
> > + - const: linaro,scmi-optee
> >
> > interrupts:
> > description:
> > @@ -83,6 +86,11 @@ properties:
> > description:
> > SMC id required when using smc or hvc transports
> >
> > + linaro,optee-channel-id:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description:
> > + Channel id required when using OP-TEE transports
> > +
> > protocol@11:
> > type: object
> > properties:
> > @@ -195,6 +203,9 @@ patternProperties:
> > minItems: 1
> > maxItems: 2
> >
> > + linaro,optee-channel-id:
> > + maxItems: 1
>
> Why is the same property in 2 different spots? That doesn't seem ideal.
>
> Unfortunately, you have to duplicate the definition.
Property linaro,optee-channel-id for compatible linaro,scmi-optee
is like properties mboxes and shmem for compatibile arm,scmi.
There are mandated in the scmi node and are optional in its subnodes:
an scmi protocol (a subnode), can have a dedicated scmi channel.
The yaml description is expected to reflect that.
Regards,
Etienne
>
> > +
> > required:
> > - reg
> >
> > @@ -226,6 +237,16 @@ else:
> > - arm,smc-id
> > - shmem
> >
> > + else:
> > + if:
> > + properties:
> > + compatible:
> > + contains:
> > + const: linaro,scmi-optee
> > + then:
> > + required:
> > + - linaro,optee-channel-id
> > +
> > examples:
> > - |
> > firmware {
> > @@ -340,7 +361,30 @@ examples:
> > reg = <0x11>;
> > #power-domain-cells = <1>;
> > };
> > + };
> > + };
> > +
> > + - |
> > + firmware {
> > + scmi {
> > + compatible = "linaro,scmi-optee";
> > + linaro,optee-channel = <0>;
> > +
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + scmi_clk: protocol@14 {
> > + reg = <0x14>;
> > + #clock-cells = <1>;
> > + };
> > +
> > + scmi_dvfs: protocol@13 {
> > + reg = <0x13>;
> >
> > + #clock-cells = <1>;
> > + linaro,optee-channel = <1>;
> > + shmem = <&cpu_scp_hpri0>;
> > + };
> > };
> > };
> >
> > --
> > 2.17.1
> >
> >
Powered by blists - more mailing lists