[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <202103190616.0HIHKKJs-lkp@intel.com>
Date: Fri, 19 Mar 2021 06:26:37 +0800
From: kernel test robot <lkp@...el.com>
To: Alexander A Sverdlin <alexander.sverdlin@...ia.com>,
linux-gpio@...r.kernel.org
Cc: kbuild-all@...ts.01.org,
Alexander Sverdlin <alexander.sverdlin@...ia.com>,
Linus Walleij <linus.walleij@...aro.org>,
Bartosz Golaszewski <bgolaszewski@...libre.com>,
linux-kernel@...r.kernel.org,
Andy Shevchenko <andy.shevchenko@...il.com>
Subject: Re: [PATCH v2] gpio: pl061: Support implementations without GPIOINTR
line
Hi Alexander,
I love your patch! Perhaps something to improve:
[auto build test WARNING on gpio/for-next]
[also build test WARNING on v5.12-rc3 next-20210318]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Alexander-A-Sverdlin/gpio-pl061-Support-implementations-without-GPIOINTR-line/20210319-031352
base: https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git for-next
config: arm-defconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.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://github.com/0day-ci/linux/commit/bbac642db33d1e12c5a11a9630822bf16706c988
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Alexander-A-Sverdlin/gpio-pl061-Support-implementations-without-GPIOINTR-line/20210319-031352
git checkout bbac642db33d1e12c5a11a9630822bf16706c988
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
All warnings (new ones prefixed by >>):
>> drivers/gpio/gpio-pl061.c:305:6: warning: no previous prototype for 'pl061_populate_parent_fwspec' [-Wmissing-prototypes]
305 | void pl061_populate_parent_fwspec(struct gpio_chip *gc,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpio/gpio-pl061.c: In function 'pl061_probe':
drivers/gpio/gpio-pl061.c:416:9: error: 'struct gpio_irq_chip' has no member named 'populate_parent_fwspec'; did you mean 'populate_parent_alloc_arg'?
416 | girq->populate_parent_fwspec = pl061_populate_parent_fwspec;
| ^~~~~~~~~~~~~~~~~~~~~~
| populate_parent_alloc_arg
vim +/pl061_populate_parent_fwspec +305 drivers/gpio/gpio-pl061.c
303
304 #ifdef CONFIG_OF
> 305 void pl061_populate_parent_fwspec(struct gpio_chip *gc,
306 struct irq_fwspec *fwspec,
307 unsigned int parent_hwirq,
308 unsigned int parent_type)
309 {
310 struct device_node *dn = to_of_node(gc->irq.fwnode);
311 struct of_phandle_args pha;
312 int i;
313
314 fwspec->param_count = 0;
315
316 if (WARN_ON(!dn))
317 return;
318
319 /*
320 * This brute-force here is because of the fact PL061 is often paired
321 * with GIC-v3, which has 3-cell IRQ specifier (SPI/PPI selection), and
322 * unexpected range shifts in hwirq mapping (SPI IRQs are shifted by
323 * 32). So this is about reversing of gic_irq_domain_translate().
324 */
325 for (i = 0; i < PL061_GPIO_NR; i++) {
326 unsigned int p, pt;
327
328 if (pl061_child_to_parent_hwirq(gc, i, parent_type, &p, &pt))
329 continue;
330 if (p == parent_hwirq)
331 break;
332 }
333 if (WARN_ON(i == PL061_GPIO_NR))
334 return;
335
336 if (WARN_ON(of_irq_parse_one(dn, i, &pha)))
337 return;
338
339 fwspec->param_count = pha.args_count;
340 for (i = 0; i < pha.args_count; i++)
341 fwspec->param[i] = pha.args[i];
342 }
343 #endif
344
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Download attachment ".config.gz" of type "application/gzip" (53830 bytes)
Powered by blists - more mailing lists