Hi Jonas,

On 2/4/24 21:53, Jonas Karlman wrote:
Testing has shown that writing to eMMC using a slower mode then HS200
typically generate an ERROR on first attempt on RK3588.

   # Rescan using MMC legacy mode
   => mmc rescan 0

   # Write a single block to sector 0x4000 fails with ERROR
   => mmc write 20000000 4000 1

   # Write a single block to sector 0x4000 now works
   => mmc write 20000000 4000 1

With the MMC_SPEED_MODE_SET Kconfig option enabled.

Writing to eMMC using HS200 mode work more reliably than slower modes on
RK35xx boards. Enable MMC_HS200_SUPPORT Kconfig option by default to
prefer use of HS200 mode on RK356x and RK3588.

Signed-off-by: Jonas Karlman <jo...@kwiboo.se>
---
Changes in v2:
- Imply MMC_HS200_SUPPORT and SPL_MMC_HS200_SUPPORT in arch Kconfig
   instead of adding to each boards defconfig
- R-b tags not collected because of above change
- Combine changes for rk356x and rk3588 in one patch
- Update commit message

Link to v1: https://patchwork.ozlabs.org/patch/1891693/
---
  arch/arm/mach-rockchip/Kconfig      | 4 ++++
  configs/nanopi-r5c-rk3568_defconfig | 2 --
  configs/nanopi-r5s-rk3568_defconfig | 2 --
  configs/radxa-e25-rk3568_defconfig  | 2 --
  4 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/arch/arm/mach-rockchip/Kconfig b/arch/arm/mach-rockchip/Kconfig
index 6ff0aa6911e2..946ef5d7023d 100644
--- a/arch/arm/mach-rockchip/Kconfig
+++ b/arch/arm/mach-rockchip/Kconfig
@@ -292,6 +292,8 @@ config ROCKCHIP_RK3568
        imply OF_LIBFDT_OVERLAY
        imply ROCKCHIP_OTP
        imply MISC_INIT_R
+       imply MMC_HS200_SUPPORT if MMC_SDHCI_ROCKCHIP

MMC_SDHCI_ROCKCHIP is also required for eMMC on RK3399, which would change the current default, at the very least for Puma RK3399.

Doing a:

rg -lU --multiline-dotall 'RK3399.*MMC_HS.*' configs/

Only returns:
configs/evb-rk3399_defconfig
configs/pinebook-pro-rk3399_defconfig

and there are 29 defconfigs for RK3399-based boards right now, so maybe that's a bit too big of a change?

Cheers,
Quentin

Reply via email to