[PATCH v2 11/13] mmc: sdhci-esdhc-imx: Add sdhc support for i.MXRT series

Bough Chen haibo.chen at nxp.com
Mon Nov 22 20:31:49 PST 2021


> -----Original Message-----
> From: Jesse Taube [mailto:mr.bossman075 at gmail.com]
> Sent: 2021年11月23日 11:14
> To: Bough Chen <haibo.chen at nxp.com>; dl-linux-imx <linux-imx at nxp.com>
> Cc: mturquette at baylibre.com; sboyd at kernel.org; robh+dt at kernel.org;
> shawnguo at kernel.org; s.hauer at pengutronix.de; kernel at pengutronix.de;
> festevam at gmail.com; ulf.hansson at linaro.org; Aisheng Dong
> <aisheng.dong at nxp.com>; stefan at agner.ch; linus.walleij at linaro.org;
> gregkh at linuxfoundation.org; arnd at arndb.de; olof at lixom.net;
> soc at kernel.org; linux at armlinux.org.uk; Abel Vesa <abel.vesa at nxp.com>;
> adrian.hunter at intel.com; jirislaby at kernel.org;
> giulio.benetti at benettiengineering.com; nobuhiro1.iwamatsu at toshiba.co.jp;
> linux-clk at vger.kernel.org; devicetree at vger.kernel.org;
> linux-arm-kernel at lists.infradead.org; linux-kernel at vger.kernel.org;
> linux-mmc at vger.kernel.org; linux-gpio at vger.kernel.org;
> linux-serial at vger.kernel.org
> Subject: Re: [PATCH v2 11/13] mmc: sdhci-esdhc-imx: Add sdhc support for
> i.MXRT series
> 
> 
> 
> On 11/2/21 22:19, Bough Chen wrote:
> >> -----Original Message-----
> >> From: Jesse Taube [mailto:mr.bossman075 at gmail.com]
> >> Sent: 2021年11月3日 6:57
> >> To: dl-linux-imx <linux-imx at nxp.com>
> >> Cc: mturquette at baylibre.com; sboyd at kernel.org; robh+dt at kernel.org;
> >> shawnguo at kernel.org; s.hauer at pengutronix.de; kernel at pengutronix.de;
> >> festevam at gmail.com; ulf.hansson at linaro.org; Aisheng Dong
> >> <aisheng.dong at nxp.com>; stefan at agner.ch; linus.walleij at linaro.org;
> >> gregkh at linuxfoundation.org; arnd at arndb.de; olof at lixom.net;
> >> soc at kernel.org; linux at armlinux.org.uk; Abel Vesa <abel.vesa at nxp.com>;
> >> adrian.hunter at intel.com; jirislaby at kernel.org;
> >> giulio.benetti at benettiengineering.com;
> >> nobuhiro1.iwamatsu at toshiba.co.jp; Mr.Bossman075 at gmail.com;
> >> linux-clk at vger.kernel.org; devicetree at vger.kernel.org;
> >> linux-arm-kernel at lists.infradead.org;
> >> linux-kernel at vger.kernel.org; linux-mmc at vger.kernel.org;
> >> linux-gpio at vger.kernel.org; linux-serial at vger.kernel.org; Jesse Taube
> >> <mr.bossman075 at gmail.com>
> >> Subject: [PATCH v2 11/13] mmc: sdhci-esdhc-imx: Add sdhc support for
> > i.MXRT
> >> series
> >>
> >> From: Jesse Taube <mr.bossman075 at gmail.com>
> >>
> >> Add support for i.MXRT1050's sdhc.
> >>
> >> Cc: Giulio Benetti <giulio.benetti at benettiengineering.com>
> >> Signed-off-by: Jesse Taube <Mr.Bossman075 at gmail.com>---
> >> V1->V2:
> >> * Nothing done
> >> ---
> >>   drivers/mmc/host/sdhci-esdhc-imx.c | 7 +++++++
> >>   1 file changed, 7 insertions(+)
> >>
> >> diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c
> >> b/drivers/mmc/host/sdhci-esdhc-imx.c
> >> index afaf33707d46..c852a6df5611 100644
> >> --- a/drivers/mmc/host/sdhci-esdhc-imx.c
> >> +++ b/drivers/mmc/host/sdhci-esdhc-imx.c
> >> @@ -305,6 +305,12 @@ static struct esdhc_soc_data usdhc_imx7ulp_data
> = {
> >>   			| ESDHC_FLAG_PMQOS | ESDHC_FLAG_HS400
> >>   			| ESDHC_FLAG_STATE_LOST_IN_LPMODE,
> >>   };
> >> +static struct esdhc_soc_data usdhc_imxrt_data = {
> >> +	.flags = ESDHC_FLAG_USDHC | ESDHC_FLAG_MAN_TUNING
> >> +			| ESDHC_FLAG_HS200 | ESDHC_FLAG_ERR004536
> >> +			| ESDHC_FLAG_BROKEN_AUTO_CMD23,
> >> +};
> >> +
> >
> > Hi Jesse,
> > 	I have few question here.
> > 	Why only use manual tuning here? Does this usdhc don't support
> > standard tuning? or meet any issue when use standard tuning?
> No std tuning works, so does cmd23, i changed it to use them.

Okay.

> > 	Please also double check why not use ADMA in default? Any issue
> > found?
> Yes this is the output with ADMA:
> [0.00] mmc0: Unable to allocate ADMA buffers - falling back to standard DMA
> NOTE: I did not look into why this occurs.

If you config enough space for CMA or DMA pool, I think dma_alloc_corherent() should not meet issue.
ADMA descriptor do not large than one page(4KB). This is not big. Seems strange.

Please double check this. If this is really a limitation on imxRT, I'm okay to use SDMA as default.

Best Regards
Haibo chen
> >
> >
> > Best Regards
> > Haibo Chen
> >>
> >>   static struct esdhc_soc_data usdhc_imx8qxp_data = {
> >>   	.flags = ESDHC_FLAG_USDHC | ESDHC_FLAG_STD_TUNING @@
> -357,6
> >> +363,7 @@ static const struct of_device_id imx_esdhc_dt_ids[] = {
> >>   	{ .compatible = "fsl,imx7ulp-usdhc", .data = &usdhc_imx7ulp_data, },
> >>   	{ .compatible = "fsl,imx8qxp-usdhc", .data =
> &usdhc_imx8qxp_data, },
> >>   	{ .compatible = "fsl,imx8mm-usdhc", .data =
> &usdhc_imx8mm_data, },
> >> +	{ .compatible = "fsl,imxrt-usdhc", .data = &usdhc_imxrt_data, },
> >>   	{ .compatible = "nxp,s32g2-usdhc", .data = &usdhc_s32g2_data, },
> >>   	{ /* sentinel */ }
> >>   };
> >> --
> >> 2.33.1
> >
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 9551 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20211123/68a77dcb/attachment-0001.p7s>


More information about the linux-arm-kernel mailing list