I'm trying to make my gru-kevin's eMMC work properly (it times out while tuning for HS400 and stops working when reinitialized via "mmc dev 0"). While experimenting with what works on my board I ended up implementing HS400ES support. And while I'm at it, I decided to do it for RK3568 as well since it turned out easy enough. Both are ported from relevant Linux drivers.
I'm trying this with "load mmc 0:1 0xd0000000 /bigfile $size" and getting the following speeds; and with "mmc info" the following differences: gru-kevin mmc0 | w/o this series | w/ this series --------------------+---------------------------+------------------- Bus Speed | 52000000 | 200000000 Mode | MMC High Speed (52MHz) | HS400ES (200 MHz) 8MiB Load Speed | ~9.5 MiB/s | ~51.5 MiB/s 256MiB Load Speed | ~177.8 MiB/s | ~114.5 MiB/s Listing partitions, listing files, reading files and the loaded bytes all look fine to me, but I'm not sure I haven't missed anything. Alper Nebi Yasak (3): mmc: sdhci: Add HS400 Enhanced Strobe support rockchip: sdhci: Add HS400 Enhanced Strobe support for RK3399 rockchip: sdhci: Add HS400 Enhanced Strobe support for RK3568 drivers/mmc/rockchip_sdhci.c | 51 ++++++++++++++++++++++++++++++++++++ drivers/mmc/sdhci.c | 18 +++++++++++++ include/sdhci.h | 1 + 3 files changed, 70 insertions(+) -- 2.33.1