mmc: xenon_sdhci: Add missing common host capabilities

Use mmc_of_parse() to set the common host properties. That includes
"bus-width", so parsing it can be removed from the driver.

But more importantly, "non-removable" is now respected, which fixes
the usage of eMMC.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Reviewed-by: Konstantin Porotchkin <kostap@marvell.com>
Tested-by: Marek Behún <marek.behun@nic.cz>
This commit is contained in:
Andre Heider 2020-09-10 19:53:40 +02:00 committed by Peng Fan
parent 8505147403
commit e79c59c0e2

View File

@ -485,20 +485,10 @@ static int xenon_sdhci_probe(struct udevice *dev)
armada_3700_soc_pad_voltage_set(host);
host->host_caps = MMC_MODE_HS | MMC_MODE_HS_52MHz | MMC_MODE_DDR_52MHz;
switch (fdtdec_get_int(gd->fdt_blob, dev_of_offset(dev), "bus-width",
1)) {
case 8:
host->host_caps |= MMC_MODE_8BIT;
break;
case 4:
host->host_caps |= MMC_MODE_4BIT;
break;
case 1:
break;
default:
printf("Invalid \"bus-width\" value\n");
return -EINVAL;
}
ret = mmc_of_parse(dev, &plat->cfg);
if (ret)
return ret;
host->ops = &xenon_sdhci_ops;