Handle the controller version even if quirks are set. The controller in
Renesas Gen3 SoCs does provide the version register, which indicates a
controller v10 and the controller does support internal DMA and /1024
divider.

Signed-off-by: Marek Vasut <marek.vasut+rene...@gmail.com>
Cc: Jaehoon Chung <jh80.ch...@samsung.com>
Cc: Masahiro Yamada <yamada.masah...@socionext.com>
---
 drivers/mmc/matsushita-common.c | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

diff --git a/drivers/mmc/matsushita-common.c b/drivers/mmc/matsushita-common.c
index 377f349b41..d5facd972f 100644
--- a/drivers/mmc/matsushita-common.c
+++ b/drivers/mmc/matsushita-common.c
@@ -722,16 +722,15 @@ int matsu_sd_probe(struct udevice *dev, u32 quirks)
        plat->cfg.name = dev->name;
        plat->cfg.host_caps |= MMC_MODE_HS_52MHz | MMC_MODE_HS;
 
-       if (quirks) {
+       if (quirks)
                priv->caps = quirks;
-       } else {
-               priv->version = matsu_sd_readl(priv, MATSU_SD_VERSION) &
-                                                       MATSU_SD_VERSION_IP;
-               dev_dbg(dev, "version %x\n", priv->version);
-               if (priv->version >= 0x10) {
-                       priv->caps |= MATSU_SD_CAP_DMA_INTERNAL;
-                       priv->caps |= MATSU_SD_CAP_DIV1024;
-               }
+
+       priv->version = matsu_sd_readl(priv, MATSU_SD_VERSION) &
+                                               MATSU_SD_VERSION_IP;
+       dev_dbg(dev, "version %x\n", priv->version);
+       if (priv->version >= 0x10) {
+               priv->caps |= MATSU_SD_CAP_DMA_INTERNAL;
+               priv->caps |= MATSU_SD_CAP_DIV1024;
        }
 
        if (fdt_get_property(gd->fdt_blob, dev_of_offset(dev), "non-removable",
-- 
2.16.2

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to