diff options
-rw-r--r-- | drivers/mtd/ubi/cdev.c | 14 | ||||
-rw-r--r-- | include/mtd/ubi-user.h | 2 |
2 files changed, 16 insertions, 0 deletions
diff --git a/drivers/mtd/ubi/cdev.c b/drivers/mtd/ubi/cdev.c index fd7e0f923b38..9ddbade72887 100644 --- a/drivers/mtd/ubi/cdev.c +++ b/drivers/mtd/ubi/cdev.c | |||
@@ -546,6 +546,20 @@ static int vol_cdev_ioctl(struct inode *inode, struct file *file, | |||
546 | err = ubi_leb_unmap(desc, lnum); | 546 | err = ubi_leb_unmap(desc, lnum); |
547 | break; | 547 | break; |
548 | } | 548 | } |
549 | |||
550 | /* Check if logical eraseblock is mapped command */ | ||
551 | case UBI_IOCEBISMAP: | ||
552 | { | ||
553 | int32_t lnum; | ||
554 | |||
555 | err = get_user(lnum, (__user int32_t *)argp); | ||
556 | if (err) { | ||
557 | err = -EFAULT; | ||
558 | break; | ||
559 | } | ||
560 | err = ubi_is_mapped(desc, lnum); | ||
561 | break; | ||
562 | } | ||
549 | #endif | 563 | #endif |
550 | 564 | ||
551 | default: | 565 | default: |
diff --git a/include/mtd/ubi-user.h b/include/mtd/ubi-user.h index ee2ea2e224af..5828d7879199 100644 --- a/include/mtd/ubi-user.h +++ b/include/mtd/ubi-user.h | |||
@@ -137,6 +137,8 @@ | |||
137 | #define UBI_IOCEBMAP _IOW(UBI_VOL_IOC_MAGIC, 3, struct ubi_map_req) | 137 | #define UBI_IOCEBMAP _IOW(UBI_VOL_IOC_MAGIC, 3, struct ubi_map_req) |
138 | /* Unmap an eraseblock, used for debugging, disabled by default */ | 138 | /* Unmap an eraseblock, used for debugging, disabled by default */ |
139 | #define UBI_IOCEBUNMAP _IOW(UBI_VOL_IOC_MAGIC, 4, int32_t) | 139 | #define UBI_IOCEBUNMAP _IOW(UBI_VOL_IOC_MAGIC, 4, int32_t) |
140 | /* Check if an eraseblock is mapped, used for debugging, disabled by default */ | ||
141 | #define UBI_IOCEBISMAP _IOR(UBI_VOL_IOC_MAGIC, 5, int32_t) | ||
140 | 142 | ||
141 | /* Maximum MTD device name length supported by UBI */ | 143 | /* Maximum MTD device name length supported by UBI */ |
142 | #define MAX_UBI_MTD_NAME_LEN 127 | 144 | #define MAX_UBI_MTD_NAME_LEN 127 |