mmc: move 'parent' tracking to mmc_blk_data
authorDan Williams <dan.j.williams@intel.com>
Mon, 20 Jun 2016 17:40:44 +0000 (10:40 -0700)
committerDan Williams <dan.j.williams@intel.com>
Wed, 22 Jun 2016 17:13:20 +0000 (10:13 -0700)
In preparation for the removal of 'driverfs_dev' from 'struct gendisk',
carry this data in mmc_blk_data. It is used for registration of parent
disks and partitions.

Cc: Ulf Hansson <ulf.hansson@linaro.org>
Cc: Bart Van Assche <bart.vanassche@sandisk.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/mmc/card/block.c

index 383184743f9a73c4771f93d085620e376ad7f6f4..d1733424bf6e68190b359e04383880699be34b3c 100644 (file)
@@ -93,6 +93,7 @@ static DEFINE_SPINLOCK(mmc_blk_lock);
  */
 struct mmc_blk_data {
        spinlock_t      lock;
+       struct device   *parent;
        struct gendisk  *disk;
        struct mmc_queue queue;
        struct list_head part;
@@ -2270,7 +2271,7 @@ again:
        md->disk->fops = &mmc_bdops;
        md->disk->private_data = md;
        md->disk->queue = md->queue.queue;
-       md->disk->driverfs_dev = parent;
+       md->parent = parent;
        set_disk_ro(md->disk, md->read_only || default_ro);
        md->disk->flags = GENHD_FL_EXT_DEVT;
        if (area_type & (MMC_BLK_DATA_AREA_RPMB | MMC_BLK_DATA_AREA_BOOT))
@@ -2458,7 +2459,7 @@ static int mmc_add_disk(struct mmc_blk_data *md)
        int ret;
        struct mmc_card *card = md->queue.card;
 
-       add_disk(md->disk);
+       device_add_disk(md->parent, md->disk);
        md->force_ro.show = force_ro_show;
        md->force_ro.store = force_ro_store;
        sysfs_attr_init(&md->force_ro.attr);