Lines Matching defs:irq
35 irq_t irq;
46 irq = (irq_t) irq_w;
57 if (isIRQActive(irq)) {
59 userError("Rejecting request for IRQ %u. Already active.", (int)irq);
66 getExtraCPtr(buffer, 0), (int)irq);
74 getExtraCPtr(buffer, 0), (int)irq);
79 return invokeIRQControl(irq, destSlot, srcSlot);
86 invokeIRQControl(irq_t irq, cte_t *handlerSlot, cte_t *controlSlot)
88 setIRQState(IRQSignal, irq);
89 cteInsert(cap_irq_handler_cap_new(irq), controlSlot, handlerSlot);
95 decodeIRQHandlerInvocation(word_t invLabel, irq_t irq,
101 invokeIRQHandler_AckIRQ(irq);
128 invokeIRQHandler_SetIRQHandler(irq, ntfnCap, slot);
134 invokeIRQHandler_ClearIRQHandler(irq);
145 invokeIRQHandler_AckIRQ(irq_t irq)
147 maskInterrupt(false, irq);
151 invokeIRQHandler_SetIRQHandler(irq_t irq, cap_t cap, cte_t *slot)
155 irqSlot = intStateIRQNode + irq;
162 invokeIRQHandler_ClearIRQHandler(irq_t irq)
166 irqSlot = intStateIRQNode + irq;
172 deletingIRQHandler(irq_t irq)
176 slot = intStateIRQNode + irq;
182 deletedIRQHandler(irq_t irq)
184 setIRQState(IRQInactive, irq);
188 handleInterrupt(irq_t irq)
190 if (unlikely(irq > maxIRQ)) {
195 printf("Received IRQ %d, which is above the platforms maxIRQ of %d\n", (int)irq, (int)maxIRQ);
196 maskInterrupt(true, irq);
197 ackInterrupt(irq);
200 switch (intStateIRQTable[irq]) {
204 cap = intStateIRQNode[irq].cap;
212 printf("Undelivered IRQ: %d\n", (int)irq);
215 maskInterrupt(true, irq);
226 handleIPI(irq, true);
232 printf("Received reserved IRQ: %d", (int)irq);
234 handleReservedIRQ(irq);
243 maskInterrupt(true, irq);
245 printf("Received disabled IRQ: %d\n", (int)irq);
254 ackInterrupt(irq);
258 isIRQActive(irq_t irq)
260 return intStateIRQTable[irq] != IRQInactive;
264 setIRQState(irq_state_t irqState, irq_t irq)
266 intStateIRQTable[irq] = irqState;
267 maskInterrupt(irqState == IRQInactive, irq);