summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2013-11-01 09:33:17 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2013-11-05 08:37:55 +0100
commitb7a66554dcbc2525b719f7216cb77c2037e6af80 (patch)
tree4480342c5a832b36d75400a4703c431ecd72d2af
parentd85c580eebaad93c2dd3dfc72c89088c9d6e0210 (diff)
downloadbarebox-b7a66554dcbc2525b719f7216cb77c2037e6af80.tar.gz
barebox-b7a66554dcbc2525b719f7216cb77c2037e6af80.tar.xz
fs: Add function to get cdev by mountpath
This is useful to know for the bootloader spec implementation. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r--fs/fs.c13
-rw-r--r--include/fs.h2
2 files changed, 15 insertions, 0 deletions
diff --git a/fs/fs.c b/fs/fs.c
index 7d558e90d0..4563a8126a 100644
--- a/fs/fs.c
+++ b/fs/fs.c
@@ -283,6 +283,19 @@ static struct fs_device_d *get_fsdevice_by_path(const char *path)
return fs_dev_root;
}
+/*
+ * get_cdev_by_mountpath - return the cdev the given path
+ * is mounted on
+ */
+struct cdev *get_cdev_by_mountpath(const char *path)
+{
+ struct fs_device_d *fsdev;
+
+ fsdev = get_fsdevice_by_path(path);
+
+ return fsdev->cdev;
+}
+
char *get_mounted_path(const char *path)
{
struct fs_device_d *fdev;
diff --git a/include/fs.h b/include/fs.h
index 99f1689835..856e00abb0 100644
--- a/include/fs.h
+++ b/include/fs.h
@@ -184,6 +184,8 @@ char *normalise_link(const char *pathname, const char* symlink);
char *get_mounted_path(const char *path);
+struct cdev *get_cdev_by_mountpath(const char *path);
+
/* Register a new filesystem driver */
int register_fs_driver(struct fs_driver_d *fsdrv);