blob: 64a65ce2f41fe690033bff1f8ce0d9314b5a9a82 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef __ASM_HARDIRQ_H
2#define __ASM_HARDIRQ_H
3
Linus Torvalds1da177e2005-04-16 15:20:36 -07004#include <linux/threads.h>
5#include <linux/irq.h>
6#include <asm/pda.h>
7#include <asm/apic.h>
8
9#define __ARCH_IRQ_STAT 1
10
Andi Kleen3f744782005-09-12 18:49:24 +020011#define local_softirq_pending() read_pda(__softirq_pending)
Linus Torvalds1da177e2005-04-16 15:20:36 -070012
Andi Kleen3f744782005-09-12 18:49:24 +020013#define __ARCH_SET_SOFTIRQ_PENDING 1
14
15#define set_softirq_pending(x) write_pda(__softirq_pending, (x))
16#define or_softirq_pending(x) or_pda(__softirq_pending, (x))
Linus Torvalds1da177e2005-04-16 15:20:36 -070017
Andi Kleen3777a952006-02-03 21:51:53 +010018extern void ack_bad_irq(unsigned int irq);
19
Linus Torvalds1da177e2005-04-16 15:20:36 -070020#endif /* __ASM_HARDIRQ_H */