If somebody causes an unexpected bad IRQ, this even will be unnoticed in both dmesg and system logs. If the "bad" IRQ is stuck, the device will just hang silently w/o reporting anything. Compare this to the generic behaviour (from include/asm-generic/hardirq.h) which prints a message with critical level. So to help everybody, include the same message into ARM-specific ack_bad_irq(). Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
23 lines
457 B
C
23 lines
457 B
C
/*
|
|
* Nothing to see here yet
|
|
*/
|
|
#ifndef _ARCH_ARM_HW_IRQ_H
|
|
#define _ARCH_ARM_HW_IRQ_H
|
|
|
|
static inline void ack_bad_irq(int irq)
|
|
{
|
|
extern unsigned long irq_err_count;
|
|
irq_err_count++;
|
|
pr_crit("unexpected IRQ trap at vector %02x\n", irq);
|
|
}
|
|
|
|
void set_irq_flags(unsigned int irq, unsigned int flags);
|
|
|
|
#define IRQF_VALID (1 << 0)
|
|
#define IRQF_PROBE (1 << 1)
|
|
#define IRQF_NOAUTOEN (1 << 2)
|
|
|
|
#define ARCH_IRQ_INIT_FLAGS (IRQ_NOREQUEST | IRQ_NOPROBE)
|
|
|
|
#endif
|