mmc: pci: fix uninitialized pointer deref on probe
authorPeng Fan <peng.fan@nxp.com>
Tue, 6 Aug 2019 02:47:56 +0000 (02:47 +0000)
committerPeng Fan <peng.fan@nxp.com>
Fri, 9 Aug 2019 05:45:25 +0000 (13:45 +0800)
Commit 3d296365e4e8 ("mmc: sdhci: Add support for
sdhci-caps-mask") sdhci_setup_cfg() expects a valid sdhci_host mmc
field.

Fixes: 3d296365e4e8 ("mmc: sdhci: Add support for sdhci-caps-mask")
Cc: Faiz Abbas <faiz_abbas@ti.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
drivers/mmc/pci_mmc.c

index 182d41637fd709caaea8191d0ea05a12cfcf5880..404264a697fbac90880f45c788f06b36d94a6f50 100644 (file)
@@ -33,12 +33,12 @@ static int pci_mmc_probe(struct udevice *dev)
        host->ioaddr = (void *)dm_pci_map_bar(dev, PCI_BASE_ADDRESS_0,
                                              PCI_REGION_MEM);
        host->name = dev->name;
+       host->mmc = &plat->mmc;
+       host->mmc->dev = dev;
        ret = sdhci_setup_cfg(&plat->cfg, host, 0, 0);
        if (ret)
                return ret;
-       host->mmc = &plat->mmc;
        host->mmc->priv = &priv->host;
-       host->mmc->dev = dev;
        upriv->mmc = host->mmc;
 
        return sdhci_probe(dev);