Message ID | 20230707232626.374475-1-marex@denx.de |
---|---|
State | Superseded |
Headers | show |
Series | [1/2] dt-bindings: remoteproc: imx_rproc: Support i.MX8MN/P MMIO | expand |
On 7/10/23 10:13, Krzysztof Kozlowski wrote: > On 08/07/2023 01:26, Marek Vasut wrote: >> The MX8M CM7 boot via SMC call is problematic, since not all versions >> of ATF support this interface. Document MMIO support used to boot the >> CM7 on MX8MN/MP instead and discern MMIO interface using DT compatible >> string. Document GPR register syscon phandle which is required by the >> MMIO interface too. >> >> Signed-off-by: Marek Vasut <marex@denx.de> >> --- >> Note that the MMIO being discerned using compatible string is similar >> approach to "st,stm32mp1-rcc" vs "st,stm32mp1-rcc-secure". >> --- > > Same hardware should not have two compatibles, depending on the bus it is. Yes, I know, but for whatever reason the ST does, so I picked the same approach here. What else would you suggest, boolean properly like Peng wrote ? The compatible is also easier to handle on driver level, at least in Linux, see 2/2 .
On Sat, Jul 08, 2023 at 01:26:25AM +0200, Marek Vasut wrote: > The MX8M CM7 boot via SMC call is problematic, since not all versions > of ATF support this interface. Document MMIO support used to boot the > CM7 on MX8MN/MP instead and discern MMIO interface using DT compatible > string. Document GPR register syscon phandle which is required by the > MMIO interface too. > > Signed-off-by: Marek Vasut <marex@denx.de> > --- > Note that the MMIO being discerned using compatible string is similar > approach to "st,stm32mp1-rcc" vs "st,stm32mp1-rcc-secure". > --- > Cc: Bjorn Andersson <andersson@kernel.org> > Cc: Conor Dooley <conor+dt@kernel.org> > Cc: Fabio Estevam <festevam@gmail.com> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> > Cc: Mathieu Poirier <mathieu.poirier@linaro.org> > Cc: NXP Linux Team <linux-imx@nxp.com> > Cc: Peng Fan <peng.fan@nxp.com> > Cc: Pengutronix Kernel Team <kernel@pengutronix.de> > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Sascha Hauer <s.hauer@pengutronix.de> > Cc: Shawn Guo <shawnguo@kernel.org> > Cc: devicetree@vger.kernel.org > Cc: linux-arm-kernel@lists.infradead.org > Cc: linux-remoteproc@vger.kernel.org > --- > .../bindings/remoteproc/fsl,imx-rproc.yaml | 20 +++++++++++++++++++ > 1 file changed, 20 insertions(+) > > diff --git a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml > index c940199ce89df..78bb976f738ee 100644 > --- a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml > +++ b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml > @@ -20,7 +20,9 @@ properties: > - fsl,imx7ulp-cm4 > - fsl,imx8mm-cm4 > - fsl,imx8mn-cm7 > + - fsl,imx8mn-cm7-mmio > - fsl,imx8mp-cm7 > + - fsl,imx8mp-cm7-mmio > - fsl,imx8mq-cm4 > - fsl,imx8qm-cm4 > - fsl,imx8qxp-cm4 > @@ -30,6 +32,11 @@ properties: > clocks: > maxItems: 1 > > + gpr: fsl,gpr or fsl,iomuxc-gpr > + $ref: /schemas/types.yaml#/definitions/phandle > + description: > + Phandle to IOMUXC GPR block which provide access to CM7 CPUWAIT bit. > + > syscon: > $ref: /schemas/types.yaml#/definitions/phandle > description: > @@ -84,6 +91,19 @@ properties: > required: > - compatible > > +allOf: > + - if: > + properties: > + compatible: > + not: > + contains: > + enum: > + - fsl,imx8mn-cm7-mmio > + - fsl,imx8mp-cm7-mmio > + then: > + properties: > + gpr: false > + > additionalProperties: false > > examples: > -- > 2.40.1 >
diff --git a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml index c940199ce89df..78bb976f738ee 100644 --- a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml +++ b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml @@ -20,7 +20,9 @@ properties: - fsl,imx7ulp-cm4 - fsl,imx8mm-cm4 - fsl,imx8mn-cm7 + - fsl,imx8mn-cm7-mmio - fsl,imx8mp-cm7 + - fsl,imx8mp-cm7-mmio - fsl,imx8mq-cm4 - fsl,imx8qm-cm4 - fsl,imx8qxp-cm4 @@ -30,6 +32,11 @@ properties: clocks: maxItems: 1 + gpr: + $ref: /schemas/types.yaml#/definitions/phandle + description: + Phandle to IOMUXC GPR block which provide access to CM7 CPUWAIT bit. + syscon: $ref: /schemas/types.yaml#/definitions/phandle description: @@ -84,6 +91,19 @@ properties: required: - compatible +allOf: + - if: + properties: + compatible: + not: + contains: + enum: + - fsl,imx8mn-cm7-mmio + - fsl,imx8mp-cm7-mmio + then: + properties: + gpr: false + additionalProperties: false examples:
The MX8M CM7 boot via SMC call is problematic, since not all versions of ATF support this interface. Document MMIO support used to boot the CM7 on MX8MN/MP instead and discern MMIO interface using DT compatible string. Document GPR register syscon phandle which is required by the MMIO interface too. Signed-off-by: Marek Vasut <marex@denx.de> --- Note that the MMIO being discerned using compatible string is similar approach to "st,stm32mp1-rcc" vs "st,stm32mp1-rcc-secure". --- Cc: Bjorn Andersson <andersson@kernel.org> Cc: Conor Dooley <conor+dt@kernel.org> Cc: Fabio Estevam <festevam@gmail.com> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> Cc: Mathieu Poirier <mathieu.poirier@linaro.org> Cc: NXP Linux Team <linux-imx@nxp.com> Cc: Peng Fan <peng.fan@nxp.com> Cc: Pengutronix Kernel Team <kernel@pengutronix.de> Cc: Rob Herring <robh+dt@kernel.org> Cc: Sascha Hauer <s.hauer@pengutronix.de> Cc: Shawn Guo <shawnguo@kernel.org> Cc: devicetree@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org Cc: linux-remoteproc@vger.kernel.org --- .../bindings/remoteproc/fsl,imx-rproc.yaml | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+)