Fixed eMMC hs400es mode init on some rockchip64 boards in current and dev (#1823)

This commit is contained in:
Piotr Szczepanik 2020-03-09 20:28:03 +01:00 committed by GitHub
parent 26eb341db1
commit b31ebbea77
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 44 additions and 0 deletions

View File

@ -0,0 +1,22 @@
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);
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,

View File

@ -0,0 +1,22 @@
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);
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,