Re: [PATCH] platform/chrome: cros_ec_typec: fix clang -Wformat warning

From: Guenter Roeck
Date: Mon Mar 22 2021 - 10:15:29 EST


On Mon, Mar 22, 2021 at 4:56 AM Arnd Bergmann <arnd@xxxxxxxxxx> wrote:
>
> From: Arnd Bergmann <arnd@xxxxxxxx>
>
> Clang warns about using the %h format modifier to truncate an
> integer:
>
> drivers/platform/chrome/cros_ec_typec.c:1031:3: error: format specifies type 'unsigned char' but the argument has type 'unsigned int' [-Werror,-Wformat]
> typec->pd_ctrl_ver);
> ^~~~~~~~~~~~~~~~~~
> include/linux/dev_printk.h:131:47: note: expanded from macro 'dev_dbg'
> dev_printk(KERN_DEBUG, dev, dev_fmt(fmt), ##__VA_ARGS__); \
> ~~~ ^~~~~~~~~~~
>
> Use an explicit bit mask to limit the number to its lower eight bits
> instead.
>
> Fixes: ad7c0510c99e ("platform/chrome: cros_ec_typec: Update port info from EC")
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>

Reviewed-by: Guenter Roeck <groeck@xxxxxxxxxxxx>

>
> ---
> drivers/platform/chrome/cros_ec_typec.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/platform/chrome/cros_ec_typec.c b/drivers/platform/chrome/cros_ec_typec.c
> index 0811562deecc..f07b7e946560 100644
> --- a/drivers/platform/chrome/cros_ec_typec.c
> +++ b/drivers/platform/chrome/cros_ec_typec.c
> @@ -1027,8 +1027,8 @@ static int cros_typec_get_cmd_version(struct cros_typec_data *typec)
> else
> typec->pd_ctrl_ver = 0;
>
> - dev_dbg(typec->dev, "PD Control has version mask 0x%hhx\n",
> - typec->pd_ctrl_ver);
> + dev_dbg(typec->dev, "PD Control has version mask 0x%02x\n",
> + typec->pd_ctrl_ver & 0xff);
>
> return 0;
> }
> --
> 2.29.2
>