dm: core: Update lists_bind_fdt() to use ofnode
[oweals/u-boot.git] / drivers / mmc / mmc-uclass.c
index c9b6364260e854df6b0eb69c15d40947474d0546..16cc91ebdfd002d845227e457422a63c9c9c3be7 100644 (file)
@@ -260,13 +260,18 @@ static int mmc_select_hwpart(struct udevice *bdev, int hwpart)
 
 static int mmc_blk_probe(struct udevice *dev)
 {
-       struct blk_desc *block_dev = dev_get_uclass_platdata(dev);
-       int dev_num = block_dev->devnum;
-       struct mmc *mmc = find_mmc_device(dev_num);
+       struct udevice *mmc_dev = dev_get_parent(dev);
+       struct mmc_uclass_priv *upriv = dev_get_uclass_priv(mmc_dev);
+       struct mmc *mmc = upriv->mmc;
+       int ret;
+
+       ret = mmc_init(mmc);
+       if (ret) {
+               debug("%s: mmc_init() failed (err=%d)\n", __func__, ret);
+               return ret;
+       }
 
-       if (!mmc)
-               return -ENODEV;
-       return mmc_init(mmc);
+       return 0;
 }
 
 static const struct blk_ops mmc_blk_ops = {