From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chee, Tien Fong Date: Thu, 1 Feb 2018 06:10:46 +0000 Subject: [U-Boot] [PATCH v7 2/3] cmd: ubifs: Move ubifs_initialized checking into cmd_ubifs_umount() In-Reply-To: <11ab76b9-d260-f1be-0b61-84cfbf465aa2@denx.de> References: <1517310984-71347-1-git-send-email-tien.fong.chee@intel.com> <1517310984-71347-3-git-send-email-tien.fong.chee@intel.com> <11ab76b9-d260-f1be-0b61-84cfbf465aa2@denx.de> Message-ID: <1517465446.2520.0.camel@intel.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit To: u-boot@lists.denx.de On Tue, 2018-01-30 at 13:09 +0100, Marek Vasut wrote: > On 01/30/2018 12:16 PM, tien.fong.chee at intel.com wrote: > > > > From: Tien Fong Chee > > > > cmd_ubifs_umount() function would be called directly instead of > > involving > > whole command machinery in generic firmware loader, so checking on > > ubifs_initialized status need to be done in cmd_ubifs_umount() > > without > > breaking original functionality design. > > > > Signed-off-by: Tien Fong Chee 64db5518baa > > 2ea1a8a0e81cc485d760b850c7052 > > --- > >  cmd/ubifs.c         | 20 ++++++++++++-------- > >  include/ubi_uboot.h |  1 + > >  2 files changed, 13 insertions(+), 8 deletions(-) > > > > diff --git a/cmd/ubifs.c b/cmd/ubifs.c > > index 5e9d357..d18e0da 100644 > > --- a/cmd/ubifs.c > > +++ b/cmd/ubifs.c > > @@ -51,27 +51,31 @@ int ubifs_is_mounted(void) > >   return ubifs_mounted; > >  } > >   > > -void cmd_ubifs_umount(void) > > +int cmd_ubifs_umount(void) > >  { > > + if (ubifs_initialized == 0) { > > + printf("No UBIFS volume mounted!\n"); > > + return -1; > > + } > > + > >   uboot_ubifs_umount(); > >   ubifs_mounted = 0; > >   ubifs_initialized = 0; > > + > > + return 0; > >  } > >   > >  static int do_ubifs_umount(cmd_tbl_t *cmdtp, int flag, int argc, > >   char * const argv[]) > >  { > > + int ret; > > + > >   if (argc != 1) > >   return CMD_RET_USAGE; > >   > > - if (ubifs_initialized == 0) { > > - printf("No UBIFS volume mounted!\n"); > > - return -1; > > - } > > - > > - cmd_ubifs_umount(); > > + ret = cmd_ubifs_umount(); > return cmd_ubifs_umount() directly ? > Okay. > > > > - return 0; > > + return ret; > >  } > >   > >  static int do_ubifs_ls(cmd_tbl_t *cmdtp, int flag, int argc, > > diff --git a/include/ubi_uboot.h b/include/ubi_uboot.h > > index 80acbcb..827dbfc 100644 > > --- a/include/ubi_uboot.h > > +++ b/include/ubi_uboot.h > > @@ -75,5 +75,6 @@ extern int ubi_volume_write(char *volume, void > > *buf, size_t size); > >  extern int ubi_volume_read(char *volume, char *buf, size_t size); > >   > >  extern struct ubi_device *ubi_devices[]; > > +int cmd_ubifs_umount(void); > >   > >  #endif > > >