From: Adam Ford <aford173@gmail.com> To: Krzysztof Kozlowski <krzk@kernel.org> Cc: arm-soc <linux-arm-kernel@lists.infradead.org>, Adam Ford-BE <aford@beaconembedded.com>, Ulf Hansson <ulf.hansson@linaro.org>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzk+dt@kernel.org>, Shawn Guo <shawnguo@kernel.org>, Sascha Hauer <s.hauer@pengutronix.de>, Pengutronix Kernel Team <kernel@pengutronix.de>, Fabio Estevam <festevam@gmail.com>, NXP Linux Team <linux-imx@nxp.com>, linux-mmc <linux-mmc@vger.kernel.org>, devicetree <devicetree@vger.kernel.org>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org> Subject: Re: [PATCH 1/3] dt-bindings: mmc: imx-esdhc: Change imx8mn and imx8mp compatible fallback Date: Wed, 23 Mar 2022 12:23:16 -0500 [thread overview] Message-ID: <CAHCN7xLWoUGi-jfxR2a0gvEFkPT3USUEb+8U3CCqCb5wWEJ8xw@mail.gmail.com> (raw) In-Reply-To: <354951e0-d2a8-bf4f-e0c5-081e836bb3c3@kernel.org> On Wed, Mar 23, 2022 at 9:11 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > On 23/03/2022 15:00, Adam Ford wrote: > > On Wed, Mar 23, 2022 at 8:56 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > >> > >> On 23/03/2022 14:40, Adam Ford wrote: > >>> The SDHC controller in the imx8mn and imx8mp have the same controller > >>> as the imx8mm which is slightly different than that of the imx7d. > >>> Using the fallback of the imx8mm enables the controllers to support > >>> HS400-ES which is not available on the imx7d. > >>> > >>> Signed-off-by: Adam Ford <aford173@gmail.com> > >>> > >>> diff --git a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml > >>> index 7dbbcae9485c..d6ea73d76bdd 100644 > >>> --- a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml > >>> +++ b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml > >>> @@ -39,14 +39,14 @@ properties: > >>> - items: > >>> - enum: > >>> - fsl,imx8mm-usdhc > >> > >> Your change looks reasonable, but why imx8mm is compatible with imx7d? > > > > I saw that, and I wasn't sure the best way to go about fixing it. If > > I move the 8mm out of the imx7d category, do I need to add it to the > > enum list associated with the imx8mm, or can I just delete it from the > > enum leaving the const for imx8mm good enough? > > > > The DTS is using: > compatible = "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc" > which looks incorrect, based on what you wrote in commit description. > Since fsl,imx8mm-usdhc has its own compatibility-group and defines the > properties for entire family (imx8mm + imx8mn + imx8mp), then I would > assume that either fsl,imx8mm-usdhc is not be compatible with imx7d or > everything is compatible with imx7d. IOW, DTS and bindings should be > changed to one of following: > 1. Everything compatible with imx7d: > compatible = "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; > compatible = "fsl,imx8mq-usdhc", "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; > > 2. A new group: > compatible = "fsl,imx8mm-usdhc"; > compatible = "fsl,imx8mq-usdhc", "fsl,imx8mm-usdhc"; > > Which one, I am not sure. My commit 80fd350b95 organized it in (1) > approach, because also that time there was no new group for 8mm (added > in commit 431fae8). I assume NXP engineer knows better, so the better > solution would be (2). In such case, imx8mm has to be moved to the first > enum and all DTS have to be adjusted. I pulled NXP's downtream kernel based on 5.15.y, and grepped the code for imx8mm-usdhc. It looks like the imx8mm, imx8mn, imx8mp, and imx8ulp use the imx8mm compatible flag. The imx8mq uses the older imx7d. I'll do a second revision later today or tomorrow. Looking inside the driver, it appears there are some other quirks that different between the imx7d and imx8mm beyond just support for HS400-ES, so I think your option 2 is appropriate. Hopefully someone from NXP can comment. adam > > > Best regards, > Krzysztof
WARNING: multiple messages have this Message-ID (diff)
From: Adam Ford <aford173@gmail.com> To: Krzysztof Kozlowski <krzk@kernel.org> Cc: arm-soc <linux-arm-kernel@lists.infradead.org>, Adam Ford-BE <aford@beaconembedded.com>, Ulf Hansson <ulf.hansson@linaro.org>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzk+dt@kernel.org>, Shawn Guo <shawnguo@kernel.org>, Sascha Hauer <s.hauer@pengutronix.de>, Pengutronix Kernel Team <kernel@pengutronix.de>, Fabio Estevam <festevam@gmail.com>, NXP Linux Team <linux-imx@nxp.com>, linux-mmc <linux-mmc@vger.kernel.org>, devicetree <devicetree@vger.kernel.org>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org> Subject: Re: [PATCH 1/3] dt-bindings: mmc: imx-esdhc: Change imx8mn and imx8mp compatible fallback Date: Wed, 23 Mar 2022 12:23:16 -0500 [thread overview] Message-ID: <CAHCN7xLWoUGi-jfxR2a0gvEFkPT3USUEb+8U3CCqCb5wWEJ8xw@mail.gmail.com> (raw) In-Reply-To: <354951e0-d2a8-bf4f-e0c5-081e836bb3c3@kernel.org> On Wed, Mar 23, 2022 at 9:11 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > On 23/03/2022 15:00, Adam Ford wrote: > > On Wed, Mar 23, 2022 at 8:56 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > >> > >> On 23/03/2022 14:40, Adam Ford wrote: > >>> The SDHC controller in the imx8mn and imx8mp have the same controller > >>> as the imx8mm which is slightly different than that of the imx7d. > >>> Using the fallback of the imx8mm enables the controllers to support > >>> HS400-ES which is not available on the imx7d. > >>> > >>> Signed-off-by: Adam Ford <aford173@gmail.com> > >>> > >>> diff --git a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml > >>> index 7dbbcae9485c..d6ea73d76bdd 100644 > >>> --- a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml > >>> +++ b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml > >>> @@ -39,14 +39,14 @@ properties: > >>> - items: > >>> - enum: > >>> - fsl,imx8mm-usdhc > >> > >> Your change looks reasonable, but why imx8mm is compatible with imx7d? > > > > I saw that, and I wasn't sure the best way to go about fixing it. If > > I move the 8mm out of the imx7d category, do I need to add it to the > > enum list associated with the imx8mm, or can I just delete it from the > > enum leaving the const for imx8mm good enough? > > > > The DTS is using: > compatible = "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc" > which looks incorrect, based on what you wrote in commit description. > Since fsl,imx8mm-usdhc has its own compatibility-group and defines the > properties for entire family (imx8mm + imx8mn + imx8mp), then I would > assume that either fsl,imx8mm-usdhc is not be compatible with imx7d or > everything is compatible with imx7d. IOW, DTS and bindings should be > changed to one of following: > 1. Everything compatible with imx7d: > compatible = "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; > compatible = "fsl,imx8mq-usdhc", "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; > > 2. A new group: > compatible = "fsl,imx8mm-usdhc"; > compatible = "fsl,imx8mq-usdhc", "fsl,imx8mm-usdhc"; > > Which one, I am not sure. My commit 80fd350b95 organized it in (1) > approach, because also that time there was no new group for 8mm (added > in commit 431fae8). I assume NXP engineer knows better, so the better > solution would be (2). In such case, imx8mm has to be moved to the first > enum and all DTS have to be adjusted. I pulled NXP's downtream kernel based on 5.15.y, and grepped the code for imx8mm-usdhc. It looks like the imx8mm, imx8mn, imx8mp, and imx8ulp use the imx8mm compatible flag. The imx8mq uses the older imx7d. I'll do a second revision later today or tomorrow. Looking inside the driver, it appears there are some other quirks that different between the imx7d and imx8mm beyond just support for HS400-ES, so I think your option 2 is appropriate. Hopefully someone from NXP can comment. adam > > > Best regards, > Krzysztof _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-03-23 17:23 UTC|newest] Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-03-23 13:40 [PATCH 1/3] dt-bindings: mmc: imx-esdhc: Change imx8mn and imx8mp compatible fallback Adam Ford 2022-03-23 13:40 ` Adam Ford 2022-03-23 13:40 ` [PATCH 2/3] arm64: dts: imx8mn: Enable HS400-ES Adam Ford 2022-03-23 13:40 ` Adam Ford 2022-03-23 13:40 ` [PATCH 3/3] arm64: dts: imx8mp: " Adam Ford 2022-03-23 13:40 ` Adam Ford 2022-03-23 13:56 ` [PATCH 1/3] dt-bindings: mmc: imx-esdhc: Change imx8mn and imx8mp compatible fallback Krzysztof Kozlowski 2022-03-23 13:56 ` Krzysztof Kozlowski 2022-03-23 14:00 ` Adam Ford 2022-03-23 14:00 ` Adam Ford 2022-03-23 14:11 ` Krzysztof Kozlowski 2022-03-23 14:11 ` Krzysztof Kozlowski 2022-03-23 17:23 ` Adam Ford [this message] 2022-03-23 17:23 ` Adam Ford 2022-03-24 2:54 ` Bough Chen 2022-03-24 2:54 ` Bough Chen
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=CAHCN7xLWoUGi-jfxR2a0gvEFkPT3USUEb+8U3CCqCb5wWEJ8xw@mail.gmail.com \ --to=aford173@gmail.com \ --cc=aford@beaconembedded.com \ --cc=devicetree@vger.kernel.org \ --cc=festevam@gmail.com \ --cc=kernel@pengutronix.de \ --cc=krzk+dt@kernel.org \ --cc=krzk@kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-imx@nxp.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mmc@vger.kernel.org \ --cc=robh+dt@kernel.org \ --cc=s.hauer@pengutronix.de \ --cc=shawnguo@kernel.org \ --cc=ulf.hansson@linaro.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.