hc
2024-05-10 37f49e37ab4cb5d0bc4c60eb5c6d4dd57db767bb
kernel/include/linux/irqdesc.h
....@@ -22,17 +22,17 @@
2222 * @irq_common_data: per irq and chip data passed down to chip functions
2323 * @kstat_irqs: irq stats per cpu
2424 * @handle_irq: highlevel irq-events handler
25
- * @preflow_handler: handler called before the flow handler (currently used by sparc)
2625 * @action: the irq action chain
27
- * @status: status information
26
+ * @status_use_accessors: status information
2827 * @core_internal_state__do_not_mess_with_it: core internal status information
2928 * @depth: disable-depth, for nested irq_disable() calls
3029 * @wake_depth: enable depth, for multiple irq_set_irq_wake() callers
30
+ * @tot_count: stats field for non-percpu irqs
3131 * @irq_count: stats field to detect stalled irqs
3232 * @last_unhandled: aging timer for unhandled count
3333 * @irqs_unhandled: stats field for spurious unhandled interrupts
3434 * @threads_handled: stats field for deferred spurious detection of threaded handlers
35
- * @threads_handled_last: comparator field for deferred spurious detection of theraded handlers
35
+ * @threads_handled_last: comparator field for deferred spurious detection of threaded handlers
3636 * @lock: locking for SMP
3737 * @affinity_hint: hint to user space for preferred irq affinity
3838 * @affinity_notify: context for notification of affinity changes
....@@ -57,9 +57,6 @@
5757 struct irq_data irq_data;
5858 unsigned int __percpu *kstat_irqs;
5959 irq_flow_handler_t handle_irq;
60
-#ifdef CONFIG_IRQ_PREFLOW_FASTEOI
61
- irq_preflow_handler_t preflow_handler;
62
-#endif
6360 struct irqaction *action; /* IRQ action list */
6461 unsigned int status_use_accessors;
6562 unsigned int core_internal_state__do_not_mess_with_it;
....@@ -71,7 +68,6 @@
7168 unsigned int irqs_unhandled;
7269 atomic_t threads_handled;
7370 int threads_handled_last;
74
- u64 random_ip;
7571 raw_spinlock_t lock;
7672 struct cpumask *percpu_enabled;
7773 const struct cpumask *percpu_affinity;
....@@ -173,6 +169,11 @@
173169 {
174170 return __handle_domain_irq(domain, hwirq, true, regs);
175171 }
172
+
173
+#ifdef CONFIG_IRQ_DOMAIN
174
+int handle_domain_nmi(struct irq_domain *domain, unsigned int hwirq,
175
+ struct pt_regs *regs);
176
+#endif
176177 #endif
177178
178179 /* Test to see if a driver has successfully requested an irq */
....@@ -262,16 +263,5 @@
262263 lockdep_set_class(&desc->request_mutex, request_class);
263264 }
264265 }
265
-
266
-#ifdef CONFIG_IRQ_PREFLOW_FASTEOI
267
-static inline void
268
-__irq_set_preflow_handler(unsigned int irq, irq_preflow_handler_t handler)
269
-{
270
- struct irq_desc *desc;
271
-
272
- desc = irq_to_desc(irq);
273
- desc->preflow_handler = handler;
274
-}
275
-#endif
276266
277267 #endif