diff options
Diffstat (limited to 'include/linux/irq.h')
| -rw-r--r-- | include/linux/irq.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/linux/irq.h b/include/linux/irq.h index b48eae32dc61..fbf6d901e9c2 100644 --- a/include/linux/irq.h +++ b/include/linux/irq.h | |||
| @@ -47,8 +47,8 @@ | |||
| 47 | #define IRQ_WAITING 0x00200000 /* IRQ not yet seen - for autodetection */ | 47 | #define IRQ_WAITING 0x00200000 /* IRQ not yet seen - for autodetection */ |
| 48 | #define IRQ_LEVEL 0x00400000 /* IRQ level triggered */ | 48 | #define IRQ_LEVEL 0x00400000 /* IRQ level triggered */ |
| 49 | #define IRQ_MASKED 0x00800000 /* IRQ masked - shouldn't be seen again */ | 49 | #define IRQ_MASKED 0x00800000 /* IRQ masked - shouldn't be seen again */ |
| 50 | #define IRQ_PER_CPU 0x01000000 /* IRQ is per CPU */ | ||
| 50 | #ifdef CONFIG_IRQ_PER_CPU | 51 | #ifdef CONFIG_IRQ_PER_CPU |
| 51 | # define IRQ_PER_CPU 0x01000000 /* IRQ is per CPU */ | ||
| 52 | # define CHECK_IRQ_PER_CPU(var) ((var) & IRQ_PER_CPU) | 52 | # define CHECK_IRQ_PER_CPU(var) ((var) & IRQ_PER_CPU) |
| 53 | #else | 53 | #else |
| 54 | # define CHECK_IRQ_PER_CPU(var) 0 | 54 | # define CHECK_IRQ_PER_CPU(var) 0 |
| @@ -58,6 +58,7 @@ | |||
| 58 | #define IRQ_NOREQUEST 0x04000000 /* IRQ cannot be requested */ | 58 | #define IRQ_NOREQUEST 0x04000000 /* IRQ cannot be requested */ |
| 59 | #define IRQ_NOAUTOEN 0x08000000 /* IRQ will not be enabled on request irq */ | 59 | #define IRQ_NOAUTOEN 0x08000000 /* IRQ will not be enabled on request irq */ |
| 60 | #define IRQ_DELAYED_DISABLE 0x10000000 /* IRQ disable (masking) happens delayed. */ | 60 | #define IRQ_DELAYED_DISABLE 0x10000000 /* IRQ disable (masking) happens delayed. */ |
| 61 | #define IRQ_WAKEUP 0x20000000 /* IRQ triggers system wakeup */ | ||
| 61 | 62 | ||
| 62 | struct proc_dir_entry; | 63 | struct proc_dir_entry; |
| 63 | 64 | ||
| @@ -124,6 +125,7 @@ struct irq_chip { | |||
| 124 | * @action: the irq action chain | 125 | * @action: the irq action chain |
| 125 | * @status: status information | 126 | * @status: status information |
| 126 | * @depth: disable-depth, for nested irq_disable() calls | 127 | * @depth: disable-depth, for nested irq_disable() calls |
| 128 | * @wake_depth: enable depth, for multiple set_irq_wake() callers | ||
| 127 | * @irq_count: stats field to detect stalled irqs | 129 | * @irq_count: stats field to detect stalled irqs |
| 128 | * @irqs_unhandled: stats field for spurious unhandled interrupts | 130 | * @irqs_unhandled: stats field for spurious unhandled interrupts |
| 129 | * @lock: locking for SMP | 131 | * @lock: locking for SMP |
| @@ -147,6 +149,7 @@ struct irq_desc { | |||
| 147 | unsigned int status; /* IRQ status */ | 149 | unsigned int status; /* IRQ status */ |
| 148 | 150 | ||
| 149 | unsigned int depth; /* nested irq disables */ | 151 | unsigned int depth; /* nested irq disables */ |
| 152 | unsigned int wake_depth; /* nested wake enables */ | ||
| 150 | unsigned int irq_count; /* For detecting broken IRQs */ | 153 | unsigned int irq_count; /* For detecting broken IRQs */ |
| 151 | unsigned int irqs_unhandled; | 154 | unsigned int irqs_unhandled; |
| 152 | spinlock_t lock; | 155 | spinlock_t lock; |
