On Tue, Sep 11, 2012 at 07:56:29PM +0200, Lars-Peter Clausen wrote: > On 09/10/2012 07:30 PM, Thierry Reding wrote: > > On Mon, Sep 10, 2012 at 05:20:34PM +0200, Lars-Peter Clausen wrote: > >> On 09/10/2012 02:05 PM, Thierry Reding wrote: > >>> Hi, > >>> > >> > >> [...] > > > >> Patch 1 should go through the MIPS tree, but I still can't see why the issue > >> should occur nor does it happen for anybody else except for you. Instead of > >> moving the content over to the public irq.h I'd rather like to see the > >> private irq.h being renamed. > > > > If we can solve this some other way I'm all for it. Maybe you can share > > the defconfig or .config that you use so I can test under the same > > conditions. > > > > Thierry > > This is the config I'm using: > http://projects.qi-hardware.com/index.php/p/qi-kernel/source/tree/jz-3.4/arch/mips/configs/qi_lb60_defconfig I can still reproduce the error with that configuration. Perhaps related to the toolchain? I use a vanilla gcc 4.7.1 cross-compiler. This is all on top of Linux v3.6-rc2. Here's the complete error message: $ nice make ARCH=mips CROSS_COMPILE=/home/thierry.reding/pbs-stage1/bin/mips-linux-gnu- O=build/jz4740 Using /home/thierry.reding/src/kernel/linux-pwm.git as source for kernel GEN /home/thierry.reding/src/kernel/linux-pwm.git/build/jz4740/Makefile CHK include/linux/version.h CHK include/generated/utsrelease.h CALL /home/thierry.reding/src/kernel/linux-pwm.git/scripts/checksyscalls.sh CHK include/generated/compile.h CC arch/mips/jz4740/irq.o In file included from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/irq.h:18:0, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/irq.h:27, from /home/thierry.reding/src/kernel/linux-pwm.git/include/asm-generic/hardirq.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/hardirq.h:16, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/hardirq.h:7, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/interrupt.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:19: /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.h:20:39: error: 'struct irq_data' declared inside parameter list [-Werror] /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.h:20:39: error: its scope is only this definition or declaration, which is probably not what you want [-Werror] /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.h:21:38: error: 'struct irq_data' declared inside parameter list [-Werror] In file included from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/irq.h:356:0, from /home/thierry.reding/src/kernel/linux-pwm.git/include/asm-generic/hardirq.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/hardirq.h:16, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/hardirq.h:7, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/interrupt.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:19: /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/irqdesc.h:75:33: error: 'NR_IRQS' undeclared here (not in a function) /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c: In function 'jz4740_cascade': /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:49:39: error: 'JZ4740_IRQ_BASE' undeclared (first use in this function) /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:49:39: note: each undeclared identifier is reported only once for each function it appears in /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c: At top level: /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:62:6: error: conflicting types for 'jz4740_irq_suspend' In file included from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/irq.h:18:0, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/irq.h:27, from /home/thierry.reding/src/kernel/linux-pwm.git/include/asm-generic/hardirq.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/hardirq.h:16, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/hardirq.h:7, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/interrupt.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:19: /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.h:20:13: note: previous declaration of 'jz4740_irq_suspend' was here /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:68:6: error: conflicting types for 'jz4740_irq_resume' In file included from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/irq.h:18:0, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/irq.h:27, from /home/thierry.reding/src/kernel/linux-pwm.git/include/asm-generic/hardirq.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/hardirq.h:16, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/hardirq.h:7, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/interrupt.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:19: /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.h:21:13: note: previous declaration of 'jz4740_irq_resume' was here /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c: In function 'arch_init_irq': /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:91:41: error: 'JZ4740_IRQ_BASE' undeclared (first use in this function) cc1: all warnings being treated as errors make[3]: *** [arch/mips/jz4740/irq.o] Error 1 make[2]: *** [arch/mips/jz4740] Error 2 make[1]: *** [arch/mips] Error 2 make: *** [sub-make] Error 2 Using /home/thierry.reding/src/kernel/linux-pwm.git as source for kernel GEN /home/thierry.reding/src/kernel/linux-pwm.git/build/jz4740/Makefile CHK include/linux/version.h CHK include/generated/utsrelease.h CALL /home/thierry.reding/src/kernel/linux-pwm.git/scripts/checksyscalls.sh CHK include/generated/compile.h CC arch/mips/jz4740/irq.o In file included from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/irq.h:18:0, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/irq.h:27, from /home/thierry.reding/src/kernel/linux-pwm.git/include/asm-generic/hardirq.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/hardirq.h:16, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/hardirq.h:7, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/interrupt.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:19: /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.h:20:39: error: 'struct irq_data' declared inside parameter list [-Werror] /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.h:20:39: error: its scope is only this definition or declaration, which is probably not what you want [-Werror] /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.h:21:38: error: 'struct irq_data' declared inside parameter list [-Werror] In file included from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/irq.h:356:0, from /home/thierry.reding/src/kernel/linux-pwm.git/include/asm-generic/hardirq.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/hardirq.h:16, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/hardirq.h:7, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/interrupt.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:19: /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/irqdesc.h:75:33: error: 'NR_IRQS' undeclared here (not in a function) /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c: In function 'jz4740_cascade': /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:49:39: error: 'JZ4740_IRQ_BASE' undeclared (first use in this function) /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:49:39: note: each undeclared identifier is reported only once for each function it appears in /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c: At top level: /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:62:6: error: conflicting types for 'jz4740_irq_suspend' In file included from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/irq.h:18:0, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/irq.h:27, from /home/thierry.reding/src/kernel/linux-pwm.git/include/asm-generic/hardirq.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/hardirq.h:16, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/hardirq.h:7, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/interrupt.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:19: /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.h:20:13: note: previous declaration of 'jz4740_irq_suspend' was here /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:68:6: error: conflicting types for 'jz4740_irq_resume' In file included from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/irq.h:18:0, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/irq.h:27, from /home/thierry.reding/src/kernel/linux-pwm.git/include/asm-generic/hardirq.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/include/asm/hardirq.h:16, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/hardirq.h:7, from /home/thierry.reding/src/kernel/linux-pwm.git/include/linux/interrupt.h:12, from /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:19: /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.h:21:13: note: previous declaration of 'jz4740_irq_resume' was here /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c: In function 'arch_init_irq': /home/thierry.reding/src/kernel/linux-pwm.git/arch/mips/jz4740/irq.c:91:41: error: 'JZ4740_IRQ_BASE' undeclared (first use in this function) cc1: all warnings being treated as errors make[3]: *** [arch/mips/jz4740/irq.o] Error 1 make[2]: *** [arch/mips/jz4740] Error 2 make[1]: *** [arch/mips] Error 2 make: *** [sub-make] Error 2
Attachment:
pgpX1tLNvcVoN.pgp
Description: PGP signature