Lines Matching refs:handler
39 int_handler handler;
169 struct int_handler_struct* handler = &int_handler_table[x86_vector];
172 AutoSpinLockNoIrqSave guard(&handler->lock);
173 if (handler->handler)
174 handler->handler(handler->arg);
180 zx_status_t register_int_handler(unsigned int vector, int_handler handler, void* arg) {
195 if (x86_vector && !handler) {
196 /* If the x86 vector is valid, and we are unregistering the handler,
200 } else if (!x86_vector && handler) {
201 /* If the x86 vector is invalid, and we are registering a handler,
208 * register a new handler. */
214 "registering new handler (%p, %p)\n",
215 vector, handler, arg);
224 // Update the handler table and register the x86 vector with the io_apic.
225 DEBUG_ASSERT(!!x86_vector == !!handler);
231 if (handler && int_handler_table[x86_vector].handler) {
236 int_handler_table[x86_vector].handler = handler;
237 int_handler_table[x86_vector].arg = handler ? arg : NULL;
348 void msi_register_handler(const msi_block_t* block, uint msi_id, int_handler handler, void* ctx) {
357 int_handler_table[x86_vector].handler = handler;
358 int_handler_table[x86_vector].arg = handler ? ctx : NULL;