From: Hai Pham Date: Thu, 26 Jan 2023 20:06:01 +0000 (+0100) Subject: mmc: renesas-sdhi: Flag non-standard SDnH handling for V3M X-Git-Tag: v2023.07~173^2~8 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3c78ce868047bdd3028e5bc741dae13e17ad4a1e;p=platform%2Fkernel%2Fu-boot.git mmc: renesas-sdhi: Flag non-standard SDnH handling for V3M V3M handles SDnH differently than other Gen3 SoCs, so let's add a separate entry for that. This will allow better SDnH handling in the future. Based on Linux commit 627151b4966f ("mmc: renesas_sdhi: Flag non-standard SDnH handling for V3M") by Wolfram Sang Signed-off-by: Hai Pham Reviewed-by: Jaehoon Chung --- diff --git a/drivers/mmc/renesas-sdhi.c b/drivers/mmc/renesas-sdhi.c index f85ced2..f30d784 100644 --- a/drivers/mmc/renesas-sdhi.c +++ b/drivers/mmc/renesas-sdhi.c @@ -930,6 +930,12 @@ static void renesas_sdhi_filter_caps(struct udevice *dev) priv->read_poll_flag = TMIO_SD_DMA_INFO1_END_RD; else priv->read_poll_flag = TMIO_SD_DMA_INFO1_END_RD2; + + /* V3M handles SD0H differently than other Gen3 SoCs */ + if (rmobile_get_cpu_type() == RMOBILE_CPU_TYPE_R8A77970) + priv->needs_clkh_fallback = true; + else + priv->needs_clkh_fallback = false; } static int renesas_sdhi_probe(struct udevice *dev) diff --git a/drivers/mmc/tmio-common.h b/drivers/mmc/tmio-common.h index 59d5a0e..e517ed9 100644 --- a/drivers/mmc/tmio-common.h +++ b/drivers/mmc/tmio-common.h @@ -151,6 +151,7 @@ struct tmio_sd_priv { u8 hs400_bad_tap; const u8 *adjust_hs400_calib_table; u32 quirks; + bool needs_clkh_fallback; #endif ulong (*clk_get_rate)(struct tmio_sd_priv *); };