From: Jonas Karlman Date: Wed, 24 Jul 2024 06:55:36 +0000 (+0000) Subject: mmc: rockchip_dw_mmc: Allow 4-bit mode when 8-bit mode is supported X-Git-Url: http://git.dujemihanovic.xyz/html/index.html?a=commitdiff_plain;h=2dc3600d360a88861f076cda6769d7e1ad3204b0;p=u-boot.git mmc: rockchip_dw_mmc: Allow 4-bit mode when 8-bit mode is supported Hosts capable of 8-bit can also do 4 bits, fix use of 4-bit mode when 8-bit mode is supported. This fixes use of 1-bit mode with SD NAND on ROCK Pi S using the DT in v6.11-rc1 that chage to use 8-bit bus to also support eMMC. With this 4-bit mode is used with SD NAND and 8-bit mode with eMMC, same as in Linux kernel. Signed-off-by: Jonas Karlman Reviewed-by: Kever Yang --- diff --git a/drivers/mmc/rockchip_dw_mmc.c b/drivers/mmc/rockchip_dw_mmc.c index 1a10b7057a..549fb80f19 100644 --- a/drivers/mmc/rockchip_dw_mmc.c +++ b/drivers/mmc/rockchip_dw_mmc.c @@ -159,6 +159,10 @@ static int rockchip_dwmmc_probe(struct udevice *dev) host->mmc->dev = dev; upriv->mmc = host->mmc; + /* Hosts capable of 8-bit can also do 4 bits */ + if (host->buswidth == 8) + plat->cfg.host_caps |= MMC_MODE_4BIT; + return dwmci_probe(dev); }