]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
mmc: msm_sdhci: Use mmc_of_parse for setting host_caps
authorManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Thu, 16 Jul 2020 09:07:26 +0000 (14:37 +0530)
committerPeng Fan <peng.fan@nxp.com>
Tue, 15 Sep 2020 02:13:37 +0000 (10:13 +0800)
Since the introduction of 'get_cd' callback in sdhci core,
dragonboard410c's MMC interface is broken. It turns out that 'get_cd'
callback checks for the host_caps for validating the chip select. And
since the msm_sdhci driver is not parsing the host_caps from DT, not
all of the cababilities are parsed properly. This results in the MMC
interfaces to be broken.

Hence, fix this by adding a call to 'mmc_of_parse' during driver probe.

Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Tested-by: Aníbal Limón <anibal.limon@linaro.org>
Reviewed-By: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
drivers/mmc/msm_sdhci.c

index 56c3e35c9e9857aab40f3973d9a7b11126a387c8..2a1f412278e127cbc5712d43b85a01180006be2a 100644 (file)
@@ -142,6 +142,10 @@ static int msm_sdc_probe(struct udevice *dev)
                writel(caps, host->ioaddr + SDHCI_VENDOR_SPEC_CAPABILITIES0);
        }
 
+       ret = mmc_of_parse(dev, &plat->cfg);
+       if (ret)
+               return ret;
+
        host->mmc = &plat->mmc;
        host->mmc->dev = dev;
        ret = sdhci_setup_cfg(&plat->cfg, host, 0, 0);