diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-09-24 09:56:20 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-09-24 09:56:20 +0200 |
commit | ebdd90a8cb2e3963f55499850f02ce6003558b55 (patch) | |
tree | d153f917ed41d257ddafa22f9cc2201bfddf8f9c /arch/alpha/include/asm/hardirq.h | |
parent | 3c9339049df5cc3a468c11de6c4101a1ea8c3d83 (diff) | |
parent | 72d31053f62c4bc464c2783974926969614a8649 (diff) |
Merge commit 'v2.6.27-rc7' into x86/pebs
Diffstat (limited to 'arch/alpha/include/asm/hardirq.h')
-rw-r--r-- | arch/alpha/include/asm/hardirq.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/arch/alpha/include/asm/hardirq.h b/arch/alpha/include/asm/hardirq.h new file mode 100644 index 00000000000..d953e234daa --- /dev/null +++ b/arch/alpha/include/asm/hardirq.h @@ -0,0 +1,30 @@ +#ifndef _ALPHA_HARDIRQ_H +#define _ALPHA_HARDIRQ_H + +#include <linux/threads.h> +#include <linux/cache.h> + + +/* entry.S is sensitive to the offsets of these fields */ +typedef struct { + unsigned long __softirq_pending; +} ____cacheline_aligned irq_cpustat_t; + +#include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */ + +void ack_bad_irq(unsigned int irq); + +#define HARDIRQ_BITS 12 + +/* + * The hardirq mask has to be large enough to have + * space for potentially nestable IRQ sources in the system + * to nest on a single CPU. On Alpha, interrupts are masked at the CPU + * by IPL as well as at the system level. We only have 8 IPLs (UNIX PALcode) + * so we really only have 8 nestable IRQs, but allow some overhead + */ +#if (1 << HARDIRQ_BITS) < 16 +#error HARDIRQ_BITS is too low! +#endif + +#endif /* _ALPHA_HARDIRQ_H */ |