[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <202004280926.S92wb0O8%lkp@intel.com>
Date: Tue, 28 Apr 2020 09:41:35 +0800
From: kbuild test robot <lkp@...el.com>
To: Syed Nayyar Waris <syednwaris@...il.com>, akpm@...ux-foundation.org
Cc: kbuild-all@...ts.01.org, andriy.shevchenko@...ux.intel.com,
vilhelm.gray@...il.com, rrichter@...vell.com,
linus.walleij@...aro.org, bgolaszewski@...libre.com,
linux-gpio@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 5/6] gpio: thunderx: Utilize for_each_set_clump macro
Hi Syed,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on gpio/for-next]
[also build test WARNING on linus/master asm-generic/master v5.7-rc3 next-20200424]
[cannot apply to xlnx/master]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Syed-Nayyar-Waris/Introduce-the-for_each_set_clump-macro/20200427-184103
base: https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git for-next
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-191-gc51a0382-dirty
make ARCH=x86_64 allmodconfig
make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@...el.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/gpio/gpio-thunderx.c:284:9: sparse: sparse: incorrect type in argument 1 (different type sizes) @@ expected unsigned long *clump @@ got unsigunsigned long *clump @@
>> drivers/gpio/gpio-thunderx.c:284:9: sparse: expected unsigned long *clump
>> drivers/gpio/gpio-thunderx.c:284:9: sparse: got unsigned long long *
>> drivers/gpio/gpio-thunderx.c:284:9: sparse: sparse: incorrect type in argument 1 (different type sizes) @@ expected unsigned long *clump @@ got unsigunsigned long *clump @@
>> drivers/gpio/gpio-thunderx.c:284:9: sparse: expected unsigned long *clump
>> drivers/gpio/gpio-thunderx.c:284:9: sparse: got unsigned long long *
vim +284 drivers/gpio/gpio-thunderx.c
272
273 static void thunderx_gpio_set_multiple(struct gpio_chip *chip,
274 unsigned long *mask,
275 unsigned long *bits)
276 {
277 int bank;
278 u64 set_bits, clear_bits, gpio_mask;
279 const unsigned long bank_size = 64;
280 unsigned long offset;
281
282 struct thunderx_gpio *txgpio = gpiochip_get_data(chip);
283
> 284 for_each_set_clump(offset, gpio_mask, mask, chip->ngpio, bank_size) {
285 bank = offset / bank_size;
286 set_bits = bits[bank] & gpio_mask;
287 clear_bits = ~bits[bank] & gpio_mask;
288 writeq(set_bits, txgpio->register_base + (bank * GPIO_2ND_BANK) + GPIO_TX_SET);
289 writeq(clear_bits, txgpio->register_base + (bank * GPIO_2ND_BANK) + GPIO_TX_CLR);
290 }
291 }
292
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Powered by blists - more mailing lists