blob: 870e5347155b373a386fd1a8a13c47c43395cd51 [file] [log] [blame]
Greg Ungerer10f939f2011-05-04 13:55:56 +10001#ifndef __M68K_HARDIRQ_H
2#define __M68K_HARDIRQ_H
3
4#include <linux/threads.h>
5#include <linux/cache.h>
6#include <asm/irq.h>
7
8#define HARDIRQ_BITS 8
9
10/*
11 * The hardirq mask has to be large enough to have
12 * space for potentially all IRQ sources in the system
13 * nesting on a single CPU:
14 */
15#if (1 << HARDIRQ_BITS) < NR_IRQS
16# error HARDIRQ_BITS is too low!
17#endif
18
19#ifdef CONFIG_MMU
20
21/* entry.S is sensitive to the offsets of these fields */
22typedef struct {
23 unsigned int __softirq_pending;
24} ____cacheline_aligned irq_cpustat_t;
25
26#include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */
27
Sam Ravnborg49148022009-01-16 21:58:10 +100028#else
Greg Ungerer10f939f2011-05-04 13:55:56 +100029
30#include <asm-generic/hardirq.h>
31
32#endif /* !CONFIG_MMU */
33
Sam Ravnborg49148022009-01-16 21:58:10 +100034#endif