Lines Matching refs:irqd

44 	struct aplic_irq *irqd;
48 irqd = &aplic->irqs[irq];
50 raw_spin_lock_irqsave(&irqd->lock, flags);
51 ret = irqd->sourcecfg;
52 raw_spin_unlock_irqrestore(&irqd->lock, flags);
60 struct aplic_irq *irqd;
64 irqd = &aplic->irqs[irq];
71 raw_spin_lock_irqsave(&irqd->lock, flags);
72 irqd->sourcecfg = val;
73 raw_spin_unlock_irqrestore(&irqd->lock, flags);
80 struct aplic_irq *irqd;
84 irqd = &aplic->irqs[irq];
86 raw_spin_lock_irqsave(&irqd->lock, flags);
87 ret = irqd->target;
88 raw_spin_unlock_irqrestore(&irqd->lock, flags);
96 struct aplic_irq *irqd;
100 irqd = &aplic->irqs[irq];
106 raw_spin_lock_irqsave(&irqd->lock, flags);
107 irqd->target = val;
108 raw_spin_unlock_irqrestore(&irqd->lock, flags);
115 struct aplic_irq *irqd;
119 irqd = &aplic->irqs[irq];
121 raw_spin_lock_irqsave(&irqd->lock, flags);
122 ret = (irqd->state & APLIC_IRQ_STATE_PENDING) ? true : false;
123 raw_spin_unlock_irqrestore(&irqd->lock, flags);
131 struct aplic_irq *irqd;
135 irqd = &aplic->irqs[irq];
137 raw_spin_lock_irqsave(&irqd->lock, flags);
139 sm = irqd->sourcecfg & APLIC_SOURCECFG_SM_MASK;
146 irqd->state |= APLIC_IRQ_STATE_PENDING;
148 irqd->state &= ~APLIC_IRQ_STATE_PENDING;
151 raw_spin_unlock_irqrestore(&irqd->lock, flags);
158 struct aplic_irq *irqd;
162 irqd = &aplic->irqs[irq];
164 raw_spin_lock_irqsave(&irqd->lock, flags);
165 ret = (irqd->state & APLIC_IRQ_STATE_ENABLED) ? true : false;
166 raw_spin_unlock_irqrestore(&irqd->lock, flags);
174 struct aplic_irq *irqd;
178 irqd = &aplic->irqs[irq];
180 raw_spin_lock_irqsave(&irqd->lock, flags);
182 irqd->state |= APLIC_IRQ_STATE_ENABLED;
184 irqd->state &= ~APLIC_IRQ_STATE_ENABLED;
185 raw_spin_unlock_irqrestore(&irqd->lock, flags);
192 struct aplic_irq *irqd;
196 irqd = &aplic->irqs[irq];
198 raw_spin_lock_irqsave(&irqd->lock, flags);
199 ret = (irqd->state & APLIC_IRQ_STATE_INPUT) ? true : false;
200 raw_spin_unlock_irqrestore(&irqd->lock, flags);
222 struct aplic_irq *irqd;
231 irqd = &aplic->irqs[irq];
233 raw_spin_lock_irqsave(&irqd->lock, flags);
236 target = irqd->target;
237 if ((irqd->state & APLIC_IRQ_STATE_ENPEND) ==
239 irqd->state &= ~APLIC_IRQ_STATE_PENDING;
243 raw_spin_unlock_irqrestore(&irqd->lock, flags);
255 struct aplic_irq *irqd;
260 irqd = &aplic->irqs[source];
263 raw_spin_lock_irqsave(&irqd->lock, flags);
265 if (irqd->sourcecfg & APLIC_SOURCECFG_D)
268 switch (irqd->sourcecfg & APLIC_SOURCECFG_SM_MASK) {
270 if (level && !(irqd->state & APLIC_IRQ_STATE_INPUT) &&
271 !(irqd->state & APLIC_IRQ_STATE_PENDING))
272 irqd->state |= APLIC_IRQ_STATE_PENDING;
275 if (!level && (irqd->state & APLIC_IRQ_STATE_INPUT) &&
276 !(irqd->state & APLIC_IRQ_STATE_PENDING))
277 irqd->state |= APLIC_IRQ_STATE_PENDING;
280 if (level && !(irqd->state & APLIC_IRQ_STATE_PENDING))
281 irqd->state |= APLIC_IRQ_STATE_PENDING;
284 if (!level && !(irqd->state & APLIC_IRQ_STATE_PENDING))
285 irqd->state |= APLIC_IRQ_STATE_PENDING;
290 irqd->state |= APLIC_IRQ_STATE_INPUT;
292 irqd->state &= ~APLIC_IRQ_STATE_INPUT;
294 target = irqd->target;
295 if (ie && ((irqd->state & APLIC_IRQ_STATE_ENPEND) ==
297 irqd->state &= ~APLIC_IRQ_STATE_PENDING;
302 raw_spin_unlock_irqrestore(&irqd->lock, flags);