diff mbox series

[01/22] dt-bindings: gpio: fsl-imx-gpio: Add i.MX 8 compatibles

Message ID 20200823161550.3981-1-krzk@kernel.org
State Superseded, archived
Headers show
Series [01/22] dt-bindings: gpio: fsl-imx-gpio: Add i.MX 8 compatibles | expand

Checks

Context Check Description
robh/checkpatch warning total: 0 errors, 1 warnings, 27 lines checked
robh/dt-meta-schema success

Commit Message

Krzysztof Kozlowski Aug. 23, 2020, 4:15 p.m. UTC
DTSes with new i.MX 8 SoCs introduce their own compatibles so add them
to fix dtbs_check warnings like:

  arch/arm64/boot/dts/freescale/imx8mm-evk.dt.yaml: gpio@30200000:
    compatible:0: 'fsl,imx8mm-gpio' is not one of ['fsl,imx1-gpio', 'fsl,imx21-gpio', 'fsl,imx31-gpio', 'fsl,imx35-gpio', 'fsl,imx7d-gpio']
    From schema: Documentation/devicetree/bindings/gpio/fsl-imx-gpio.yaml

  arch/arm64/boot/dts/freescale/imx8mm-evk.dt.yaml: gpio@30200000:
    compatible: ['fsl,imx8mm-gpio', 'fsl,imx35-gpio'] is too long

  arch/arm64/boot/dts/freescale/imx8mm-evk.dt.yaml: gpio@30200000:
    compatible: Additional items are not allowed ('fsl,imx35-gpio' was unexpected)

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
---
 .../bindings/gpio/fsl-imx-gpio.yaml           | 21 +++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

Comments

Dong Aisheng Aug. 24, 2020, 9 a.m. UTC | #1
> From: Krzysztof Kozlowski <krzk@kernel.org>
> Sent: Monday, August 24, 2020 12:16 AM
> 
> The USDHC on i.MX 8QXP has its own compatible described in bindings and
> used in the driver (with its own quirks).  Remove additional fsl,imx7d-usdhc
> compatible to fix dtbs_check warnings like:
> 
>   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml: mmc@5b010000:
>     compatible: ['fsl,imx8qxp-usdhc', 'fsl,imx7d-usdhc'] is too long
>     From schema:
> /ocumentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml
> 
>   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml: mmc@5b010000:
>     compatible: Additional items are not allowed ('fsl,imx7d-usdhc' was
> unexpected)
> 
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>

For Patch 19-22, I think we should fix dt binding doc.

Regards
Aisheng

