From: Tien Fong Chee <tien.fong.c...@intel.com>

cmd_ubifs_mount() function would be called directly instead of
involving whole command machinery for mounting ubifs in
generic firmware loader, so some checking codes need to be factored out
into cmd_ubifs_mount() without breaking original functionality design.

Signed-off-by: Tien Fong Chee <tien.fong.c...@intel.com>
---
 cmd/ubifs.c         | 22 ++++++++++++++--------
 include/ubi_uboot.h |  1 +
 2 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/cmd/ubifs.c b/cmd/ubifs.c
index 0d059ca..8339bed 100644
--- a/cmd/ubifs.c
+++ b/cmd/ubifs.c
@@ -20,16 +20,10 @@
 static int ubifs_initialized;
 static int ubifs_mounted;
 
-static int do_ubifs_mount(cmd_tbl_t *cmdtp, int flag, int argc,
-                               char * const argv[])
+int cmd_ubifs_mount(char *vol_name)
 {
-       char *vol_name;
        int ret;
 
-       if (argc != 2)
-               return CMD_RET_USAGE;
-
-       vol_name = argv[1];
        debug("Using volume %s\n", vol_name);
 
        if (ubifs_initialized == 0) {
@@ -43,7 +37,19 @@ static int do_ubifs_mount(cmd_tbl_t *cmdtp, int flag, int 
argc,
 
        ubifs_mounted = 1;
 
-       return 0;
+       return ret;
+}
+static int do_ubifs_mount(cmd_tbl_t *cmdtp, int flag, int argc,
+                               char * const argv[])
+{
+       char *vol_name;
+
+       if (argc != 2)
+               return CMD_RET_USAGE;
+
+       vol_name = argv[1];
+
+       return cmd_ubifs_mount(vol_name);
 }
 
 int ubifs_is_mounted(void)
diff --git a/include/ubi_uboot.h b/include/ubi_uboot.h
index 827dbfc..fb300e8 100644
--- a/include/ubi_uboot.h
+++ b/include/ubi_uboot.h
@@ -76,5 +76,6 @@ extern int ubi_volume_read(char *volume, char *buf, size_t 
size);
 
 extern struct ubi_device *ubi_devices[];
 int cmd_ubifs_umount(void);
+int cmd_ubifs_mount(char *vol_name);
 
 #endif
-- 
2.2.0

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to