Home
last modified time | relevance | path

Searched refs:irq_data (Results 1 – 20 of 20) sorted by relevance

/kernel/irq/
Dchip.c53 desc->irq_data.chip = chip; in irq_set_chip()
153 desc->irq_data.chip_data = data; in irq_set_chip_data()
159 struct irq_data *irq_get_irq_data(unsigned int irq) in irq_get_irq_data()
163 return desc ? &desc->irq_data : NULL; in irq_get_irq_data()
169 irqd_clear(&desc->irq_data, IRQD_IRQ_DISABLED); in irq_state_clr_disabled()
174 irqd_clear(&desc->irq_data, IRQD_IRQ_MASKED); in irq_state_clr_masked()
179 irqd_clear(&desc->irq_data, IRQD_IRQ_STARTED); in irq_state_clr_started()
184 irqd_set(&desc->irq_data, IRQD_IRQ_STARTED); in irq_state_set_started()
197 struct irq_data *d = irq_desc_get_irq_data(desc); in __irq_startup_managed()
239 struct irq_data *d = irq_desc_get_irq_data(desc); in __irq_startup()
[all …]
Dirqdomain.c542 struct irq_data *irq_data) in irq_domain_set_mapping() argument
549 rcu_assign_pointer(domain->revmap[hwirq], irq_data); in irq_domain_set_mapping()
551 radix_tree_insert(&domain->revmap_tree, hwirq, irq_data); in irq_domain_set_mapping()
557 struct irq_data *irq_data = irq_get_irq_data(irq); in irq_domain_disassociate() local
560 if (WARN(!irq_data || irq_data->domain != domain, in irq_domain_disassociate()
564 hwirq = irq_data->hwirq; in irq_domain_disassociate()
581 irq_data->domain = NULL; in irq_domain_disassociate()
582 irq_data->hwirq = 0; in irq_domain_disassociate()
594 struct irq_data *irq_data = irq_get_irq_data(virq); in irq_domain_associate_locked() local
600 if (WARN(!irq_data, "error: virq%i is not allocated", virq)) in irq_domain_associate_locked()
[all …]
Dinternals.h104 extern int __irq_get_irqchip_state(struct irq_data *data,
137 extern int irq_do_set_affinity(struct irq_data *data,
149 if (unlikely(desc->irq_data.chip->irq_bus_lock)) in chip_bus_lock()
150 desc->irq_data.chip->irq_bus_lock(&desc->irq_data); in chip_bus_lock()
155 if (unlikely(desc->irq_data.chip->irq_bus_sync_unlock)) in chip_bus_sync_unlock()
156 desc->irq_data.chip->irq_bus_sync_unlock(&desc->irq_data); in chip_bus_sync_unlock()
199 static inline unsigned int irqd_get(struct irq_data *d) in irqd_get()
207 static inline void irqd_set_move_pending(struct irq_data *d) in irqd_set_move_pending()
212 static inline void irqd_clr_move_pending(struct irq_data *d) in irqd_clr_move_pending()
217 static inline void irqd_set_managed_shutdown(struct irq_data *d) in irqd_set_managed_shutdown()
[all …]
Dmanage.c40 struct irq_data *irqd = irq_desc_get_irq_data(desc); in __synchronize_hardirq()
50 while (irqd_irq_inprogress(&desc->irq_data)) in __synchronize_hardirq()
55 inprogress = irqd_irq_inprogress(&desc->irq_data); in __synchronize_hardirq()
148 if (!desc || !irqd_can_balance(&desc->irq_data) || in __irq_can_set_affinity()
149 !desc->irq_data.chip || !desc->irq_data.chip->irq_set_affinity) in __irq_can_set_affinity()
176 !irqd_affinity_is_managed(&desc->irq_data); in irq_can_set_affinity_usr()
198 static void irq_validate_effective_affinity(struct irq_data *data) in irq_validate_effective_affinity()
209 static inline void irq_init_effective_affinity(struct irq_data *data, in irq_init_effective_affinity()
215 static inline void irq_validate_effective_affinity(struct irq_data *data) { } in irq_validate_effective_affinity()
216 static inline void irq_init_effective_affinity(struct irq_data *data, in irq_init_effective_affinity()
[all …]
Dmsi.c209 static inline void irq_chip_write_msi_msg(struct irq_data *data, in irq_chip_write_msi_msg()
239 int msi_domain_set_affinity(struct irq_data *irq_data, in msi_domain_set_affinity() argument
242 struct irq_data *parent = irq_data->parent_data; in msi_domain_set_affinity()
248 BUG_ON(irq_chip_compose_msi_msg(irq_data, msg)); in msi_domain_set_affinity()
249 msi_check_level(irq_data->domain, msg); in msi_domain_set_affinity()
250 irq_chip_write_msi_msg(irq_data, msg); in msi_domain_set_affinity()
257 struct irq_data *irq_data, bool early) in msi_domain_activate() argument
261 BUG_ON(irq_chip_compose_msi_msg(irq_data, msg)); in msi_domain_activate()
262 msi_check_level(irq_data->domain, msg); in msi_domain_activate()
263 irq_chip_write_msi_msg(irq_data, msg); in msi_domain_activate()
[all …]
Dgeneric-chip.c25 void irq_gc_noop(struct irq_data *d) in irq_gc_noop()
36 void irq_gc_mask_disable_reg(struct irq_data *d) in irq_gc_mask_disable_reg()
55 void irq_gc_mask_set_bit(struct irq_data *d) in irq_gc_mask_set_bit()
75 void irq_gc_mask_clr_bit(struct irq_data *d) in irq_gc_mask_clr_bit()
95 void irq_gc_unmask_enable_reg(struct irq_data *d) in irq_gc_unmask_enable_reg()
111 void irq_gc_ack_set_bit(struct irq_data *d) in irq_gc_ack_set_bit()
127 void irq_gc_ack_clr_bit(struct irq_data *d) in irq_gc_ack_clr_bit()
150 void irq_gc_mask_disable_and_ack_set(struct irq_data *d) in irq_gc_mask_disable_and_ack_set()
167 void irq_gc_eoi(struct irq_data *d) in irq_gc_eoi()
187 int irq_gc_set_wake(struct irq_data *d, unsigned int on) in irq_gc_set_wake()
[all …]
Dpm.c18 if (irqd_is_wakeup_armed(&desc->irq_data)) { in irq_pm_check_wakeup()
19 irqd_clear(&desc->irq_data, IRQD_WAKEUP_ARMED); in irq_pm_check_wakeup()
73 struct irq_data *irqd = &desc->irq_data; in suspend_device_irq()
154 struct irq_data *irqd = &desc->irq_data; in resume_irq()
218 !irqd_is_wakeup_set(&desc->irq_data)) in rearm_wake_irq()
222 irqd_set(&desc->irq_data, IRQD_WAKEUP_ARMED); in rearm_wake_irq()
Dresend.c58 if (handle_enforce_irqctx(&desc->irq_data)) in irq_sw_resend()
91 if (desc->irq_data.chip->irq_retrigger) in try_retrigger()
92 return desc->irq_data.chip->irq_retrigger(&desc->irq_data); in try_retrigger()
95 return irq_chip_retrigger_hierarchy(&desc->irq_data); in try_retrigger()
175 if ((desc->istate & IRQS_NMI) || !irqd_is_activated(&desc->irq_data)) in irq_inject_interrupt()
Dmigration.c20 struct irq_data *data = irq_desc_get_irq_data(desc); in irq_fixup_move_pending()
38 void irq_move_masked_irq(struct irq_data *idata) in irq_move_masked_irq()
41 struct irq_data *data = &desc->irq_data; in irq_move_masked_irq()
94 void __irq_move_irq(struct irq_data *idata) in __irq_move_irq()
Dproc.c56 if (irqd_is_setaffinity_pending(&desc->irq_data)) in show_irq_affinity()
63 mask = irq_data_get_effective_affinity_mask(&desc->irq_data); in show_irq_affinity()
344 if (!root_irq_dir || (desc->irq_data.chip == &no_irq_chip)) in register_irq_proc()
505 if (desc->irq_data.chip) { in show_interrupts()
506 if (desc->irq_data.chip->irq_print_chip) in show_interrupts()
507 desc->irq_data.chip->irq_print_chip(&desc->irq_data, p); in show_interrupts()
508 else if (desc->irq_data.chip->name) in show_interrupts()
509 seq_printf(p, " %8s", desc->irq_data.chip->name); in show_interrupts()
515 if (desc->irq_data.domain) in show_interrupts()
516 seq_printf(p, " %*lu", prec, desc->irq_data.hwirq); in show_interrupts()
[all …]
Dipi.c27 struct irq_data *data; in irq_reserve_ipi()
117 struct irq_data *data = irq_get_irq_data(irq); in irq_destroy_ipi()
164 struct irq_data *data = irq_get_irq_data(irq); in ipi_get_hwirq()
186 static int ipi_send_verify(struct irq_chip *chip, struct irq_data *data, in ipi_send_verify()
223 struct irq_data *data = irq_desc_get_irq_data(desc); in __ipi_send_single()
265 struct irq_data *data = irq_desc_get_irq_data(desc); in __ipi_send_mask()
310 struct irq_data *data = desc ? irq_desc_get_irq_data(desc) : NULL; in ipi_send_single()
331 struct irq_data *data = desc ? irq_desc_get_irq_data(desc) : NULL; in ipi_send_mask()
Dirq_sim.c27 static void irq_sim_irqmask(struct irq_data *data) in irq_sim_irqmask()
34 static void irq_sim_irqunmask(struct irq_data *data) in irq_sim_irqunmask()
41 static int irq_sim_set_type(struct irq_data *data, unsigned int type) in irq_sim_set_type()
52 static int irq_sim_get_irqchip_state(struct irq_data *data, in irq_sim_get_irqchip_state()
70 static int irq_sim_set_irqchip_state(struct irq_data *data, in irq_sim_set_irqchip_state()
139 struct irq_data *irqd; in irq_sim_domain_unmap()
Dirqdesc.c111 desc->irq_data.common = &desc->irq_common_data; in desc_set_defaults()
112 desc->irq_data.irq = irq; in desc_set_defaults()
113 desc->irq_data.chip = &no_irq_chip; in desc_set_defaults()
114 desc->irq_data.chip_data = NULL; in desc_set_defaults()
116 irqd_set(&desc->irq_data, IRQD_IRQ_DISABLED); in desc_set_defaults()
117 irqd_set(&desc->irq_data, IRQD_IRQ_MASKED); in desc_set_defaults()
173 if (desc->irq_data.chip && desc->irq_data.chip->name) { in chip_name_show()
175 desc->irq_data.chip->name); in chip_name_show()
190 if (desc->irq_data.domain) in hwirq_show()
191 ret = sprintf(buf, "%lu\n", desc->irq_data.hwirq); in hwirq_show()
[all …]
Dspurious.c41 smp_processor_id(), desc->irq_data.irq)) in irq_wait_for_poll()
47 while (irqd_irq_inprogress(&desc->irq_data)) in irq_wait_for_poll()
50 } while (irqd_irq_inprogress(&desc->irq_data)); in irq_wait_for_poll()
52 return !irqd_irq_disabled(&desc->irq_data) && desc->action; in irq_wait_for_poll()
82 if (irqd_irq_disabled(&desc->irq_data) && !force) in try_one_irq()
95 if (irqd_irq_inprogress(&desc->irq_data)) { in try_one_irq()
Dhandle.c140 unsigned int irq = desc->irq_data.irq; in __handle_irq_event_percpu()
198 add_interrupt_randomness(desc->irq_data.irq); in handle_irq_event_percpu()
210 irqd_set(&desc->irq_data, IRQD_IRQ_INPROGRESS); in handle_irq_event()
216 irqd_clear(&desc->irq_data, IRQD_IRQ_INPROGRESS); in handle_irq_event()
Ddummychip.c18 static void ack_bad(struct irq_data *data) in ack_bad()
29 static void noop(struct irq_data *data) { } in noop()
31 static unsigned int noop_ret(struct irq_data *data) in noop_ret()
Dcpuhotplug.c20 static inline bool irq_needs_fixup(struct irq_data *d) in irq_needs_fixup()
55 struct irq_data *d = irq_desc_get_irq_data(desc); in migrate_one_irq()
175 static bool hk_should_isolate(struct irq_data *data, unsigned int cpu) in hk_should_isolate()
191 struct irq_data *data = irq_desc_get_irq_data(desc); in irq_restore_affinity_of_irq()
Dautoprobe.c52 if (desc->irq_data.chip->irq_set_type) in probe_irq_on()
53 desc->irq_data.chip->irq_set_type(&desc->irq_data, in probe_irq_on()
Ddebugfs.c32 struct irq_data *data = irq_desc_get_irq_data(desc); in irq_debug_show_masks()
64 irq_debug_show_chip(struct seq_file *m, struct irq_data *data, int ind) in irq_debug_show_chip()
79 irq_debug_show_data(struct seq_file *m, struct irq_data *data, int ind) in irq_debug_show_data()
162 struct irq_data *data; in irq_debug_show()
Ddebug.h23 desc->irq_data.chip, desc->irq_data.chip); in print_irq_desc()