> ---
>  arch/arm64/boot/dts/freescale/imx8qxp.dtsi | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> index 61bccb69f09e..26c4fcdfe290 100644
> --- a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> @@ -362,7 +362,7 @@
>  		};
> 
>  		usdhc1: mmc@5b010000 {
> -			compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> +			compatible = "fsl,imx8qxp-usdhc";
>  			interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_HIGH>;
>  			reg = <0x5b010000 0x10000>;
>  			clocks = <&conn_lpcg IMX_CONN_LPCG_SDHC0_IPG_CLK>, @@
> -374,7 +374,7 @@
>  		};
> 
>  		usdhc2: mmc@5b020000 {
> -			compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> +			compatible = "fsl,imx8qxp-usdhc";
>  			interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
>  			reg = <0x5b020000 0x10000>;
>  			clocks = <&conn_lpcg IMX_CONN_LPCG_SDHC1_IPG_CLK>, @@
> -388,7 +388,7 @@
>  		};
> 
>  		usdhc3: mmc@5b030000 {
> -			compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> +			compatible = "fsl,imx8qxp-usdhc";
>  			interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>;
>  			reg = <0x5b030000 0x10000>;
>  			clocks = <&conn_lpcg IMX_CONN_LPCG_SDHC2_IPG_CLK>,
> --
> 2.17.1
Krzysztof Kozlowski Aug. 24, 2020, 9:11 a.m. UTC | #2
On Mon, Aug 24, 2020 at 09:00:19AM +0000, Aisheng Dong wrote:
> > From: Krzysztof Kozlowski <krzk@kernel.org>
> > Sent: Monday, August 24, 2020 12:16 AM
> > 
> > The USDHC on i.MX 8QXP has its own compatible described in bindings and
> > used in the driver (with its own quirks).  Remove additional fsl,imx7d-usdhc
> > compatible to fix dtbs_check warnings like:
> > 
> >   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml: mmc@5b010000:
> >     compatible: ['fsl,imx8qxp-usdhc', 'fsl,imx7d-usdhc'] is too long
> >     From schema:
> > /ocumentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml
> > 
> >   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml: mmc@5b010000:
> >     compatible: Additional items are not allowed ('fsl,imx7d-usdhc' was
> > unexpected)
> > 
> > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> 
> For Patch 19-22, I think we should fix dt binding doc.

Are you sure that these USDHC controllers are compatible with i.MX 7D?
Could they really run with fsl,imx7d-usdhc compatible?

The implementation (Linux kernel driver) is different, I guess on
purpose...

Best regards,
Krzysztof

> 
> Regards
> Aisheng
> 
> > ---
> >  arch/arm64/boot/dts/freescale/imx8qxp.dtsi | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> > 
> > diff --git a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > index 61bccb69f09e..26c4fcdfe290 100644
> > --- a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > +++ b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > @@ -362,7 +362,7 @@
> >  		};
> > 
> >  		usdhc1: mmc@5b010000 {
> > -			compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > +			compatible = "fsl,imx8qxp-usdhc";
> >  			interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_HIGH>;
> >  			reg = <0x5b010000 0x10000>;
> >  			clocks = <&conn_lpcg IMX_CONN_LPCG_SDHC0_IPG_CLK>, @@
> > -374,7 +374,7 @@
> >  		};
> > 
> >  		usdhc2: mmc@5b020000 {
> > -			compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > +			compatible = "fsl,imx8qxp-usdhc";
> >  			interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
> >  			reg = <0x5b020000 0x10000>;
> >  			clocks = <&conn_lpcg IMX_CONN_LPCG_SDHC1_IPG_CLK>, @@
> > -388,7 +388,7 @@
> >  		};
> > 
> >  		usdhc3: mmc@5b030000 {
> > -			compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > +			compatible = "fsl,imx8qxp-usdhc";
> >  			interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>;
> >  			reg = <0x5b030000 0x10000>;
> >  			clocks = <&conn_lpcg IMX_CONN_LPCG_SDHC2_IPG_CLK>,
> > --
> > 2.17.1
>
Dong Aisheng Aug. 24, 2020, 9:45 a.m. UTC | #3
On Mon, Aug 24, 2020 at 5:15 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> On Mon, Aug 24, 2020 at 09:00:19AM +0000, Aisheng Dong wrote:
> > > From: Krzysztof Kozlowski <krzk@kernel.org>
> > > Sent: Monday, August 24, 2020 12:16 AM
> > >
> > > The USDHC on i.MX 8QXP has its own compatible described in bindings and
> > > used in the driver (with its own quirks).  Remove additional fsl,imx7d-usdhc
> > > compatible to fix dtbs_check warnings like:
> > >
> > >   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml: mmc@5b010000:
> > >     compatible: ['fsl,imx8qxp-usdhc', 'fsl,imx7d-usdhc'] is too long
> > >     From schema:
> > > /ocumentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml
> > >
> > >   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml: mmc@5b010000:
> > >     compatible: Additional items are not allowed ('fsl,imx7d-usdhc' was
> > > unexpected)
> > >
> > > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> >
> > For Patch 19-22, I think we should fix dt binding doc.
>
> Are you sure that these USDHC controllers are compatible with i.MX 7D?
> Could they really run with fsl,imx7d-usdhc compatible?

AFAIK uSDHC on QXP is derived from the former platforms with adding a few
more new features. e.g. HS400ES/CMDQ.
Let me loop in uSDHC driver owner Haibo Chen to double confirm.

Regards
Aisheng

> The implementation (Linux kernel driver) is different, I guess on
> purpose...
>
> Best regards,
> Krzysztof
>
> >
> > Regards
> > Aisheng
> >
> > > ---
> > >  arch/arm64/boot/dts/freescale/imx8qxp.dtsi | 6 +++---
> > >  1 file changed, 3 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > > b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > > index 61bccb69f09e..26c4fcdfe290 100644
> > > --- a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > > +++ b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > > @@ -362,7 +362,7 @@
> > >             };
> > >
> > >             usdhc1: mmc@5b010000 {
> > > -                   compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > > +                   compatible = "fsl,imx8qxp-usdhc";
> > >                     interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_HIGH>;
> > >                     reg = <0x5b010000 0x10000>;
> > >                     clocks = <&conn_lpcg IMX_CONN_LPCG_SDHC0_IPG_CLK>, @@
> > > -374,7 +374,7 @@
> > >             };
> > >
> > >             usdhc2: mmc@5b020000 {
> > > -                   compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > > +                   compatible = "fsl,imx8qxp-usdhc";
> > >                     interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
> > >                     reg = <0x5b020000 0x10000>;
> > >                     clocks = <&conn_lpcg IMX_CONN_LPCG_SDHC1_IPG_CLK>, @@
> > > -388,7 +388,7 @@
> > >             };
> > >
> > >             usdhc3: mmc@5b030000 {
> > > -                   compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > > +                   compatible = "fsl,imx8qxp-usdhc";
> > >                     interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>;
> > >                     reg = <0x5b030000 0x10000>;
> > >                     clocks = <&conn_lpcg IMX_CONN_LPCG_SDHC2_IPG_CLK>,
> > > --
> > > 2.17.1
> >
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Dong Aisheng Aug. 24, 2020, 10:30 a.m. UTC | #4
On Mon, Aug 24, 2020 at 6:32 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> On Mon, Aug 24, 2020 at 10:31:31AM +0000, Bough Chen wrote:
> > > -----Original Message-----
> > > From: Dong Aisheng [mailto:dongas86@gmail.com]
> > > Sent: 2020年8月24日 17:45
> > > To: Krzysztof Kozlowski <krzk@kernel.org>
> > > Cc: Aisheng Dong <aisheng.dong@nxp.com>; devicetree@vger.kernel.org;
> > > linux-serial@vger.kernel.org; Anson Huang <anson.huang@nxp.com>;
> > > linux-gpio@vger.kernel.org; Fabio Estevam <festevam@gmail.com>; Linus
> > > Walleij <linus.walleij@linaro.org>; linux-pm@vger.kernel.org;
> > > linux-mmc@vger.kernel.org; linux-kernel@vger.kernel.org;
> > > linux-pwm@vger.kernel.org; Bartosz Golaszewski
> > > <bgolaszewski@baylibre.com>; Rob Herring <robh+dt@kernel.org>;
> > > linux-mtd@lists.infradead.org; dl-linux-imx <linux-imx@nxp.com>; Pengutronix
> > > Kernel Team <kernel@pengutronix.de>; Thierry Reding
> > > <thierry.reding@gmail.com>; Shawn Guo <shawnguo@kernel.org>; Sascha
> > > Hauer <s.hauer@pengutronix.de>; linux-arm-kernel@lists.infradead.org;
> > > linux-watchdog@vger.kernel.org; Bough Chen <haibo.chen@nxp.com>
> > > Subject: Re: [PATCH 21/22] arm64: dts: imx8qxp: Remove i.MX7 compatible
> > > from USDHC
> > >
> > > On Mon, Aug 24, 2020 at 5:15 PM Krzysztof Kozlowski <krzk@kernel.org>
> > > wrote:
> > > >
> > > > On Mon, Aug 24, 2020 at 09:00:19AM +0000, Aisheng Dong wrote:
> > > > > > From: Krzysztof Kozlowski <krzk@kernel.org>
> > > > > > Sent: Monday, August 24, 2020 12:16 AM
> > > > > >
> > > > > > The USDHC on i.MX 8QXP has its own compatible described in
> > > > > > bindings and used in the driver (with its own quirks).  Remove
> > > > > > additional fsl,imx7d-usdhc compatible to fix dtbs_check warnings like:
> > > > > >
> > > > > >   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml:
> > > mmc@5b010000:
> > > > > >     compatible: ['fsl,imx8qxp-usdhc', 'fsl,imx7d-usdhc'] is too long
> > > > > >     From schema:
> > > > > > /ocumentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml
> > > > > >
> > > > > >   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml:
> > > mmc@5b010000:
> > > > > >     compatible: Additional items are not allowed
> > > > > > ('fsl,imx7d-usdhc' was
> > > > > > unexpected)
> > > > > >
> > > > > > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> > > > >
> > > > > For Patch 19-22, I think we should fix dt binding doc.
> > > >
> > > > Are you sure that these USDHC controllers are compatible with i.MX 7D?
> > > > Could they really run with fsl,imx7d-usdhc compatible?
> > >
> > > AFAIK uSDHC on QXP is derived from the former platforms with adding a few
> > > more new features. e.g. HS400ES/CMDQ.
> > > Let me loop in uSDHC driver owner Haibo Chen to double confirm.
> >
> > Yes, usdhc of imx8qxp can work by using the compatible "fsl, imx7d-usdhc", but will not support HS400ES/Command Queue any more. Also imx8qxp support Auto CMD23, but imx7d not.
> > And imx8qxp need to re-config the clock rate after system PM, imx7d do not need to do this.
>
> Then we can leave the compatible in DTS and I will correct the device
> tree schema.

Haibo,

As Krzysztof is helping fix uSDHC binding doc in Patch 12/22,
please double check with IC for the whole uSDHC derive relationships on i.MX
and feedback to Krzysztof if anything is wrong.

Regards
Aisheng

>
> Best regards,
> Krzysztof
Bough Chen Aug. 24, 2020, 10:31 a.m. UTC | #5
> -----Original Message-----
> From: Dong Aisheng [mailto:dongas86@gmail.com]
> Sent: 2020年8月24日 17:45
> To: Krzysztof Kozlowski <krzk@kernel.org>
> Cc: Aisheng Dong <aisheng.dong@nxp.com>; devicetree@vger.kernel.org;
> linux-serial@vger.kernel.org; Anson Huang <anson.huang@nxp.com>;
> linux-gpio@vger.kernel.org; Fabio Estevam <festevam@gmail.com>; Linus
> Walleij <linus.walleij@linaro.org>; linux-pm@vger.kernel.org;
> linux-mmc@vger.kernel.org; linux-kernel@vger.kernel.org;
> linux-pwm@vger.kernel.org; Bartosz Golaszewski
> <bgolaszewski@baylibre.com>; Rob Herring <robh+dt@kernel.org>;
> linux-mtd@lists.infradead.org; dl-linux-imx <linux-imx@nxp.com>; Pengutronix
> Kernel Team <kernel@pengutronix.de>; Thierry Reding
> <thierry.reding@gmail.com>; Shawn Guo <shawnguo@kernel.org>; Sascha
> Hauer <s.hauer@pengutronix.de>; linux-arm-kernel@lists.infradead.org;
> linux-watchdog@vger.kernel.org; Bough Chen <haibo.chen@nxp.com>
> Subject: Re: [PATCH 21/22] arm64: dts: imx8qxp: Remove i.MX7 compatible
> from USDHC
> 
> On Mon, Aug 24, 2020 at 5:15 PM Krzysztof Kozlowski <krzk@kernel.org>
> wrote:
> >
> > On Mon, Aug 24, 2020 at 09:00:19AM +0000, Aisheng Dong wrote:
> > > > From: Krzysztof Kozlowski <krzk@kernel.org>
> > > > Sent: Monday, August 24, 2020 12:16 AM
> > > >
> > > > The USDHC on i.MX 8QXP has its own compatible described in
> > > > bindings and used in the driver (with its own quirks).  Remove
> > > > additional fsl,imx7d-usdhc compatible to fix dtbs_check warnings like:
> > > >
> > > >   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml:
> mmc@5b010000:
> > > >     compatible: ['fsl,imx8qxp-usdhc', 'fsl,imx7d-usdhc'] is too long
> > > >     From schema:
> > > > /ocumentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml
> > > >
> > > >   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml:
> mmc@5b010000:
> > > >     compatible: Additional items are not allowed
> > > > ('fsl,imx7d-usdhc' was
> > > > unexpected)
> > > >
> > > > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> > >
> > > For Patch 19-22, I think we should fix dt binding doc.
> >
> > Are you sure that these USDHC controllers are compatible with i.MX 7D?
> > Could they really run with fsl,imx7d-usdhc compatible?
> 
> AFAIK uSDHC on QXP is derived from the former platforms with adding a few
> more new features. e.g. HS400ES/CMDQ.
> Let me loop in uSDHC driver owner Haibo Chen to double confirm.

Yes, usdhc of imx8qxp can work by using the compatible "fsl, imx7d-usdhc", but will not support HS400ES/Command Queue any more. Also imx8qxp support Auto CMD23, but imx7d not.
And imx8qxp need to re-config the clock rate after system PM, imx7d do not need to do this.


> 
> Regards
> Aisheng
> 
> > The implementation (Linux kernel driver) is different, I guess on
> > purpose...
> >
> > Best regards,
> > Krzysztof
> >
> > >
> > > Regards
> > > Aisheng
> > >
> > > > ---
> > > >  arch/arm64/boot/dts/freescale/imx8qxp.dtsi | 6 +++---
> > > >  1 file changed, 3 insertions(+), 3 deletions(-)
> > > >
> > > > diff --git a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > > > b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > > > index 61bccb69f09e..26c4fcdfe290 100644
> > > > --- a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > > > +++ b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
> > > > @@ -362,7 +362,7 @@
> > > >             };
> > > >
> > > >             usdhc1: mmc@5b010000 {
> > > > -                   compatible = "fsl,imx8qxp-usdhc",
> "fsl,imx7d-usdhc";
> > > > +                   compatible = "fsl,imx8qxp-usdhc";
> > > >                     interrupts = <GIC_SPI 232
> IRQ_TYPE_LEVEL_HIGH>;
> > > >                     reg = <0x5b010000 0x10000>;
> > > >                     clocks = <&conn_lpcg
> > > > IMX_CONN_LPCG_SDHC0_IPG_CLK>, @@
> > > > -374,7 +374,7 @@
> > > >             };
> > > >
> > > >             usdhc2: mmc@5b020000 {
> > > > -                   compatible = "fsl,imx8qxp-usdhc",
> "fsl,imx7d-usdhc";
> > > > +                   compatible = "fsl,imx8qxp-usdhc";
> > > >                     interrupts = <GIC_SPI 233
> IRQ_TYPE_LEVEL_HIGH>;
> > > >                     reg = <0x5b020000 0x10000>;
> > > >                     clocks = <&conn_lpcg
> > > > IMX_CONN_LPCG_SDHC1_IPG_CLK>, @@
> > > > -388,7 +388,7 @@
> > > >             };
> > > >
> > > >             usdhc3: mmc@5b030000 {
> > > > -                   compatible = "fsl,imx8qxp-usdhc",
> "fsl,imx7d-usdhc";
> > > > +                   compatible = "fsl,imx8qxp-usdhc";
> > > >                     interrupts = <GIC_SPI 234
> IRQ_TYPE_LEVEL_HIGH>;
> > > >                     reg = <0x5b030000 0x10000>;
> > > >                     clocks = <&conn_lpcg
> > > > IMX_CONN_LPCG_SDHC2_IPG_CLK>,
> > > > --
> > > > 2.17.1
> > >
> >
> > _______________________________________________
> > linux-arm-kernel mailing list
> > linux-arm-kernel@lists.infradead.org
> > https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists
> > .infradead.org%2Fmailman%2Flistinfo%2Flinux-arm-kernel&amp;data=02%7
> C0
> >
> 1%7Chaibo.chen%40nxp.com%7C25d35969a5904d2cd49e08d848148b49%7C6
> 86ea1d3
> >
> bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637338600398740888&amp;sdata
> =OVryLd
> > 4q7LvEoSl6dqQhbR4VWgi6TqBYE%2BS9bI1M6ZY%3D&amp;reserved=0
Krzysztof Kozlowski Aug. 24, 2020, 10:32 a.m. UTC | #6
On Mon, Aug 24, 2020 at 10:31:31AM +0000, Bough Chen wrote:
> > -----Original Message-----
> > From: Dong Aisheng [mailto:dongas86@gmail.com]
> > Sent: 2020年8月24日 17:45
> > To: Krzysztof Kozlowski <krzk@kernel.org>
> > Cc: Aisheng Dong <aisheng.dong@nxp.com>; devicetree@vger.kernel.org;
> > linux-serial@vger.kernel.org; Anson Huang <anson.huang@nxp.com>;
> > linux-gpio@vger.kernel.org; Fabio Estevam <festevam@gmail.com>; Linus
> > Walleij <linus.walleij@linaro.org>; linux-pm@vger.kernel.org;
> > linux-mmc@vger.kernel.org; linux-kernel@vger.kernel.org;
> > linux-pwm@vger.kernel.org; Bartosz Golaszewski
> > <bgolaszewski@baylibre.com>; Rob Herring <robh+dt@kernel.org>;
> > linux-mtd@lists.infradead.org; dl-linux-imx <linux-imx@nxp.com>; Pengutronix
> > Kernel Team <kernel@pengutronix.de>; Thierry Reding
> > <thierry.reding@gmail.com>; Shawn Guo <shawnguo@kernel.org>; Sascha
> > Hauer <s.hauer@pengutronix.de>; linux-arm-kernel@lists.infradead.org;
> > linux-watchdog@vger.kernel.org; Bough Chen <haibo.chen@nxp.com>
> > Subject: Re: [PATCH 21/22] arm64: dts: imx8qxp: Remove i.MX7 compatible
> > from USDHC
> > 
> > On Mon, Aug 24, 2020 at 5:15 PM Krzysztof Kozlowski <krzk@kernel.org>
> > wrote:
> > >
> > > On Mon, Aug 24, 2020 at 09:00:19AM +0000, Aisheng Dong wrote:
> > > > > From: Krzysztof Kozlowski <krzk@kernel.org>
> > > > > Sent: Monday, August 24, 2020 12:16 AM
> > > > >
> > > > > The USDHC on i.MX 8QXP has its own compatible described in
> > > > > bindings and used in the driver (with its own quirks).  Remove
> > > > > additional fsl,imx7d-usdhc compatible to fix dtbs_check warnings like:
> > > > >
> > > > >   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml:
> > mmc@5b010000:
> > > > >     compatible: ['fsl,imx8qxp-usdhc', 'fsl,imx7d-usdhc'] is too long
> > > > >     From schema:
> > > > > /ocumentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml
> > > > >
> > > > >   arch/arm64/boot/dts/freescale/imx8qxp-ai_ml.dt.yaml:
> > mmc@5b010000:
> > > > >     compatible: Additional items are not allowed
> > > > > ('fsl,imx7d-usdhc' was
> > > > > unexpected)
> > > > >
> > > > > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> > > >
> > > > For Patch 19-22, I think we should fix dt binding doc.
> > >
> > > Are you sure that these USDHC controllers are compatible with i.MX 7D?
> > > Could they really run with fsl,imx7d-usdhc compatible?
> > 
> > AFAIK uSDHC on QXP is derived from the former platforms with adding a few
> > more new features. e.g. HS400ES/CMDQ.
> > Let me loop in uSDHC driver owner Haibo Chen to double confirm.
> 
> Yes, usdhc of imx8qxp can work by using the compatible "fsl, imx7d-usdhc", but will not support HS400ES/Command Queue any more. Also imx8qxp support Auto CMD23, but imx7d not.
> And imx8qxp need to re-config the clock rate after system PM, imx7d do not need to do this.

Then we can leave the compatible in DTS and I will correct the device
tree schema.

Best regards,
Krzysztof
Linus Walleij Aug. 28, 2020, 9:42 a.m. UTC | #7
On Sun, Aug 23, 2020 at 6:16 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:

> DTSes with new i.MX 8 SoCs introduce their own compatibles so add them
> to fix dtbs_check warnings like:
>
>   arch/arm64/boot/dts/freescale/imx8mm-evk.dt.yaml: gpio@30200000:
>     compatible:0: 'fsl,imx8mm-gpio' is not one of ['fsl,imx1-gpio', 'fsl,imx21-gpio', 'fsl,imx31-gpio', 'fsl,imx35-gpio', 'fsl,imx7d-gpio']
>     From schema: Documentation/devicetree/bindings/gpio/fsl-imx-gpio.yaml
>
>   arch/arm64/boot/dts/freescale/imx8mm-evk.dt.yaml: gpio@30200000:
>     compatible: ['fsl,imx8mm-gpio', 'fsl,imx35-gpio'] is too long
>
>   arch/arm64/boot/dts/freescale/imx8mm-evk.dt.yaml: gpio@30200000:
>     compatible: Additional items are not allowed ('fsl,imx35-gpio' was unexpected)
>
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>

I'm just waiting for some review from the i.MX people on these FSL things,
then I can apply it.

Yours,
Linus Walleij
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.yaml b/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.yaml
index 0b223abe8cfb..454db20c2d1a 100644
--- a/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.yaml
+++ b/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.yaml
@@ -11,12 +11,21 @@  maintainers:
 
 properties:
   compatible:
-    enum:
-      - fsl,imx1-gpio
-      - fsl,imx21-gpio
-      - fsl,imx31-gpio
-      - fsl,imx35-gpio
-      - fsl,imx7d-gpio
+    oneOf:
+      - enum:
+          - fsl,imx1-gpio
+          - fsl,imx21-gpio
+          - fsl,imx31-gpio
+          - fsl,imx35-gpio
+          - fsl,imx7d-gpio
+      - items:
+          - enum:
+              - fsl,imx8mm-gpio
+              - fsl,imx8mn-gpio
+              - fsl,imx8mp-gpio
+              - fsl,imx8mq-gpio
+              - fsl,imx8qxp-gpio
+          - const: fsl,imx35-gpio
 
   reg:
     maxItems: 1