Re: [PATCH] media: wl128x: fix a clang warning

From: Nathan Chancellor
Date: Fri Jun 30 2023 - 11:54:37 EST


On Wed, Jun 28, 2023 at 09:48:53PM +0200, Mauro Carvalho Chehab wrote:
> Clang-16 produces this warning, which is fatal with CONFIG_WERROR:
>
> ../drivers/media/radio/wl128x/fmdrv_common.c:1237:19: error: variable 'cmd_cnt' set but not used [-Werror,-Wunused-but-set-variable]
> int ret, fw_len, cmd_cnt;
> ^
> 1 error generated.
>
> What happens is that cmd_cnt tracks the amount of firmware data packets
> were transfered, which is printed only when debug is used.

Alternatively, fmdbg() could be defined with no_printk(), so that the
variable appears used in all configurations, but this does not seem
unreasonable either.

> Switch to use the firmware count, as the message is all about reporting
> a partial firmware transfer.
>
> Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx>
> ---
> drivers/media/radio/wl128x/fmdrv_common.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/media/radio/wl128x/fmdrv_common.c b/drivers/media/radio/wl128x/fmdrv_common.c
> index cbd49dff6d74..b31b7ed60bbe 100644
> --- a/drivers/media/radio/wl128x/fmdrv_common.c
> +++ b/drivers/media/radio/wl128x/fmdrv_common.c
> @@ -1234,9 +1234,8 @@ static int fm_download_firmware(struct fmdev *fmdev, const u8 *fw_name)
> struct bts_action *action;
> struct bts_action_delay *delay;
> u8 *fw_data;
> - int ret, fw_len, cmd_cnt;
> + int ret, fw_len;
>
> - cmd_cnt = 0;
> set_bit(FM_FW_DW_INPROGRESS, &fmdev->flag);
>
> ret = request_firmware(&fw_entry, fw_name,
> @@ -1272,7 +1271,6 @@ static int fm_download_firmware(struct fmdev *fmdev, const u8 *fw_name)
> if (ret)
> goto rel_fw;
>
> - cmd_cnt++;
> break;
>
> case ACTION_DELAY: /* Delay */
> @@ -1284,7 +1282,7 @@ static int fm_download_firmware(struct fmdev *fmdev, const u8 *fw_name)
> fw_data += (sizeof(struct bts_action) + (action->size));
> fw_len -= (sizeof(struct bts_action) + (action->size));
> }
> - fmdbg("Firmware commands(%d) loaded to chip\n", cmd_cnt);
> + fmdbg("Transfered only %d of %d bytes of the firmware to chip\n", fw_entry->size - fw_len, fw_entry->size);
> rel_fw:
> release_firmware(fw_entry);
> clear_bit(FM_FW_DW_INPROGRESS, &fmdev->flag);
> --
> 2.41.0
>