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

Jesse Taube
2021-11-23T03:13:42Z

On 11/2/21 22:19, Bough Chen wrote:
>> -----Original Message-----
>> From: Jesse Taube [mailto:mr.bossman075@gmail.com]
>> Sent: 2021年11月3日 6:57
>> To: dl-linux-imx <linux-imx@nxp.com>
>> Cc: mturquette@baylibre.com; sboyd@kernel.org; robh+dt@kernel.org;
>> shawnguo@kernel.org; s.hauer@pengutronix.de; kernel@pengutronix.de;
>> festevam@gmail.com; ulf.hansson@linaro.org; Aisheng Dong
>> <aisheng.dong@nxp.com>; stefan@agner.ch; linus.walleij@linaro.org;
>> gregkh@linuxfoundation.org; arnd@arndb.de; olof@lixom.net;
>> soc@kernel.org; linux@armlinux.org.uk; Abel Vesa <abel.vesa@nxp.com>;
>> adrian.hunter@intel.com; jirislaby@kernel.org;
>> giulio.benetti@benettiengineering.com; nobuhiro1.iwamatsu@toshiba.co.jp;
>> Mr.Bossman075@gmail.com; linux-clk@vger.kernel.org;
>> devicetree@vger.kernel.org; linux-arm-kernel@lists.infradead.org;
>> linux-kernel@vger.kernel.org; linux-mmc@vger.kernel.org;
>> linux-gpio@vger.kernel.org; linux-serial@vger.kernel.org; Jesse Taube
>> <mr.bossman075@gmail.com>
>> Subject: [PATCH v2 11/13] mmc: sdhci-esdhc-imx: Add sdhc support for
> i.MXRT
>> series
>>
>> From: Jesse Taube <mr.bossman075@gmail.com>
>>
>> Add support for i.MXRT1050's sdhc.
>>
>> Cc: Giulio Benetti <giulio.benetti@benettiengineering.com>
>> Signed-off-by: Jesse Taube <Mr.Bossman075@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.
> 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.
>
>
> 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
>