[PATCH v2 2/3] rockchip: rk35xx: Enable eMMC HS200 mode by default

Quentin Schulz quentin.schulz at theobroma-systems.com
Mon Feb 5 10:47:58 CET 2024


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 <jonas at 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


More information about the U-Boot mailing list