]> git.sur5r.net Git - u-boot/commitdiff
dm: disk: Use legacy block driver info for block device access
authorSimon Glass <sjg@chromium.org>
Sun, 1 May 2016 17:36:12 +0000 (11:36 -0600)
committerSimon Glass <sjg@chromium.org>
Tue, 17 May 2016 15:54:43 +0000 (09:54 -0600)
Instead of calling xx_get_dev() functions for each interface type, use the
new legacy block driver which can provide the device through its interface.

Signed-off-by: Simon Glass <sjg@chromium.org>
disk/part.c

index 2613bff22cd219a4b40bcd004c9d0364d05301d4..f055c74aa84b8bb62825f39032935820a36d1aba 100644 (file)
@@ -72,7 +72,6 @@ static struct part_driver *part_driver_lookup_type(int part_type)
 static struct blk_desc *get_dev_hwpart(const char *ifname, int dev, int hwpart)
 {
        const struct block_drvr *drvr = block_drvr;
-       struct blk_desc* (*reloc_get_dev)(int dev);
        int (*select_hwpart)(int dev_num, int hwpart);
        char *name;
        int ret;
@@ -86,16 +85,16 @@ static struct blk_desc *get_dev_hwpart(const char *ifname, int dev, int hwpart)
 #endif
        while (drvr->name) {
                name = drvr->name;
-               reloc_get_dev = drvr->get_dev;
                select_hwpart = drvr->select_hwpart;
 #ifdef CONFIG_NEEDS_MANUAL_RELOC
                name += gd->reloc_off;
-               reloc_get_dev += gd->reloc_off;
                if (select_hwpart)
                        select_hwpart += gd->reloc_off;
 #endif
                if (strncmp(ifname, name, strlen(name)) == 0) {
-                       struct blk_desc *dev_desc = reloc_get_dev(dev);
+                       struct blk_desc *dev_desc;
+
+                       dev_desc = blk_get_devnum_by_typename(name, dev);
                        if (!dev_desc)
                                return NULL;
                        if (hwpart == 0 && !select_hwpart)