diff options
Diffstat (limited to 'sys/arch/vax/include/trap.h')
-rw-r--r-- | sys/arch/vax/include/trap.h | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/sys/arch/vax/include/trap.h b/sys/arch/vax/include/trap.h index b1cafc13785..2eb245a4de4 100644 --- a/sys/arch/vax/include/trap.h +++ b/sys/arch/vax/include/trap.h @@ -1,4 +1,4 @@ -/* $NetBSD: trap.h,v 1.8 1995/06/16 15:17:40 ragge Exp $ */ +/* $NetBSD: trap.h,v 1.9 1995/11/12 14:33:11 ragge Exp $ */ /*- * Copyright (c) 1990 The Regents of the University of California. @@ -104,6 +104,27 @@ struct trapframe { u_int pc; /* User pc */ u_int psl; /* User psl */ }; + +/* + * This struct is used when setting up interrupt vectors dynamically. + * It pushes a longword between 0-63 on the stack; this number is + * normally used as the ctlr number on devices. This use effectively + * limits the number of interruptable ctlrs on the unibus to 64. + */ +struct ivec_dsp { + char pushr; /* pushr */ + char pushrarg; /* $3f */ + char pushl; /* pushl */ + char pushlarg; /* $? */ + char nop; /* nop, for foolish gcc */ + char calls[3]; /* calls $1,? */ + u_int hoppaddr; /* jump for calls */ + char popr; /* popr $0x3f */ + char poprarg; + char rei; /* rei */ + char pad; /* sizeof(struct ivec_dsp) == 16 */ +}; + #endif /* ASSEMBLER */ #endif _VAX_TRAP_H_ |