linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [linusw-gpio:gpiochip-no-driver-h 5/5] arch/arm/mach-omap1/irq.c:236:11: error: call to undeclared function 'irq_domain_add_legacy'; ISO C99 and later do not support implicit function declarations
@ 2023-01-28 20:51 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2023-01-28 20:51 UTC (permalink / raw)
  To: Linus Walleij; +Cc: llvm, oe-kbuild-all, linux-gpio

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git gpiochip-no-driver-h
head:   df771cce328bbd37333797d0df3471c2e03ecb03
commit: df771cce328bbd37333797d0df3471c2e03ecb03 [5/5] gpio: Make the legacy <linux/gpio.h> consumer-only
config: arm-omap1_defconfig (https://download.01.org/0day-ci/archive/20230129/202301290451.rXX4STQA-lkp@intel.com/config)
compiler: clang version 16.0.0 (https://github.com/llvm/llvm-project 4196ca3278f78c6e19246e54ab0ecb364e37d66a)
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
        # install arm cross compiling tool for clang build
        # apt-get install binutils-arm-linux-gnueabi
        # https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git/commit/?id=df771cce328bbd37333797d0df3471c2e03ecb03
        git remote add linusw-gpio https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git
        git fetch --no-tags linusw-gpio gpiochip-no-driver-h
        git checkout df771cce328bbd37333797d0df3471c2e03ecb03
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

>> arch/arm/mach-omap1/irq.c:236:11: error: call to undeclared function 'irq_domain_add_legacy'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
           domain = irq_domain_add_legacy(NULL, nr_irqs, irq_base, 0,
                    ^
>> arch/arm/mach-omap1/irq.c:237:13: error: use of undeclared identifier 'irq_domain_simple_ops'
                                          &irq_domain_simple_ops, NULL);
                                           ^
>> arch/arm/mach-omap1/irq.c:269:23: error: call to undeclared function 'irq_find_mapping'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
           d = irq_get_irq_data(irq_find_mapping(domain, omap_l2_irq));
                                ^
   3 errors generated.


vim +/irq_domain_add_legacy +236 arch/arm/mach-omap1/irq.c

55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  219  
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  220  	for (i = 0; i < irq_bank_count; i++) {
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  221  		irq_banks[i].va = ioremap(irq_banks[i].base_reg, 0xff);
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  222  		if (WARN_ON(!irq_banks[i].va))
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  223  			return;
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  224  	}
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  225  
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  226  	nr_irqs = irq_bank_count * 32;
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  227  
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  228  	irq_base = irq_alloc_descs(-1, 0, nr_irqs, 0);
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  229  	if (irq_base < 0) {
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  230  		pr_warn("Couldn't allocate IRQ numbers\n");
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  231  		irq_base = 0;
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  232  	}
b694331cfb2ec3 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  233  	omap_l2_irq = cpu_is_omap7xx() ? irq_base + 1 : irq_base;
685e2d08c54b1a arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  234  	omap_l2_irq -= NR_IRQS_LEGACY;
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  235  
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20 @236  	domain = irq_domain_add_legacy(NULL, nr_irqs, irq_base, 0,
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20 @237  				       &irq_domain_simple_ops, NULL);
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  238  
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  239  	pr_info("Total of %lu interrupts in %i interrupt banks\n",
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  240  		nr_irqs, irq_bank_count);
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  241  
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  242  	/* Mask and clear all interrupts */
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  243  	for (i = 0; i < irq_bank_count; i++) {
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  244  		irq_bank_writel(~0x0, i, IRQ_MIR_REG_OFFSET);
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  245  		irq_bank_writel(0x0, i, IRQ_ITR_REG_OFFSET);
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  246  	}
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  247  
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  248  	/* Clear any pending interrupts */
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  249  	irq_bank_writel(0x03, 0, IRQ_CONTROL_REG_OFFSET);
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  250  	irq_bank_writel(0x03, 1, IRQ_CONTROL_REG_OFFSET);
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  251  
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  252  	/* Enable interrupts in global mask */
59185eeeaad1f0 arch/arm/mach-omap1/irq.c Zebediah C. McClure 2009-03-23  253  	if (cpu_is_omap7xx())
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  254  		irq_bank_writel(0x0, 0, IRQ_GMR_REG_OFFSET);
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  255  
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  256  	/* Install the interrupt handlers for each bank */
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  257  	for (i = 0; i < irq_bank_count; i++) {
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  258  		for (j = i * 32; j < (i + 1) * 32; j++) {
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  259  			int irq_trigger;
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  260  
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  261  			irq_trigger = irq_banks[i].trigger_map >> IRQ_BIT(j);
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  262  			omap_irq_set_cfg(j, 0, 0, irq_trigger);
e8d36d5dbb6a6e arch/arm/mach-omap1/irq.c Rob Herring         2015-07-27  263  			irq_clear_status_flags(j, IRQ_NOREQUEST);
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  264  		}
55b44774438959 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20  265  		omap_alloc_gc(irq_banks[i].va, irq_base + i * 32, 32);
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  266  	}
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  267  
^1da177e4c3f41 arch/arm/mach-omap/irq.c  Linus Torvalds      2005-04-16  268  	/* Unmask level 2 handler */
b694331cfb2ec3 arch/arm/mach-omap1/irq.c Tony Lindgren       2015-05-20 @269  	d = irq_get_irq_data(irq_find_mapping(domain, omap_l2_irq));

:::::: The code at line 236 was first introduced by commit
:::::: 55b44774438959a957e717ecbdd9f2874b07ab31 ARM: OMAP1: Switch to use generic irqchip in preparation for sparse IRQ

:::::: TO: Tony Lindgren <tony@atomide.com>
:::::: CC: Tony Lindgren <tony@atomide.com>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-01-28 20:51 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-28 20:51 [linusw-gpio:gpiochip-no-driver-h 5/5] arch/arm/mach-omap1/irq.c:236:11: error: call to undeclared function 'irq_domain_add_legacy'; ISO C99 and later do not support implicit function declarations kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).