blob: 04d0a977cd431fc5eb2c2f34cbd5390bfeb0db05 [file] [log] [blame]
Arnd Bergmannaafe4db2009-05-13 22:56:33 +00001#ifndef __ASM_GENERIC_HARDIRQ_H
2#define __ASM_GENERIC_HARDIRQ_H
3
4#include <linux/cache.h>
5#include <linux/threads.h>
Arnd Bergmannaafe4db2009-05-13 22:56:33 +00006
7typedef struct {
Ralf Baechlecc9b0b92009-10-09 12:41:30 +02008 unsigned int __softirq_pending;
Arnd Bergmannaafe4db2009-05-13 22:56:33 +00009} ____cacheline_aligned irq_cpustat_t;
10
11#include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */
Frederic Weisbecker3b8fad32010-09-08 14:26:00 +020012#include <linux/irq.h>
Arnd Bergmannaafe4db2009-05-13 22:56:33 +000013
Arnd Bergmannaafe4db2009-05-13 22:56:33 +000014#ifndef ack_bad_irq
15static inline void ack_bad_irq(unsigned int irq)
16{
17 printk(KERN_CRIT "unexpected IRQ trap at vector %02x\n", irq);
18}
19#endif
20
21#endif /* __ASM_GENERIC_HARDIRQ_H */