Re: [PATCH 21/22] arm64: dts: imx8qxp: Remove i.MX7 compatible from USDHC

2020-08-24 Thread Dong Aisheng
On Mon, Aug 24, 2020 at 6:32 PM Krzysztof Kozlowski  wrote:
>
> On Mon, Aug 24, 2020 at 10:31:31AM +, Bough Chen wrote:
> > > -Original Message-
> > > From: Dong Aisheng [mailto:donga...@gmail.com]
> > > Sent: 2020年8月24日 17:45
> > > To: Krzysztof Kozlowski 
> > > Cc: Aisheng Dong ; devicet...@vger.kernel.org;
> > > linux-ser...@vger.kernel.org; Anson Huang ;
> > > linux-g...@vger.kernel.org; Fabio Estevam ; Linus
> > > Walleij ; linux...@vger.kernel.org;
> > > linux-...@vger.kernel.org; linux-kernel@vger.kernel.org;
> > > linux-...@vger.kernel.org; Bartosz Golaszewski
> > > ; Rob Herring ;
> > > linux-...@lists.infradead.org; dl-linux-imx ; 
> > > Pengutronix
> > > Kernel Team ; Thierry Reding
> > > ; Shawn Guo ; Sascha
> > > Hauer ; linux-arm-ker...@lists.infradead.org;
> > > linux-watch...@vger.kernel.org; Bough Chen 
> > > 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 
> > > wrote:
> > > >
> > > > On Mon, Aug 24, 2020 at 09:00:19AM +, Aisheng Dong wrote:
> > > > > > From: Krzysztof Kozlowski 
> > > > > > 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@5b01:
> > > > > > 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@5b01:
> > > > > > compatible: Additional items are not allowed
> > > > > > ('fsl,imx7d-usdhc' was
> > > > > > unexpected)
> > > > > >
> > > > > > Signed-off-by: Krzysztof Kozlowski 
> > > > >
> > > > > 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


Re: [PATCH 21/22] arm64: dts: imx8qxp: Remove i.MX7 compatible from USDHC

2020-08-24 Thread Krzysztof Kozlowski
On Mon, Aug 24, 2020 at 10:31:31AM +, Bough Chen wrote:
> > -Original Message-
> > From: Dong Aisheng [mailto:donga...@gmail.com]
> > Sent: 2020年8月24日 17:45
> > To: Krzysztof Kozlowski 
> > Cc: Aisheng Dong ; devicet...@vger.kernel.org;
> > linux-ser...@vger.kernel.org; Anson Huang ;
> > linux-g...@vger.kernel.org; Fabio Estevam ; Linus
> > Walleij ; linux...@vger.kernel.org;
> > linux-...@vger.kernel.org; linux-kernel@vger.kernel.org;
> > linux-...@vger.kernel.org; Bartosz Golaszewski
> > ; Rob Herring ;
> > linux-...@lists.infradead.org; dl-linux-imx ; Pengutronix
> > Kernel Team ; Thierry Reding
> > ; Shawn Guo ; Sascha
> > Hauer ; linux-arm-ker...@lists.infradead.org;
> > linux-watch...@vger.kernel.org; Bough Chen 
> > 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 
> > wrote:
> > >
> > > On Mon, Aug 24, 2020 at 09:00:19AM +, Aisheng Dong wrote:
> > > > > From: Krzysztof Kozlowski 
> > > > > 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@5b01:
> > > > > 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@5b01:
> > > > > compatible: Additional items are not allowed
> > > > > ('fsl,imx7d-usdhc' was
> > > > > unexpected)
> > > > >
> > > > > Signed-off-by: Krzysztof Kozlowski 
> > > >
> > > > 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


RE: [PATCH 21/22] arm64: dts: imx8qxp: Remove i.MX7 compatible from USDHC

