Re: drivers/iio/adc/xilinx-ams.c:1195:21: error: unused variable 'ams'

From: Jonathan Cameron
Date: Mon Feb 14 2022 - 10:19:22 EST


On Mon, 14 Feb 2022 22:47:14 +0800
kernel test robot <lkp@xxxxxxxxx> wrote:

> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 754e0b0e35608ed5206d6a67a791563c631cec07
> commit: d5c70627a79455154f5f636096abe6fe57510605 iio: adc: Add Xilinx AMS driver
> date: 8 weeks ago
> config: sh-allmodconfig (https://download.01.org/0day-ci/archive/20220214/202202142203.4ofqbic9-lkp@xxxxxxxxx/config)
> compiler: sh4-linux-gcc (GCC) 11.2.0
> reproduce (this is a W=1 build):
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d5c70627a79455154f5f636096abe6fe57510605
> git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> git fetch --no-tags linus master
> git checkout d5c70627a79455154f5f636096abe6fe57510605
> # save the config file to linux build tree
> mkdir build_dir
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=sh SHELL=/bin/bash drivers/iio/adc/ drivers/net/ethernet/freescale/
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@xxxxxxxxx>

I'm very tempted to say won't fix on this at least not in the IIO code.

The issue I think is the stub for iounmap on sh with no MMU not using the argument because it's
defined as a while loop rather than as an empty static inline function which is what we'd
get it it wasn't defined at all (AFAICT).

If anyone wants to take this on, my guess is drop
https://elixir.bootlin.com/linux/latest/source/arch/sh/include/asm/io.h#L274
and see if everything still works and the warning goes away.

+CC linux-sh for inputs.

Thanks,

Jonathan


>
> All errors (new ones prefixed by >>):
>
> drivers/iio/adc/xilinx-ams.c: In function 'ams_iounmap_ps':
> >> drivers/iio/adc/xilinx-ams.c:1195:21: error: unused variable 'ams' [-Werror=unused-variable]
> 1195 | struct ams *ams = data;
> | ^~~
> drivers/iio/adc/xilinx-ams.c: In function 'ams_iounmap_pl':
> drivers/iio/adc/xilinx-ams.c:1202:21: error: unused variable 'ams' [-Werror=unused-variable]
> 1202 | struct ams *ams = data;
> | ^~~
> cc1: all warnings being treated as errors
>
>
> vim +/ams +1195 drivers/iio/adc/xilinx-ams.c
>
> 1192
> 1193 static void ams_iounmap_ps(void *data)
> 1194 {
> > 1195 struct ams *ams = data;
> 1196
> 1197 iounmap(ams->ps_base);
> 1198 }
> 1199
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx