blob: 33ef8f096d953e4a1c8307938cd029e7728458c3 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef _ASM_IA64_HARDIRQ_H
2#define _ASM_IA64_HARDIRQ_H
3
4/*
5 * Modified 1998-2002, 2004 Hewlett-Packard Co
6 * David Mosberger-Tang <davidm@hpl.hp.com>
7 */
8
9#include <linux/config.h>
10
11#include <linux/threads.h>
12#include <linux/irq.h>
13
14#include <asm/processor.h>
15
16/*
17 * No irq_cpustat_t for IA-64. The data is held in the per-CPU data structure.
18 */
19
20#define __ARCH_IRQ_STAT 1
21
22#define local_softirq_pending() (local_cpu_data->softirq_pending)
23
24#define HARDIRQ_BITS 14
25
26/*
27 * The hardirq mask has to be large enough to have space for potentially all IRQ sources
28 * in the system nesting on a single CPU:
29 */
30#if (1 << HARDIRQ_BITS) < NR_IRQS
31# error HARDIRQ_BITS is too low!
32#endif
33
34extern void __iomem *ipi_base_addr;
35
36void ack_bad_irq(unsigned int irq);
37
38#endif /* _ASM_IA64_HARDIRQ_H */