[U-Boot] [PATCH 16/30] dm: cbfs: Fix handling of invalid type
Bin Meng
bmeng.cn at gmail.com
Tue Feb 16 15:51:45 CET 2016
Hi Simon,
On Mon, Feb 15, 2016 at 10:16 AM, Simon Glass <sjg at chromium.org> wrote:
> The comment for file_cbfs_type() says that it returns 0 for an invalid type.
> The code appears to check for -1, except that it uses an unsigned variable
> to store the type. This results in a warning on 64-bit machines.
>
> Adjust it to make the meaning clearer. Continue to handle the -1 case since
> it may be needed.
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
>
> cmd/cbfs.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/cmd/cbfs.c b/cmd/cbfs.c
> index 35d8a7a..cdfc9b6 100644
> --- a/cmd/cbfs.c
> +++ b/cmd/cbfs.c
> @@ -103,7 +103,7 @@ int do_cbfs_ls(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
> printf(" size type name\n");
> printf("------------------------------------------\n");
> while (file) {
> - u32 type = file_cbfs_type(file);
> + int type = file_cbfs_type(file);
but file_cbfs_type() returns u32 as its type..
> char *type_name = NULL;
> const char *filename = file_cbfs_name(file);
>
> @@ -140,7 +140,7 @@ int do_cbfs_ls(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
> case CBFS_COMPONENT_CMOS_LAYOUT:
> type_name = "cmos layout";
> break;
> - case -1UL:
> + case -1:
What about: case (u32)-1UL:
> type_name = "null";
> break;
> }
> --
Regards,
Bin
More information about the U-Boot
mailing list