[U-Boot] [PATCH v7 2/3] cmd: ubifs: Move ubifs_initialized checking into cmd_ubifs_umount()

Chee, Tien Fong tien.fong.chee at intel.com
Thu Feb 1 06:10:46 UTC 2018


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 <tien.fong.chee at intel.com>
> > 
> > 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 <tien.fong.chee at intel.com>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
> > 
> 


More information about the U-Boot mailing list