]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
rockchip: mmc: rockchip_dw_mmc: add rk3066/rk3188 support
authorJohan Jonker <jbx6244@gmail.com>
Sat, 9 Apr 2022 16:55:09 +0000 (18:55 +0200)
committerKever Yang <kever.yang@rock-chips.com>
Mon, 18 Apr 2022 03:25:13 +0000 (11:25 +0800)
The Rockchip SoCs rk3066/rk3188 have MMC DT nodes
with as compatible string "rockchip,rk2928-dw-mshc".
Add OF_PLATDATA support to the existing driver with
help of a DM_DRIVER_ALIAS.

This type needs a permanent enabled fifo.
The other Rockchip SoCs always have the property
"u-boot,spl-fifo-mode" in the MMC DT nodes,
because MMC to SRAM can't do DMA.
Make this property a requirement for MMC OF_PLATDATA
structures. The property "fifo-mode" must be added
for all other compile modes.

Signed-off-by: Johan Jonker <jbx6244@gmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
drivers/mmc/rockchip_dw_mmc.c

index be065ec0c34bd08a1c42a560afeecaae43228b3f..573bf16c875eef212a1d8a096465307b19993db3 100644 (file)
@@ -119,7 +119,7 @@ static int rockchip_dwmmc_probe(struct udevice *dev)
        host->priv = dev;
        host->dev_index = 0;
        priv->fifo_depth = dtplat->fifo_depth;
-       priv->fifo_mode = 0;
+       priv->fifo_mode = dtplat->u_boot_spl_fifo_mode;
        priv->minmax[0] = 400000;  /*  400 kHz */
        priv->minmax[1] = dtplat->max_frequency;
 
@@ -180,5 +180,6 @@ U_BOOT_DRIVER(rockchip_rk3288_dw_mshc) = {
        .plat_auto      = sizeof(struct rockchip_mmc_plat),
 };
 
+DM_DRIVER_ALIAS(rockchip_rk3288_dw_mshc, rockchip_rk2928_dw_mshc)
 DM_DRIVER_ALIAS(rockchip_rk3288_dw_mshc, rockchip_rk3328_dw_mshc)
 DM_DRIVER_ALIAS(rockchip_rk3288_dw_mshc, rockchip_rk3368_dw_mshc)