[U-Boot] [PATCH] part: fix "part list ... -bootable varname" to use hex

Sjoerd Simons sjoerd.simons at collabora.co.uk
Thu Dec 10 09:22:15 CET 2015


On Wed, 2015-12-09 at 09:48 -0700, Stephen Warren wrote:
> From: Stephen Warren <swarren at nvidia.com>
> 
> Unfortunately U-Boot assumes that almost all numbers are in hex, including
> partition numbers passed to e.g. "load". So, the command "part list mmc 0
> -bootable devplist" should use hex when writing partition numbers into
> $devplist, so they'll be correctly interpreted.

Ugh, that's unexpected. But indeed it assumes partition numbers are
base 16.

Reviewed-by: Sjoerd Simons <sjoerd.simons at collabora.co.uk>

> Change-Id: I9a70b19749643876baadb45efbc3decaef8bfee2
> Fixes: 0798d6fd4191 ("part: Add support for list filtering on
> bootable partitions")
> Cc: Sjoerd Simons <sjoerd.simons at collabora.co.uk>
> Signed-off-by: Stephen Warren <swarren at nvidia.com>
> ---
>  common/cmd_part.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/common/cmd_part.c b/common/cmd_part.c
> index b860624d939c..55995097eb00 100644
> --- a/common/cmd_part.c
> +++ b/common/cmd_part.c
> @@ -100,7 +100,7 @@ static int do_part_list(int argc, char * const
> argv[])
>  			if (bootable && !info.bootable)
>  				continue;
>  
> -			sprintf(t, "%s%d", str[0] ? " " : "", p);
> +			sprintf(t, "%s%x", str[0] ? " " : "", p);
>  			strcat(str, t);
>  		}
>  		setenv(var, str);

-- 
Sjoerd Simons
Collabora Ltd.


More information about the U-Boot mailing list