[PATCH v3 5/5] tty/serial: Add Spreadtrum sc9836-uart driver support
From: Russell King - ARM Linux <hidden>
Date: 2014-12-03 10:11:57
Also in:
linux-api, linux-devicetree, linux-serial, lkml
On Wed, Dec 03, 2014 at 10:50:17AM +0100, Arnd Bergmann wrote:
On Wednesday 03 December 2014 17:17:13 Lyra Zhang wrote:quoted
2014-11-27 2:29 GMT+08:00 Murali Karicheri [off-list ref]:quoted
How about sorting this includes? asm/irq.h go first followed linux/ in alphabatical order?There are a few compile warnings if I moved asm/irq.h to the top of all included files.The order that Murali meant is - first all linux/*.h headers, sorted alphabetically - then all asm/*.h headers, again sorted alphabetically This is the recommended style in general.quoted
Warning details are below: In file included from drivers/tty/serial/sprd_serial.c:14:0: ./arch/arm64/include/asm/irq.h:6:39: warning: ?struct pt_regs? declared inside parameter list [enabled by default] extern void (*handle_arch_irq)(struct pt_regs *); ^ ./arch/arm64/include/asm/irq.h:6:39: warning: its scope is only this definition or declaration, which is probably not what you want [enabled by default] ./arch/arm64/include/asm/irq.h:8:54: warning: ?struct pt_regs? declared inside parameter list [enabled by default] extern void set_handle_irq(void (*handle_irq)(struct pt_regs *));I would consider this a (minor) bug in asm/irq.h. If you don't mind, please submit a patch to add a line with 'struct pt_regs;' to asm/irq.h.
A better question is: why is a modern driver using asm/irq.h in the first place. We used to include that file when platforms defined IRQ numbers statically, but modern platforms don't do that, so it shouldn't be required anymore. -- FTTC broadband for 0.8mile line: currently at 9.5Mbps down 400kbps up according to speedtest.net.