nvme: Use blk_create_devicef() API
authorBin Meng <bmeng.cn@gmail.com>
Tue, 22 Aug 2017 15:15:15 +0000 (08:15 -0700)
committerTom Rini <trini@konsulko.com>
Mon, 28 Aug 2017 11:17:14 +0000 (07:17 -0400)
The codes in nvme_uclass_post_probe() can be replaced to call the
blk_create_devicef() API directly.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
drivers/nvme/nvme-uclass.c

index 0895bc9c249678d0e4130288836d00538fe2127c..334628cebfc5c75e868b0cf0296601f111ae9f6c 100644 (file)
@@ -26,28 +26,22 @@ static int nvme_info_init(struct uclass *uc)
 static int nvme_uclass_post_probe(struct udevice *udev)
 {
        char name[20];
-       char *str;
        struct udevice *ns_udev;
        int i, ret;
        struct nvme_dev *ndev = dev_get_priv(udev);
 
        /* Create a blk device for each namespace */
        for (i = 0; i < ndev->nn; i++) {
-               sprintf(name, "nvme-blk#%d", nvme_info->ns_num);
-               str = strdup(name);
-               if (!str)
-                       return -ENOMEM;
+               sprintf(name, "blk#%d", nvme_info->ns_num);
 
                /* The real blksz and size will be set by nvme_blk_probe() */
-               ret = blk_create_device(udev, "nvme-blk", str, IF_TYPE_NVME,
-                                       nvme_info->ns_num++, 512, 0, &ns_udev);
+               ret = blk_create_devicef(udev, "nvme-blk", name, IF_TYPE_NVME,
+                                        nvme_info->ns_num++, 512, 0, &ns_udev);
                if (ret) {
-                       free(str);
                        nvme_info->ns_num--;
 
                        return ret;
                }
-               device_set_name_alloced(ns_udev);
        }
 
        return 0;