| .. | .. |
|---|
| 22 | 22 | * @irq_common_data: per irq and chip data passed down to chip functions |
|---|
| 23 | 23 | * @kstat_irqs: irq stats per cpu |
|---|
| 24 | 24 | * @handle_irq: highlevel irq-events handler |
|---|
| 25 | | - * @preflow_handler: handler called before the flow handler (currently used by sparc) |
|---|
| 26 | 25 | * @action: the irq action chain |
|---|
| 27 | | - * @status: status information |
|---|
| 26 | + * @status_use_accessors: status information |
|---|
| 28 | 27 | * @core_internal_state__do_not_mess_with_it: core internal status information |
|---|
| 29 | 28 | * @depth: disable-depth, for nested irq_disable() calls |
|---|
| 30 | 29 | * @wake_depth: enable depth, for multiple irq_set_irq_wake() callers |
|---|
| 30 | + * @tot_count: stats field for non-percpu irqs |
|---|
| 31 | 31 | * @irq_count: stats field to detect stalled irqs |
|---|
| 32 | 32 | * @last_unhandled: aging timer for unhandled count |
|---|
| 33 | 33 | * @irqs_unhandled: stats field for spurious unhandled interrupts |
|---|
| .. | .. |
|---|
| 57 | 57 | struct irq_data irq_data; |
|---|
| 58 | 58 | unsigned int __percpu *kstat_irqs; |
|---|
| 59 | 59 | irq_flow_handler_t handle_irq; |
|---|
| 60 | | -#ifdef CONFIG_IRQ_PREFLOW_FASTEOI |
|---|
| 61 | | - irq_preflow_handler_t preflow_handler; |
|---|
| 62 | | -#endif |
|---|
| 63 | 60 | struct irqaction *action; /* IRQ action list */ |
|---|
| 64 | 61 | unsigned int status_use_accessors; |
|---|
| 65 | 62 | unsigned int core_internal_state__do_not_mess_with_it; |
|---|
| .. | .. |
|---|
| 172 | 169 | { |
|---|
| 173 | 170 | return __handle_domain_irq(domain, hwirq, true, regs); |
|---|
| 174 | 171 | } |
|---|
| 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 |
|---|
| 175 | 177 | #endif |
|---|
| 176 | 178 | |
|---|
| 177 | 179 | /* Test to see if a driver has successfully requested an irq */ |
|---|
| .. | .. |
|---|
| 261 | 263 | lockdep_set_class(&desc->request_mutex, request_class); |
|---|
| 262 | 264 | } |
|---|
| 263 | 265 | } |
|---|
| 264 | | - |
|---|
| 265 | | -#ifdef CONFIG_IRQ_PREFLOW_FASTEOI |
|---|
| 266 | | -static inline void |
|---|
| 267 | | -__irq_set_preflow_handler(unsigned int irq, irq_preflow_handler_t handler) |
|---|
| 268 | | -{ |
|---|
| 269 | | - struct irq_desc *desc; |
|---|
| 270 | | - |
|---|
| 271 | | - desc = irq_to_desc(irq); |
|---|
| 272 | | - desc->preflow_handler = handler; |
|---|
| 273 | | -} |
|---|
| 274 | | -#endif |
|---|
| 275 | 266 | |
|---|
| 276 | 267 | #endif |
|---|