[PATCH 4/5] Use %p in format for pointers

Sascha Hauer s.hauer at pengutronix.de
Fri Oct 14 03:18:50 EDT 2011


On Fri, Oct 14, 2011 at 12:06:40AM +0200, Loïc Minier wrote:
> res->start and res->size are resource_type_t which is a phys_addr_t
> which itself could someday be a 64-bits pointer (for instance when
> building sandbox on a 64-bits host).  Instead of hardcoding %08x as a
> format for pointers, use the %p format.
> 
> Signed-off-by: Loïc Minier <loic.minier at linaro.org>
> ---
>  drivers/base/driver.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/base/driver.c b/drivers/base/driver.c
> index 0b80103..515ff8d 100644
> --- a/drivers/base/driver.c
> +++ b/drivers/base/driver.c
> @@ -349,8 +349,8 @@ static int do_devinfo(struct command *cmdtp, int argc, char *argv[])
>  			printf("num   : %d\n", i);
>  			if (res->name)
>  				printf("name  : %s\n", res->name);
> -			printf("start : 0x%08x\nsize  : 0x%08x\n",
> -			       res->start, res->size);
> +			printf("start : 0x%p\nsize  : 0x%p\n",
> +			       (void *)res->start, (void *)res->size);

With this patch I get the following warning on a 64bit host:

drivers/base/driver.c: In function ‘do_devinfo’:
drivers/base/driver.c:353:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
drivers/base/driver.c:353:31: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]

We should probably set CONFIG_PHYS_ADDR_T_64BIT correctly on a 64bit
host.

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list