FreeBSD/Linux Kernel Cross Reference
sys/i386at/pic_isa.c
1 /*
2 * Mach Operating System
3 * Copyright (c) 1991,1990 Carnegie Mellon University
4 * All Rights Reserved.
5 *
6 * Permission to use, copy, modify and distribute this software and its
7 * documentation is hereby granted, provided that both the copyright
8 * notice and this permission notice appear in all copies of the
9 * software, derivative works or modified versions, and any portions
10 * thereof, and that both notices appear in supporting documentation.
11 *
12 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
13 * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
14 * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
15 *
16 * Carnegie Mellon requests users of this software to return to
17 *
18 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
19 * School of Computer Science
20 * Carnegie Mellon University
21 * Pittsburgh PA 15213-3890
22 *
23 * any improvements or extensions that they make and grant Carnegie Mellon
24 * the rights to redistribute these changes.
25 */
26 /*
27 * HISTORY
28 * $Log: pic_isa.c,v $
29 * Revision 2.5 91/05/14 16:29:38 mrt
30 * Correcting copyright
31 *
32 * Revision 2.4 91/02/05 17:20:18 mrt
33 * Changed to new Mach copyright
34 * [91/02/01 17:46:58 mrt]
35 *
36 * Revision 2.3 91/01/08 17:33:40 rpd
37 * Initially, do not allow clock interrupts
38 * [91/01/04 12:21:54 rvb]
39 *
40 * Revision 2.2 90/11/26 14:50:57 rvb
41 * jsb bet me to XMK34, sigh ...
42 * [90/11/26 rvb]
43 * Apparently first revision is -r2.2
44 * [90/11/25 10:47:33 rvb]
45 *
46 * Synched 2.5 & 3.0 at I386q (r2.1.1.2) & XMK35 (r2.2)
47 * [90/11/15 rvb]
48 *
49 * We don't want to see clock interrupts till clkstart(),
50 * but we can not turn the interrupt off so we disable them.
51 * 2.5 ONLY!
52 * [90/11/05 rvb]
53 * Created based on pic.c
54 * [90/06/16 rvb]
55 *
56 */
57
58 #include <sys/types.h>
59 #include <i386/ipl.h>
60 #include <i386/pic.h>
61
62
63 /* These interrupts are always present */
64 extern intnull(), fpintr(), hardclock(), kdintr();
65 extern prtnull();
66
67 int (*ivect[NINTR])() = {
68 /* 00 */ hardclock, /* always */
69 /* 01 */ kdintr, /* kdintr, ... */
70 /* 02 */ intnull,
71 /* 03 */ intnull, /* lnpoll, comintr, ... */
72
73 /* 04 */ intnull, /* comintr, ... */
74 /* 05 */ intnull, /* comintr, wtintr, ... */
75 /* 06 */ intnull, /* fdintr, ... */
76 /* 07 */ prtnull, /* qdintr, ... */
77
78 /* 08 */ intnull,
79 /* 09 */ intnull, /* ether */
80 /* 10 */ intnull,
81 /* 11 */ intnull,
82
83 /* 12 */ intnull,
84 /* 13 */ fpintr, /* always */
85 /* 14 */ intnull, /* hdintr, ... */
86 /* 15 */ intnull, /* ??? */
87 };
88
89 u_char intpri[NINTR] = {
90 /* 00 */ 0, SPL6, 0, 0,
91 /* 04 */ 0, 0, 0, 0,
92 /* 08 */ 0, 0, 0, 0,
93 /* 12 */ 0, SPL1, 0, 0,
94 };
Cache object: 361c94e89550efb8b50ecafce4cbfb74
|