[PATCH 1/5] devfs-core: introduce devfs_append_partition

Uwe Kleine-König u.kleine-koenig at pengutronix.de
Tue Feb 18 05:36:11 EST 2014


From: Jan Luebbe <jlu at pengutronix.de>

This simplifies board code for partition setup by keeping track of the
offset.

Signed-off-by: Jan Luebbe <jlu at pengutronix.de>
[ukl: change return type analogous to how devfs_add_partition was
changed in 121c3d6e9c2f (devfs: let devfs_add_partition return the new
partition).]
Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
---
 fs/devfs-core.c  | 9 +++++++++
 include/driver.h | 6 ++++--
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/fs/devfs-core.c b/fs/devfs-core.c
index 44f0169e6324..c10345b3bfed 100644
--- a/fs/devfs-core.c
+++ b/fs/devfs-core.c
@@ -303,6 +303,15 @@ struct cdev *devfs_add_partition(const char *devname, loff_t offset, loff_t size
 	return new;
 }
 
+struct cdev *devfs_append_partition(const char *devname, loff_t *offset,
+		loff_t size, int flags, const char *name)
+{
+	struct cdev *ret;
+	ret = devfs_add_partition(devname, *offset, size, flags, name);
+	*offset += size;
+	return ret;
+}
+
 int devfs_del_partition(const char *name)
 {
 	struct cdev *cdev;
diff --git a/include/driver.h b/include/driver.h
index bbe789b51ead..9fa94ae78ab2 100644
--- a/include/driver.h
+++ b/include/driver.h
@@ -487,8 +487,10 @@ int cdev_erase(struct cdev *cdev, size_t count, loff_t offset);
 #define DEVFS_IS_PARTITION		(1 << 2)
 #define DEVFS_IS_CHARACTER_DEV		(1 << 3)
 
-struct cdev *devfs_add_partition(const char *devname, loff_t offset, loff_t size,
-		int flags, const char *name);
+struct cdev *devfs_add_partition(const char *devname, loff_t offset,
+		loff_t size, int flags, const char *name);
+struct cdev *devfs_append_partition(const char *devname, loff_t *offset,
+		loff_t size, int flags, const char *name);
 int devfs_del_partition(const char *name);
 
 #define DRV_OF_COMPAT(compat) \
-- 
1.8.5.3




More information about the barebox mailing list