diff options
Diffstat (limited to 'include/linux/interrupt.h')
-rw-r--r-- | include/linux/interrupt.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h index dcdddf4fa76b..690b238a44d5 100644 --- a/include/linux/interrupt.h +++ b/include/linux/interrupt.h | |||
@@ -156,6 +156,10 @@ __request_percpu_irq(unsigned int irq, irq_handler_t handler, | |||
156 | unsigned long flags, const char *devname, | 156 | unsigned long flags, const char *devname, |
157 | void __percpu *percpu_dev_id); | 157 | void __percpu *percpu_dev_id); |
158 | 158 | ||
159 | extern int __must_check | ||
160 | request_nmi(unsigned int irq, irq_handler_t handler, unsigned long flags, | ||
161 | const char *name, void *dev); | ||
162 | |||
159 | static inline int __must_check | 163 | static inline int __must_check |
160 | request_percpu_irq(unsigned int irq, irq_handler_t handler, | 164 | request_percpu_irq(unsigned int irq, irq_handler_t handler, |
161 | const char *devname, void __percpu *percpu_dev_id) | 165 | const char *devname, void __percpu *percpu_dev_id) |
@@ -164,9 +168,16 @@ request_percpu_irq(unsigned int irq, irq_handler_t handler, | |||
164 | devname, percpu_dev_id); | 168 | devname, percpu_dev_id); |
165 | } | 169 | } |
166 | 170 | ||
171 | extern int __must_check | ||
172 | request_percpu_nmi(unsigned int irq, irq_handler_t handler, | ||
173 | const char *devname, void __percpu *dev); | ||
174 | |||
167 | extern const void *free_irq(unsigned int, void *); | 175 | extern const void *free_irq(unsigned int, void *); |
168 | extern void free_percpu_irq(unsigned int, void __percpu *); | 176 | extern void free_percpu_irq(unsigned int, void __percpu *); |
169 | 177 | ||
178 | extern const void *free_nmi(unsigned int irq, void *dev_id); | ||
179 | extern void free_percpu_nmi(unsigned int irq, void __percpu *percpu_dev_id); | ||
180 | |||
170 | struct device; | 181 | struct device; |
171 | 182 | ||
172 | extern int __must_check | 183 | extern int __must_check |
@@ -217,6 +228,13 @@ extern void enable_percpu_irq(unsigned int irq, unsigned int type); | |||
217 | extern bool irq_percpu_is_enabled(unsigned int irq); | 228 | extern bool irq_percpu_is_enabled(unsigned int irq); |
218 | extern void irq_wake_thread(unsigned int irq, void *dev_id); | 229 | extern void irq_wake_thread(unsigned int irq, void *dev_id); |
219 | 230 | ||
231 | extern void disable_nmi_nosync(unsigned int irq); | ||
232 | extern void disable_percpu_nmi(unsigned int irq); | ||
233 | extern void enable_nmi(unsigned int irq); | ||
234 | extern void enable_percpu_nmi(unsigned int irq, unsigned int type); | ||
235 | extern int prepare_percpu_nmi(unsigned int irq); | ||
236 | extern void teardown_percpu_nmi(unsigned int irq); | ||
237 | |||
220 | /* The following three functions are for the core kernel use only. */ | 238 | /* The following three functions are for the core kernel use only. */ |
221 | extern void suspend_device_irqs(void); | 239 | extern void suspend_device_irqs(void); |
222 | extern void resume_device_irqs(void); | 240 | extern void resume_device_irqs(void); |