RE: [PATCH v4 4/8] mmc: sdhci-esdhc-imx: add NXP S32N79 support
From: Bough Chen
Date: Sun Mar 08 2026 - 23:13:57 EST
> -----Original Message-----
> From: Ciprian Marian Costea (OSS) <ciprianmarian.costea@xxxxxxxxxxx>
> Sent: 2026年3月7日 0:16
> To: Rob Herring <robh@xxxxxxxxxx>; Krzysztof Kozlowski <krzk+dt@xxxxxxxxxx>;
> Conor Dooley <conor+dt@xxxxxxxxxx>; Thomas Gleixner <tglx@xxxxxxxxxx>; Ulf
> Hansson <ulf.hansson@xxxxxxxxxx>; Frank Li <frank.li@xxxxxxx>; Sascha Hauer
> <s.hauer@xxxxxxxxxxxxxx>; Fabio Estevam <festevam@xxxxxxxxx>; Bough
> Chen <haibo.chen@xxxxxxx>; Adrian Hunter <adrian.hunter@xxxxxxxxx>;
> Shawn Guo <shawnguo@xxxxxxxxxx>; Lucas Stach <l.stach@xxxxxxxxxxxxxx>
> Cc: Pengutronix Kernel Team <kernel@xxxxxxxxxxxxxx>;
> devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> linux-mmc@xxxxxxxxxxxxxxx; imx@xxxxxxxxxxxxxxx;
> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; dl-S32 <S32@xxxxxxx>; Christophe Lizzi
> <clizzi@xxxxxxxxxx>; Alberto Ruiz <aruizrui@xxxxxxxxxx>; Enric Balletbo
> <eballetb@xxxxxxxxxx>; Eric Chanudet <echanude@xxxxxxxxxx>; Ciprian
> Marian Costea (OSS) <ciprianmarian.costea@xxxxxxxxxxx>; Larisa Ileana
> Grigore <larisa.grigore@xxxxxxx>
> Subject: [PATCH v4 4/8] mmc: sdhci-esdhc-imx: add NXP S32N79 support
>
> From: Ciprian Marian Costea <ciprianmarian.costea@xxxxxxxxxxx>
>
> Add support for the uSDHC controller found in NXP S32N79 automotive SoCs,
> which reuse the existing sdhci-esdhc-imx driver with slice difference.
>
> Compared with s32g2/s32g3, needn't set ESDHC_FLAG_SKIP_CD_WAKE flag
> because s32n79 does not have this limitation.
Reviewed-by: Haibo Chen <haibo.chen@xxxxxxx>
Regards
Haibo Chen
>
> Co-developed-by: Larisa Grigore <larisa.grigore@xxxxxxx>
> Signed-off-by: Larisa Grigore <larisa.grigore@xxxxxxx>
> Signed-off-by: Ciprian Marian Costea <ciprianmarian.costea@xxxxxxxxxxx>
> ---
> drivers/mmc/host/sdhci-esdhc-imx.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c
> b/drivers/mmc/host/sdhci-esdhc-imx.c
> index a7a5df673b0f..28288fca87ff 100644
> --- a/drivers/mmc/host/sdhci-esdhc-imx.c
> +++ b/drivers/mmc/host/sdhci-esdhc-imx.c
> @@ -321,6 +321,14 @@ static struct esdhc_soc_data usdhc_s32g2_data = {
> .quirks = SDHCI_QUIRK_NO_LED,
> };
>
> +static struct esdhc_soc_data usdhc_s32n79_data = {
> + .flags = ESDHC_FLAG_USDHC | ESDHC_FLAG_MAN_TUNING
> + | ESDHC_FLAG_HAVE_CAP1 | ESDHC_FLAG_HS200
> + | ESDHC_FLAG_HS400 | ESDHC_FLAG_HS400_ES
> + | ESDHC_FLAG_SKIP_ERR004536,
> + .quirks = SDHCI_QUIRK_NO_LED,
> +};
> +
> static struct esdhc_soc_data usdhc_imx7ulp_data = {
> .flags = ESDHC_FLAG_USDHC | ESDHC_FLAG_MAN_TUNING
> | ESDHC_FLAG_HAVE_CAP1 | ESDHC_FLAG_HS200 @@ -408,6
> +416,7 @@ static const struct of_device_id imx_esdhc_dt_ids[] = {
> { .compatible = "fsl,imx95-usdhc", .data = &usdhc_imx95_data, },
> { .compatible = "fsl,imxrt1050-usdhc", .data = &usdhc_imxrt1050_data, },
> { .compatible = "nxp,s32g2-usdhc", .data = &usdhc_s32g2_data, },
> + { .compatible = "nxp,s32n79-usdhc", .data = &usdhc_s32n79_data, },
> { /* sentinel */ }
> };
> MODULE_DEVICE_TABLE(of, imx_esdhc_dt_ids);
> --
> 2.43.0