xref: /xnu-11215/iokit/KernelConfigTables.cpp (revision 8149afcc)
1 /*
2  * Copyright (c) 1998-2000 Apple Computer, Inc. All rights reserved.
3  *
4  * @APPLE_LICENSE_HEADER_START@
5  *
6  * The contents of this file constitute Original Code as defined in and
7  * are subject to the Apple Public Source License Version 1.1 (the
8  * "License").  You may not use this file except in compliance with the
9  * License.  Please obtain a copy of the License at
10  * http://www.apple.com/publicsource and read it before using this file.
11  *
12  * This Original Code and all software distributed under the License are
13  * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16  * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.  Please see the
17  * License for the specific language governing rights and limitations
18  * under the License.
19  *
20  * @APPLE_LICENSE_HEADER_END@
21  */
22 
23 
24 /* This list is used in IOStartIOKit.cpp to declare fake kmod_info
25  * structs for kext dependencies that are built into the kernel.
26  * See the SystemKEXT project for fuller information on these
27  * fake or pseudo-kexts, including their compatible versions.
28  */
29 const char * gIOKernelKmods =
30 "{
31     'com.apple.kernel'                         = '1.4';
32     'com.apple.kernel.bsd'                     = '1.1';
33     'com.apple.kernel.iokit'                   = '1.1';
34     'com.apple.kernel.libkern'                 = '1.1';
35     'com.apple.kernel.mach'                    = '1.1';
36     'com.apple.iokit.IOADBFamily'              = '1.1';
37     'com.apple.iokit.IOSystemManagementFamily' = '1.1';
38 }";
39 
40 
41 const char * gIOKernelConfigTables =
42 "(
43     {
44       'IOClass'         = IOPanicPlatform;
45       'IOProviderClass' = IOPlatformExpertDevice;
46       'IOProbeScore'    = '-1';
47     }
48 "
49 #ifdef PPC
50 "   ,
51     {
52 	'IOClass'		= AppleCPU;
53 	'IOProviderClass'	= IOPlatformDevice;
54         'IONameMatch'		= 'cpu';
55 	'IOProbeScore'		= 100:32;
56     },
57 "
58 #if 0
59 "
60     {
61         'IOClass'		= PowerSurgePE;
62         'IOProviderClass'	= IOPlatformExpertDevice;
63         'IONameMatch'		= ('AAPL,7300', 'AAPL,7500', 'AAPL,8500', 'AAPL,9500');
64         'IOProbeScore'		= 10000:32;
65     },
66 "
67 #endif
68 "
69 "
70 #if 0
71 "
72     {
73         'IOClass'		= PowerStarPE;
74         'IOProviderClass'	= IOPlatformExpertDevice;
75         'IONameMatch'		= ('AAPL,3400/2400', 'AAPL,3500');
76         'IOProbeScore'		= 10000:32;
77     },
78 "
79 #endif
80 "
81     {
82         'IOClass'		= GossamerPE;
83         'IOProviderClass'	= IOPlatformExpertDevice;
84 	'IONameMatch'		= ('AAPL,Gossamer', 'AAPL,PowerMac G3', 'AAPL,PowerBook1998', 'iMac,1', 'PowerMac1,1', 'PowerMac1,2', 'PowerBook1,1');
85 	'IOProbeScore'		= 10000:32;
86     },
87     {
88 	'IOClass'		= GossamerCPU;
89 	'IOProviderClass'	= IOPlatformDevice;
90         'IONameMatch'		= 'cpu';
91 	'IOProbeScore'		= 1000:32;
92     },
93 "
94 #if 0
95 "
96     {
97         'IOClass'         	= PowerExpressPE;
98         'IOProviderClass'	= IOPlatformExpertDevice;
99 	'IONameMatch'		= 'AAPL,9700';
100 	'IOProbeScore'		= 10000:32;
101 	'senses'		= <00000000 00000000 00000000 00000000 "
102                                   "00000000 00000000 00000000 00000000 "
103                                   "00000000 00000000 00000000 00000000 "
104                                   "00000000 00000000 00000000 00000000 "
105                                   "00000000 00000000 00000000 00000000 "
106                                   "00000000 00000000 00000000 00000000 "
107                                   "00000000 00000000 00000001 00000001 "
108                                   "00000001 00000001 00000001 00000001 "
109                                   "00000001 00000001 00000001 00000001 "
110                                   "00000001 00000001>;
111     },
112 "
113 #endif
114 #if 0
115 "
116     {
117         'IOClass'		= GrandCentral;
118         'IOProviderClass'	= IOPCIDevice;
119         'IONameMatch'		= gc;
120 	'IOProbeScore'		= 2000:32;
121     },
122 "
123 #endif
124 "
125     {
126         'IOClass'		= OHare;
127         'IOProviderClass'	= IOPCIDevice;
128         'IONameMatch'		= ('ohare', 'pci106b,7');
129     },
130     {
131         'IOClass'              = AppleNMI;
132         'IOProviderClass'      = AppleMacIODevice;
133         'IONameMatch'          = 'programmer-switch';
134     },
135     {
136         'IOClass'		= AppleCuda;
137         'IOProviderClass'	= AppleVIADevice;
138         'IONameMatch'		= cuda;
139     },"
140 #if 0
141 " {
142         'IOClass'		= ApplePMU;
143         'IOProviderClass'	= AppleVIADevice;
144         'IONameMatch'		= pmu;
145     },"
146 #endif
147     "{
148         'IOClass'               = IOPMUADBController;
149         'IOProviderClass'       = AppleMacIODevice;
150         'IONameMatch'           = adb;
151     },
152     {
153         'IOClass'		= AppleNVRAM;
154         'IOProviderClass'	= AppleMacIODevice;
155         'IONameMatch'		= nvram;
156     }
157 "
158 #endif /* PPC */
159 #ifdef i386
160 "   ,
161     {
162        'IOClass'           = AppleI386PlatformExpert;
163        'IOProviderClass'   = IOPlatformExpertDevice;
164        'top-level'         = "
165     /* set of dicts to make into nubs */
166     "[
167        { IOName = cpu; },
168        { IOName = intel-pic; },
169        { IOName = intel-clock; },
170        { IOName = ps2controller; },
171        { IOName = pci; },
172        { IOName = display; 'AAPL,boot-display' = Yes; }
173     ];
174     },
175     {
176        'IOClass'           = AppleI386CPU;
177        'IOProviderClass'   = IOPlatformDevice;
178        'IONameMatch'       = cpu;
179        'IOProbeScore'      = 100:32;
180     },
181     {
182        'IOClass'           = AppleIntelClassicPIC;
183        'IOProviderClass'   = IOPlatformDevice;
184        'IONameMatch'       = intel-pic;
185     },
186     {
187        'IOClass'           = AppleIntelClock;
188        'IOProviderClass'   = IOPlatformDevice;
189        'IONameMatch'       = intel-clock;
190     },
191     {
192        'IOClass'           = AppleATAPIIX;
193        'IOProviderClass'   = IOPCIDevice;
194        'IOPCIMatch'        = '0x12308086 0x70108086 0x71118086 0x24118086 0x24218086 0x244a8086 0x244b8086';
195        'IOMatchCategory'   = AppleATAPIIXChannel0;
196     },
197     {
198        'IOClass'           = AppleATAPIIX;
199        'IOProviderClass'   = IOPCIDevice;
200        'IOPCIMatch'        = '0x12308086 0x70108086 0x71118086 0x24118086 0x24218086 0x244a8086 0x244b8086';
201        'IOMatchCategory'   = AppleATAPIIXChannel1;
202     }
203 "
204 #endif /* i386 */
205 ")";
206 
207