[U-Boot] [PATCH] EXT4: Fix number base handling of "ext4write" command

Lukasz Majewski l.majewski at samsung.com
Fri Jan 31 10:27:55 CET 2014


Hi Wolfgang,

> Unlike other commands (for example, "fatwrite"), ext4write would
> interpret the "sizebytes" as decimal number.  This is not only
> inconsistend and unexpected to most users, it also breaks usage
> like this:
> 
> 	tftp ${addr} ${name}
> 	ext4write mmc 0:2 ${addr} ${filename} ${filesize}
> 
> Change this to use the standard notation of base 16 input format.
> See also commit b770e88
> 
> WARNING: this is a change to the user interface!!

In other words you are breaking API :-) - but this change is more than
welcome and you have got enough power to do it :-).

> 
> Signed-off-by: Wolfgang Denk <wd at denx.de>
> Cc: Uma Shankar <uma.shankar at samsung.com>
> Cc: Stephen Warren <swarren at nvidia.com>
> ---
>  common/cmd_ext4.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/common/cmd_ext4.c b/common/cmd_ext4.c
> index 8289d25..68b047b 100644
> --- a/common/cmd_ext4.c
> +++ b/common/cmd_ext4.c
> @@ -79,8 +79,8 @@ int do_ext4_write(cmd_tbl_t *cmdtp, int flag, int
> argc, /* get the address in hexadecimal format (string to int) */
>  	ram_address = simple_strtoul(argv[3], NULL, 16);
>  
> -	/* get the filesize in base 10 format */
> -	file_size = simple_strtoul(argv[5], NULL, 10);
> +	/* get the filesize in hexadecimal format */
> +	file_size = simple_strtoul(argv[5], NULL, 16);
>  
>  	/* set the device as block device */
>  	ext4fs_set_blk_dev(dev_desc, &info);

My only comment is to add proper description to the ext4write commend 
description. Now it only says:

"<interface> <dev[:part]> <addr> <absolute filename path> [sizebytes]\n"

and I think, that we could come up with [sizebytes - HEX] or something
similar.


-- 
Best regards,

Lukasz Majewski

Samsung R&D Institute Poland (SRPOL) | Linux Platform Group


More information about the U-Boot mailing list