|
|
1.1 ! root 1: /* ! 2: * programmable interrupt vectors (for the 8259's) ! 3: */ ! 4: enum ! 5: { ! 6: Bptvec= 3, /* breakpoints */ ! 7: Mathemuvec= 7, /* math coprocessor emulation interrupt */ ! 8: Mathovervec= 9, /* math coprocessor overrun interrupt */ ! 9: Matherr1vec= 16, /* math coprocessor error interrupt */ ! 10: Faultvec= 14, /* page fault */ ! 11: ! 12: Int0vec= 24, /* first 8259 */ ! 13: Clockvec= Int0vec+0, /* clock interrupts */ ! 14: Kbdvec= Int0vec+1, /* keyboard interrupts */ ! 15: Uart1vec= Int0vec+3, /* modem line */ ! 16: Uart0vec= Int0vec+4, /* serial line */ ! 17: PCMCIAvec= Int0vec+5, /* PCMCIA card change */ ! 18: Floppyvec= Int0vec+6, /* floppy interrupts */ ! 19: Parallelvec= Int0vec+7, /* parallel port interrupts */ ! 20: Int1vec= Int0vec+8, ! 21: Ethervec= Int0vec+10, /* ethernet interrupt */ ! 22: Mousevec= Int0vec+12, /* mouse interrupt */ ! 23: Matherr2vec= Int0vec+13, /* math coprocessor */ ! 24: ATAvec0= Int0vec+14, /* ATA controller #1 */ ! 25: ATAvec1= Int0vec+15, /* ATA controller #2 */ ! 26: ! 27: Syscallvec= 64, ! 28: }; ! 29: ! 30: /* ! 31: * 8259 interrupt controllers ! 32: */ ! 33: enum ! 34: { ! 35: Int0ctl= 0x20, /* control port (ICW1, OCW2, OCW3) */ ! 36: Int0aux= 0x21, /* everything else (ICW2, ICW3, ICW4, OCW1) */ ! 37: Int1ctl= 0xA0, /* control port */ ! 38: Int1aux= 0xA1, /* everything else (ICW2, ICW3, ICW4, OCW1) */ ! 39: ! 40: Icw1= 0x10, /* select bit in ctl register */ ! 41: Ocw2= 0x00, ! 42: Ocw3= 0x08, ! 43: ! 44: EOI= 0x20, /* non-specific end of interrupt */ ! 45: }; ! 46: ! 47: extern int int0mask; /* interrupts enabled for first 8259 */ ! 48: extern int int1mask; /* interrupts enabled for second 8259 */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.