Lines Matching refs:desc
32 struct irq_desc *desc; in probe_irq_on() local
45 for_each_irq_desc_reverse(i, desc) { in probe_irq_on()
46 raw_spin_lock_irq(&desc->lock); in probe_irq_on()
47 if (!desc->action && irq_settings_can_probe(desc)) { in probe_irq_on()
52 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()
55 irq_activate_and_startup(desc, IRQ_NORESEND); in probe_irq_on()
57 raw_spin_unlock_irq(&desc->lock); in probe_irq_on()
68 for_each_irq_desc_reverse(i, desc) { in probe_irq_on()
69 raw_spin_lock_irq(&desc->lock); in probe_irq_on()
70 if (!desc->action && irq_settings_can_probe(desc)) { in probe_irq_on()
71 desc->istate |= IRQS_AUTODETECT | IRQS_WAITING; in probe_irq_on()
72 if (irq_activate_and_startup(desc, IRQ_NORESEND)) in probe_irq_on()
73 desc->istate |= IRQS_PENDING; in probe_irq_on()
75 raw_spin_unlock_irq(&desc->lock); in probe_irq_on()
86 for_each_irq_desc(i, desc) { in probe_irq_on()
87 raw_spin_lock_irq(&desc->lock); in probe_irq_on()
89 if (desc->istate & IRQS_AUTODETECT) { in probe_irq_on()
91 if (!(desc->istate & IRQS_WAITING)) { in probe_irq_on()
92 desc->istate &= ~IRQS_AUTODETECT; in probe_irq_on()
93 irq_shutdown_and_deactivate(desc); in probe_irq_on()
98 raw_spin_unlock_irq(&desc->lock); in probe_irq_on()
120 struct irq_desc *desc; in probe_irq_mask() local
123 for_each_irq_desc(i, desc) { in probe_irq_mask()
124 raw_spin_lock_irq(&desc->lock); in probe_irq_mask()
125 if (desc->istate & IRQS_AUTODETECT) { in probe_irq_mask()
126 if (i < 16 && !(desc->istate & IRQS_WAITING)) in probe_irq_mask()
129 desc->istate &= ~IRQS_AUTODETECT; in probe_irq_mask()
130 irq_shutdown_and_deactivate(desc); in probe_irq_mask()
132 raw_spin_unlock_irq(&desc->lock); in probe_irq_mask()
160 struct irq_desc *desc; in probe_irq_off() local
162 for_each_irq_desc(i, desc) { in probe_irq_off()
163 raw_spin_lock_irq(&desc->lock); in probe_irq_off()
165 if (desc->istate & IRQS_AUTODETECT) { in probe_irq_off()
166 if (!(desc->istate & IRQS_WAITING)) { in probe_irq_off()
171 desc->istate &= ~IRQS_AUTODETECT; in probe_irq_off()
172 irq_shutdown_and_deactivate(desc); in probe_irq_off()
174 raw_spin_unlock_irq(&desc->lock); in probe_irq_off()