mmc: matsushita-common: Always check controller version

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+renesas@gmail.com>
Cc: Jaehoon Chung <jh80.chung@samsung.com>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
master^2
Marek Vasut 7 years ago
parent a7b7401c78
commit 58c35b17aa
  1. 17
      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",

Loading…
Cancel
Save