diff options
author | Daniel Golle <daniel@makrotopia.org> | 2022-12-22 19:33:31 +0000 |
---|---|---|
committer | Richard Weinberger <richard@nod.at> | 2023-02-13 22:24:10 +0100 |
commit | 05b8773ca33253ea562be145cf3145b05ef19f86 (patch) | |
tree | 523b06d92969f2f7efe488d3458909a1788d2af8 | |
parent | 1ecf9e390452e73a362ea7fbde8f3f0db83de856 (diff) | |
download | linux-05b8773ca33253ea562be145cf3145b05ef19f86.tar.gz linux-05b8773ca33253ea562be145cf3145b05ef19f86.tar.bz2 linux-05b8773ca33253ea562be145cf3145b05ef19f86.zip |
mtd: ubi: block: wire-up device parent
ubiblock devices were previously only identifyable by their name, but
not connected to their parent UBI volume device e.g. in sysfs.
Properly parent ubiblock device as descendant of a UBI volume device
to reflect device model hierachy.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Richard Weinberger <richard@nod.at>
-rw-r--r-- | drivers/mtd/ubi/block.c | 2 | ||||
-rw-r--r-- | drivers/mtd/ubi/kapi.c | 1 | ||||
-rw-r--r-- | include/linux/mtd/ubi.h | 1 |
3 files changed, 3 insertions, 1 deletions
diff --git a/drivers/mtd/ubi/block.c b/drivers/mtd/ubi/block.c index f5d036203fe7..6a9eb2c860b5 100644 --- a/drivers/mtd/ubi/block.c +++ b/drivers/mtd/ubi/block.c @@ -419,7 +419,7 @@ int ubiblock_create(struct ubi_volume_info *vi) list_add_tail(&dev->list, &ubiblock_devices); /* Must be the last step: anyone can call file ops from now on */ - ret = add_disk(dev->gd); + ret = device_add_disk(vi->dev, dev->gd, NULL); if (ret) goto out_remove_minor; diff --git a/drivers/mtd/ubi/kapi.c b/drivers/mtd/ubi/kapi.c index 0fce99ff29b5..5db653eacbd4 100644 --- a/drivers/mtd/ubi/kapi.c +++ b/drivers/mtd/ubi/kapi.c @@ -79,6 +79,7 @@ void ubi_do_get_volume_info(struct ubi_device *ubi, struct ubi_volume *vol, vi->name_len = vol->name_len; vi->name = vol->name; vi->cdev = vol->cdev.dev; + vi->dev = &vol->dev; } /** diff --git a/include/linux/mtd/ubi.h b/include/linux/mtd/ubi.h index 7d48ea368c5e..a529347fd75b 100644 --- a/include/linux/mtd/ubi.h +++ b/include/linux/mtd/ubi.h @@ -110,6 +110,7 @@ struct ubi_volume_info { int name_len; const char *name; dev_t cdev; + struct device *dev; }; /** |