diff options
author | peter <peter@FreeBSD.org> | 1999-04-21 07:26:30 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 1999-04-21 07:26:30 +0000 |
commit | fa628c268c2d531552037f05699c06959d9618e6 (patch) | |
tree | 139882de7181a80226508d0a7c0f4695f2639ae0 /sys/sys/interrupt.h | |
parent | 47b96f90c086096cb12e76442461d4da895e207b (diff) | |
download | FreeBSD-src-fa628c268c2d531552037f05699c06959d9618e6.zip FreeBSD-src-fa628c268c2d531552037f05699c06959d9618e6.tar.gz |
Stage 1 of a cleanup of the i386 interrupt registration mechanism.
Interrupts under the new scheme are managed by the i386 nexus with the
awareness of the resource manager. There is further room for optimizing
the interfaces still. All the users of register_intr()/intr_create()
should be gone, with the exception of pcic and i386/isa/clock.c.
Diffstat (limited to 'sys/sys/interrupt.h')
-rw-r--r-- | sys/sys/interrupt.h | 23 |
1 files changed, 4 insertions, 19 deletions
diff --git a/sys/sys/interrupt.h b/sys/sys/interrupt.h index 5db9081..6c71703 100644 --- a/sys/sys/interrupt.h +++ b/sys/sys/interrupt.h @@ -23,35 +23,20 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: interrupt.h,v 1.6 1997/07/09 18:08:15 ache Exp $ + * $Id: interrupt.h,v 1.7 1998/08/11 15:08:13 bde Exp $ */ -/* XXX currently dev_instance must be set to the ISA device_id or -1 for PCI */ -#define INTR_FAST 0x00000001 /* fast interrupt handler */ -#define INTR_EXCL 0x00010000 /* excl. intr, default is shared */ +#ifndef _SYS_INTERRUPT_H_ +#define _SYS_INTERRUPT_H_ typedef void swihand_t __P((void)); -struct intrec *intr_create(void *dev_instance, int irq, inthand2_t handler, - void *arg, intrmask_t *maskptr, int flags); - -int intr_destroy(struct intrec *idesc); - -int intr_connect(struct intrec *idesc); -int intr_disconnect(struct intrec *idesc); - void register_swi __P((int intr, swihand_t *handler)); void swi_dispatcher __P((int intr)); swihand_t swi_generic; swihand_t swi_null; void unregister_swi __P((int intr, swihand_t *handler)); -/* XXX emulate old interface for now ... */ -int register_intr __P((int intr, int device_id, u_int flags, - inthand2_t *handler, u_int *maskptr, int unit)); -int unregister_intr(int intr, inthand2_t handler); +extern swihand_t *ihandlers[]; -#ifdef NHWI -/* XXX type change in middle; MI code uses only the top NSWI entries. */ -extern swihand_t *ihandlers[NHWI + NSWI]; #endif |