Annoying warning message caused by double modifiers

Cheng-Han Tsai <[email protected]>
Newsgroups gmane.linux.ports.arm.general
Message-ID <[email protected]>
Dear all,

Please help me solve this annoying warning messages.
This warning message happens when I enable the TCM support in my arm
platform

drivers/input/keyboard/kpd.c:560: warning: passing argument 2 of
'request_irq' from incompatible pointer type
include/linux/interrupt.h:78: note: expected 'irq_handler_t' but argument is
of type 'irqreturn_t (*)(int,  void *)'

kpd.c
static irqreturn_t __tcmfunc kpd_irq_handler(int irq, void *dev_id) {
       disable_irq(KP_IRQ_LINE);
       ...
       return IRQ_HANDLED;
}

Other definitions:
typedef int irqreturn_t;
#define __tcmfunc __attribute__((long_call)) __section(.tcm.text) noinline

Compiler seems to think “irqreturn_t” and “irqreturn_t __tcmfunc” are
different types.
I try all different ways to add the __tcmfunc modifier, but the warning
still shows up.
Could you give some hint?
Thank.

Best Regards,
Keene Tsai 蔡承翰

_______________________________________________
linux-arm mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.