2020-08-24 Thread Bough Chen
> -Original Message-
> From: Dong Aisheng [mailto:donga...@gmail.com]
> Sent: 2020年8月24日 17:45
> To: Krzysztof Kozlowski 
> Cc: Aisheng Dong ; devicet...@vger.kernel.org;
> linux-ser...@vger.kernel.org; Anson Huang ;
> linux-g...@vger.kernel.org; Fabio Estevam ; Linus
> Walleij ; linux...@vger.kernel.org;
> linux-...@vger.kernel.org; linux-kernel@vger.kernel.org;
> linux-...@vger.kernel.org; Bartosz Golaszewski
> ; Rob Herring ;
> linux-...@lists.infradead.org; dl-linux-imx ; Pengutronix
> Kernel Team ; Thierry Reding
> ; Shawn Guo ; Sascha
> Hauer ; linux-arm-ker...@lists.infradead.org;
> linux-watch...@vger.kernel.org; Bough Chen 
> 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 
> wrote:
> >
> > On Mon, Aug 24, 2020 at 09:00:19AM +, Aisheng Dong wrote:
> > > > From: Krzysztof Kozlowski 
> > > > 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@5b01:
> > > > 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@5b01:
> > > > compatible: Additional items are not allowed
> > > > ('fsl,imx7d-usdhc' was
> > > > unexpected)
> > > >
> > > > Signed-off-by: Krzysztof Kozlowski 
> > >
> > > 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@5b01 {
> > > > -   compatible = "fsl,imx8qxp-usdhc",
> "fsl,imx7d-usdhc";
> > > > +   compatible = "fsl,imx8qxp-usdhc";
> > > > interrupts =  IRQ_TYPE_LEVEL_HIGH>;
> > > > reg = <0x5b01 0x1>;
> > > > clocks = <_lpcg
> > > > IMX_CONN_LPCG_SDHC0_IPG_CLK>, @@
> > > > -374,7 +374,7 @@
> > > > };
> > > >
> > > > usdhc2: mmc@5b02 {
> > > > -   compatible = "fsl,imx8qxp-usdhc",
> "fsl,imx7d-usdhc";
> > > > +   compatible = "fsl,imx8qxp-usdhc";
> > > > interrupts =  IRQ_TYPE_LEVEL_HIGH>;
> > > > reg = <0x5b02 0x1>;
> > > > clocks = <_lpcg
> > > > IMX_CONN_LPCG_SDHC1_IPG_CLK>, @@
> > > > -388,7 +388,7 @@
> > > > };
> > > >
> > > > usdhc3: mmc@5b03 {
> > > > -   compatible = "fsl,imx8qxp-usdhc",
> "fsl,imx7d-usdhc";
> > > > +   compatible = "fsl,imx8qxp-usdhc";
> > > > interrupts =  IRQ_TYPE_LEVEL_HIGH>;
> > > > reg = <0x5b03 0x1>;
> > > > clocks = <_lpcg
> > > > IMX_CONN_LPCG_SDHC2_IPG_CLK>,
> > > > --
> > > > 2.17.1
> > >
> >
> > ___
> > linux-arm-kernel mailing list
> > linux-arm-ker...@lists.infradead.org
> > https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists
> > .infradead.org%2Fmailman%2Flistinfo%2Flinux-arm-kerneldata=02%7
> C0
> >
> 1%7Chaibo.chen%40nxp.com%7C25d35969a5904d2cd49e08d848148b49%7C6
> 86ea1d3
> >
> bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637338600398740888sdata
> =OVryLd
> > 4q7LvEoSl6dqQhbR4VWgi6TqBYE%2BS9bI1M6ZY%3Dreserved=0


Re: [PATCH 21/22] arm64: dts: imx8qxp: Remove i.MX7 compatible from USDHC

2020-08-24 Thread Dong Aisheng
On Mon, Aug 24, 2020 at 5:15 PM Krzysztof Kozlowski  wrote:
>
> On Mon, Aug 24, 2020 at 09:00:19AM +, Aisheng Dong wrote:
> > > From: Krzysztof Kozlowski 
> > > 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@5b01:
> > > 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@5b01:
> > > compatible: Additional items are not allowed ('fsl,imx7d-usdhc' was
> > > unexpected)
> > >
> > > Signed-off-by: Krzysztof Kozlowski 
> >
> > 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@5b01 {
> > > -   compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > > +   compatible = "fsl,imx8qxp-usdhc";
> > > interrupts = ;
> > > reg = <0x5b01 0x1>;
> > > clocks = <_lpcg IMX_CONN_LPCG_SDHC0_IPG_CLK>, @@
> > > -374,7 +374,7 @@
> > > };
> > >
> > > usdhc2: mmc@5b02 {
> > > -   compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > > +   compatible = "fsl,imx8qxp-usdhc";
> > > interrupts = ;
> > > reg = <0x5b02 0x1>;
> > > clocks = <_lpcg IMX_CONN_LPCG_SDHC1_IPG_CLK>, @@
> > > -388,7 +388,7 @@
> > > };
> > >
> > > usdhc3: mmc@5b03 {
> > > -   compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > > +   compatible = "fsl,imx8qxp-usdhc";
> > > interrupts = ;
> > > reg = <0x5b03 0x1>;
> > > clocks = <_lpcg IMX_CONN_LPCG_SDHC2_IPG_CLK>,
> > > --
> > > 2.17.1
> >
>
> ___
> linux-arm-kernel mailing list
> linux-arm-ker...@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel


Re: [PATCH 21/22] arm64: dts: imx8qxp: Remove i.MX7 compatible from USDHC

2020-08-24 Thread Krzysztof Kozlowski
On Mon, Aug 24, 2020 at 09:00:19AM +, Aisheng Dong wrote:
> > From: Krzysztof Kozlowski 
> > 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@5b01:
> > 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@5b01:
> > compatible: Additional items are not allowed ('fsl,imx7d-usdhc' was
> > unexpected)
> > 
> > Signed-off-by: Krzysztof Kozlowski 
> 
> 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@5b01 {
> > -   compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > +   compatible = "fsl,imx8qxp-usdhc";
> > interrupts = ;
> > reg = <0x5b01 0x1>;
> > clocks = <_lpcg IMX_CONN_LPCG_SDHC0_IPG_CLK>, @@
> > -374,7 +374,7 @@
> > };
> > 
> > usdhc2: mmc@5b02 {
> > -   compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > +   compatible = "fsl,imx8qxp-usdhc";
> > interrupts = ;
> > reg = <0x5b02 0x1>;
> > clocks = <_lpcg IMX_CONN_LPCG_SDHC1_IPG_CLK>, @@
> > -388,7 +388,7 @@
> > };
> > 
> > usdhc3: mmc@5b03 {
> > -   compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> > +   compatible = "fsl,imx8qxp-usdhc";
> > interrupts = ;
> > reg = <0x5b03 0x1>;
> > clocks = <_lpcg IMX_CONN_LPCG_SDHC2_IPG_CLK>,
> > --
> > 2.17.1
> 


RE: [PATCH 21/22] arm64: dts: imx8qxp: Remove i.MX7 compatible from USDHC

2020-08-24 Thread Aisheng Dong
> From: Krzysztof Kozlowski 
> 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@5b01:
> 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@5b01:
> compatible: Additional items are not allowed ('fsl,imx7d-usdhc' was
> unexpected)
> 
> Signed-off-by: Krzysztof Kozlowski 

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@5b01 {
> - compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> + compatible = "fsl,imx8qxp-usdhc";
>   interrupts = ;
>   reg = <0x5b01 0x1>;
>   clocks = <_lpcg IMX_CONN_LPCG_SDHC0_IPG_CLK>, @@
> -374,7 +374,7 @@
>   };
> 
>   usdhc2: mmc@5b02 {
> - compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> + compatible = "fsl,imx8qxp-usdhc";
>   interrupts = ;
>   reg = <0x5b02 0x1>;
>   clocks = <_lpcg IMX_CONN_LPCG_SDHC1_IPG_CLK>, @@
> -388,7 +388,7 @@
>   };
> 
>   usdhc3: mmc@5b03 {
> - compatible = "fsl,imx8qxp-usdhc", "fsl,imx7d-usdhc";
> + compatible = "fsl,imx8qxp-usdhc";
>   interrupts = ;
>   reg = <0x5b03 0x1>;
>   clocks = <_lpcg IMX_CONN_LPCG_SDHC2_IPG_CLK>,
> --
> 2.17.1