[PATCH 2/4] mtd: ubi: introduce barebox specific ioctl to get ubi_num

Sascha Hauer s.hauer at pengutronix.de
Thu Sep 22 00:49:24 PDT 2016


Code wishing to manipulate ubi devices from outside the ubi
layer needs the ubi_num as reference. Add an ioctl to get
the ubi_num from a filedescriptor.

Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
 drivers/mtd/ubi/barebox.c | 3 +++
 include/mtd/ubi-user.h    | 2 ++
 2 files changed, 5 insertions(+)

diff --git a/drivers/mtd/ubi/barebox.c b/drivers/mtd/ubi/barebox.c
index 13c2a47..cb9223e 100644
--- a/drivers/mtd/ubi/barebox.c
+++ b/drivers/mtd/ubi/barebox.c
@@ -299,6 +299,9 @@ static int ubi_cdev_ioctl(struct cdev *cdev, int cmd, void *buf)
 		if (!req->bytes)
 			req->bytes = (__s64)ubi->avail_pebs * ubi->leb_size;
 		return ubi_create_volume(ubi, req);
+	case UBI_IOCGETUBINUM:
+		*(u32 *)buf = ubi->ubi_num;
+		break;
 	};
 
 	return 0;
diff --git a/include/mtd/ubi-user.h b/include/mtd/ubi-user.h
index 8c02f96..9425533 100644
--- a/include/mtd/ubi-user.h
+++ b/include/mtd/ubi-user.h
@@ -161,6 +161,8 @@
 /* Re-name volumes */
 #define UBI_IOCRNVOL _IOW(UBI_IOC_MAGIC, 3, struct ubi_rnvol_req)
 
+#define UBI_IOCGETUBINUM _IOR(UBI_IOC_MAGIC, 32, __u32)
+
 /* ioctl commands of the UBI control character device */
 
 #define UBI_CTRL_IOC_MAGIC 'o'
-- 
2.8.1




More information about the barebox mailing list