Hi Daniel, On Mon, Jun 16, 2025 at 04:07:02PM +0300, Daniel Baluta wrote: >On Fri, Jun 6, 2025 at 4:57???AM Peng Fan (OSS) <peng....@oss.nxp.com> wrote: >> >> From: Peng Fan <peng....@nxp.com> >> >> i.MX95 has a System Manager(SM) core runs the System Control Management >> Interface(SCMI) firmware. Vendor extenions are implemented in the >> firmware, Logical Machine Management(LMM) protocol to manage >> Logical Machines and CPU protocol to manage cores. The documentation >> could be found in file drivers/firmware/arm_scmi/vendors/imx/imx95.rst. >> >> Add below to support i.MX95 >> - compatible string for i.MX95 M7 >> - fsl,lmm-id to indicate the LMM ID of M7 LM >> - fsl,cpu-id to indicate the CPU ID of M7 >> >> Signed-off-by: Peng Fan <peng....@nxp.com> >> --- >> .../bindings/remoteproc/fsl,imx-rproc.yaml | 27 >> ++++++++++++++++++++++ >> 1 file changed, 27 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml >> b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml >> index >> 57d75acb0b5e52ca49d1361176fdebc18a0bf7a2..a3ffab60df52be6f1d7cf4846ca5ba1c40f03bde >> 100644 >> --- a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml >> +++ b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml >> @@ -28,6 +28,7 @@ properties: >> - fsl,imx8qxp-cm4 >> - fsl,imx8ulp-cm33 >> - fsl,imx93-cm33 >> + - fsl,imx95-cm7 >> >> clocks: >> maxItems: 1 >> @@ -68,6 +69,12 @@ properties: >> Indicate whether need to load the default firmware and start the >> remote >> processor automatically. >> >> + fsl,cpu-id: >> + $ref: /schemas/types.yaml#/definitions/uint32 >> + description: >> + This property is to specify the CPU ID of the remote processor >> + in SoC which supports System Manager >> + >> fsl,entry-address: >> $ref: /schemas/types.yaml#/definitions/uint32 >> description: >> @@ -78,6 +85,12 @@ properties: >> description: >> Phandle to IOMUXC GPR block which provide access to CM7 CPUWAIT bit. >> >> + fsl,lmm-id: >> + $ref: /schemas/types.yaml#/definitions/uint32 >> + description: >> + This property is to specify the Logical Machine ID of the remote >> processor >> + in SoC which supports System Manager >> + >> fsl,resource-id: >> $ref: /schemas/types.yaml#/definitions/uint32 >> description: >> @@ -114,6 +127,20 @@ allOf: >> properties: >> power-domains: false >> >> + - if: >> + properties: >> + compatible: >> + contains: >> + const: fsl,imx95-cm7 >> + then: >> + required: >> + - fsl,lmm-id >> + - fsl,cpu-id >> + else: >> + properties: >> + fsl,lmm-id: false >> + fsl,cpu-id: false > >Hi Peng, > >Can you remind me why do we need the else branch here? > >I mean if the compatible is not fsl,imx95-cm7 then the properties >fsl,lmm-id and fsl,cpu-id are not required and I think that's fine.
It is not required, but we should also block others wrongly add the properties. Such as dt-schema should report error if user wrongly add these properties in DTS. DT maintainers may help comment more. Thanks, Peng