/* * Copyright (c) 2016 Free Software Foundation. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef DEVICE_INTERRUPT_H #define DEVICE_INTERRUPT_H struct intr_entry; boolean_t queue_intr (struct intr_entry *e); kern_return_t insert_intr_entry (int line, ipc_port_t dest, int new_style, /* version2 notifications? */ struct intr_entry **entry); boolean_t intr_entry_notify (mach_msg_header_t *msg); void intr_thread (void); /* linux/dev/arch/i386/kernel/irq.c */ int install_user_intr_handler (unsigned int line, unsigned long flags, struct intr_entry *entry); int remove_user_intr_handler (unsigned int irq, struct intr_entry *entry); #endif /* DEVICE_INTERRUPT_H */