build/patch/kernel/archive/rockchip64-5.12/general-emmc-hs400es-init-tweak.patch

23 lines
739 B
Diff

This patch is required to boot some Rock Pi 4 and NanoPC T4 units
with kernel 5.3+ and is on par with how it is done in Rockchip's BSP.
diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
index de8fbc396..95858e554 100644
--- a/drivers/mmc/core/mmc.c
+++ b/drivers/mmc/core/mmc.c
@@ -1371,12 +1371,12 @@ static int mmc_select_hs400es(struct mmc_card *card)
}
mmc_set_timing(host, MMC_TIMING_MMC_HS);
+ mmc_set_clock(host, card->ext_csd.hs_max_dtr);
+
err = mmc_switch_status(card, true);
if (err)
goto out_err;
- mmc_set_clock(host, card->ext_csd.hs_max_dtr);
-
/* Switch card to DDR with strobe bit */
val = EXT_CSD_DDR_BUS_WIDTH_8 | EXT_CSD_BUS_WIDTH_STROBE;
err = mmc_switch(card, EXT_CSD_CMD_SET_NORMAL,