source: branches/minix3-book/drivers/libpci/pci_table.c@ 15

Last change on this file since 15 was 4, checked in by Mattia Monga, 14 years ago

Importazione sorgenti libro

File size: 10.7 KB
Line 
1/*
2pci_table.c
3
4Tables with PCI vendor and device identifiers
5
6Created: Jan 2000 by Philip Homburg <philip@cs.vu.nl>
7
8See the Linux PCI ID Repository <http://pciids.sourceforge.net/>.
9*/
10
11/* Changes from original Minix 2.0.4 version (2003-09-05):
12 * 2003-11-30 (kjb) Minix 2.0.4 FIX.TAZ add D-Link RTL8139 (0x1186, 0x1300)
13 * 2004-08-08 (asw) add Intel 82371AB (0x8086, 0x7100)
14 */
15
16#include "../drivers.h"
17#include "pci.h"
18#if __minix_vmd
19#include "config.h"
20#endif
21
22struct pci_vendor pci_vendor_table[]=
23{
24 { 0x1000, "NCR" },
25 { 0x1002, "ATI Technologies" },
26 { 0x100B, "National Semiconductor Corporation" },
27 { 0x1013, "Cirrus Logic" },
28 { 0x1022, "Advanced Micro Devices" },
29 { 0x102B, "Matrox Graphics, Inc." },
30 { 0x1039, "Silicon Integrated Systems (SiS)" },
31 { 0x104C, "Texas Instruments" },
32 { 0x105A, "Promise Technology" },
33 { 0x10B7, "3Com Corporation" },
34 { 0x10B9, "AcerLabs (ALI)" },
35 { 0x10DE, "nVidia Corporation" },
36 { 0x10EC, "Realtek" },
37 { 0x1106, "VIA" },
38 { 0x110A, "Siemens Nixdorf AG" },
39 { 0x125D, "ESS Technology" },
40 { 0x1274, "Ensoniq" },
41 { 0x5333, "S3" },
42 { 0x8086, "Intel" },
43 { 0x9004, "Adaptec" },
44 { 0x9005, "Adaptec" },
45 { 0x0000, NULL }
46};
47
48struct pci_device pci_device_table[]=
49{
50 { 0x1000, 0x0001, "NCR 53C810" },
51 { 0x1000, 0x000F, "NCR 53C875" },
52 { 0x1002, 0x4752, "ATI Rage XL PCI" },
53 { 0x100B, 0xD001, "Nat. Semi. 87410" },
54 { 0x1013, 0x00B8, "Cirrus Logic GD 5446" },
55 { 0x1013, 0x6003, "Cirrus Logic CS4614/22/24 CrystalClear" },
56 { 0x1022, 0x1100, "K8 HyperTransport Tech. Conf." },
57 { 0x1022, 0x1101, "K8 [Athlon64/Opteron] Address Map" },
58 { 0x1022, 0x1102, "K8 [Athlon64/Opteron] DRAM Controller" },
59 { 0x1022, 0x1103, "K8 [Athlon64/Opteron] Misc. Control" },
60 { 0x1022, 0x2000, "AMD Lance/PCI" },
61 { 0x1022, 0x700C, "AMD-762 CPU to PCI Bridge (SMP chipset)" },
62 { 0x1022, 0x700D, "AMD-762 CPU to PCI Bridge (AGP 4x)" },
63 { 0x1022, 0x7410, "AMD-766 PCI to ISA/LPC Bridge" },
64 { 0x1022, 0x7411, "AMD-766 EIDE Controller" },
65 { 0x102B, 0x051B, "Matrox MGA 2164W [Millennium II]" },
66 { 0x102B, 0x0525, "Matrox MGA G400 AGP" },
67 { 0x1039, 0x0008, "SiS 85C503/5513" },
68 { 0x1039, 0x0200, "SiS 5597/5598 VGA" },
69 { 0x1039, 0x0406, "SiS 85C501/2" },
70 { 0x1039, 0x5597, "SiS 5582" },
71 { 0x104C, 0xAC1C, "TI PCI1225" },
72 { 0x105A, 0x0D30, "Promise Technology 20265" },
73 { 0x10B7, 0x9058, "3Com 3c905B-Combo" },
74 { 0x10B7, 0x9805, "3Com 3c980-TX Python-T" },
75 { 0x10B9, 0x1533, "ALI M1533 ISA-bridge [Aladdin IV]" },
76 { 0x10B9, 0x1541, "ALI M1541" },
77 { 0x10B9, 0x5229, "ALI M5229 (IDE)" },
78 { 0x10B9, 0x5243, "ALI M5243" },
79 { 0x10B9, 0x7101, "ALI M7101 PMU" },
80 { 0x10DE, 0x0020, "nVidia Riva TnT [NV04]" },
81 { 0x10DE, 0x0110, "nVidia GeForce2 MX [NV11]" },
82 { 0x10EC, 0x8029, "Realtek RTL8029" },
83 { 0x10EC, 0x8139, "Realtek RTL8139" },
84 { 0x1106, 0x0305, "VIA VT8363/8365 [KT133/KM133]" },
85 { 0x1106, 0x0571, "VIA IDE controller" },
86 { 0x1106, 0x0686, "VIA VT82C686 (Apollo South Bridge)" },
87 { 0x1106, 0x1204, "K8M800 Host Bridge" },
88 { 0x1106, 0x2204, "K8M800 Host Bridge" },
89 { 0x1106, 0x3038, "VT83C572 PCI USB Controller" },
90 { 0x1106, 0x3057, "VT82C686A ACPI Power Management Controller" },
91 { 0x1106, 0x3058, "VIA AC97 Audio Controller" },
92 { 0x1106, 0x3059, "VIA AC97 Audio Controller" },
93 { 0x1106, 0x3065, "VT6102 [Rhine-II]" },
94 { 0x1106, 0x3074, "VIA VT8233" },
95 { 0x1106, 0x3099, "VIA VT8367 [KT266]" },
96 { 0x1106, 0x3104, "VIA USB 2.0" },
97 { 0x1106, 0x3108, "VIA S3 Unichrome Pro VGA Adapter" },
98 { 0x1106, 0x3149, "VIA VT6420 SATA RAID Controller" },
99 { 0x1106, 0x3204, "K8M800 Host Bridge" },
100 { 0x1106, 0x3227, "VT8237 ISA bridge" },
101 { 0x1106, 0x4204, "K8M800 Host Bridge" },
102 { 0x1106, 0x8305, "VIA VT8365 [KM133 AGP]" },
103 { 0x1106, 0xB099, "VIA VT8367 [KT266 AGP]" },
104 { 0x1106, 0xB188, "VT8237 PCI bridge" },
105 { 0x110A, 0x0005, "Siemens Nixdorf Tulip Cntlr., Power Management" },
106 { 0x1186, 0x1300, "D-Link RTL8139" },
107 { 0x125D, 0x1969, "ESS ES1969 Solo-1 Audiodrive" },
108 { 0x1274, 0x1371, "Ensoniq ES1371 [AudioPCI-97]" },
109 { 0x1274, 0x5000, "Ensoniq ES1370" },
110 { 0x1274, 0x5880, "Ensoniq CT5880 [AudioPCI]" },
111 { 0x5333, 0x8811, "S3 86c764/765 [Trio32/64/64V+]" },
112 { 0x5333, 0x883d, "S3 Virge/VX" },
113 { 0x5333, 0x88d0, "S3 Vision 964 vers 0" },
114 { 0x5333, 0x8a01, "S3 Virge/DX or /GX" },
115 { 0x8086, 0x1004, "Intel 82543GC Gigabit Ethernet Controller" },
116 { 0x8086, 0x1029, "Intel EtherExpressPro100 ID1029" },
117 { 0x8086, 0x1030, "Intel Corporation 82559 InBusiness 10/100" },
118 { 0x8086, 0x1209, "Intel EtherExpressPro100 82559ER" },
119 { 0x8086, 0x1229, "Intel EtherExpressPro100 82557/8/9" },
120 { 0x8086, 0x122D, "Intel 82437FX" },
121 { 0x8086, 0x122E, "Intel 82371FB (PIIX)" },
122 { 0x8086, 0x1230, "Intel 82371FB (IDE)" },
123 { 0x8086, 0x1237, "Intel 82441FX (440FX)" },
124 { 0x8086, 0x1250, "Intel 82439HX" },
125 { 0x8086, 0x2449, "Intel EtherExpressPro100 82562EM" },
126 { 0x8086, 0x244e, "Intel 82801 PCI Bridge" },
127 { 0x8086, 0x2560, "Intel 82845G/GL[Brookdale-G]/GE/PE" },
128 { 0x8086, 0x2561, "Intel 82845G/GL/GE/PE Host-to-AGP Bridge" },
129 { 0x8086, 0x7000, "Intel 82371SB" },
130 { 0x8086, 0x7010, "Intel 82371SB (IDE)" },
131 { 0x8086, 0x7020, "Intel 82371SB (USB)" },
132 { 0x8086, 0x7030, "Intel 82437VX" }, /* asw 2005-03-02 */
133 { 0x8086, 0x7100, "Intel 82371AB" }, /* asw 2004-07-31 */
134 { 0x8086, 0x7100, "Intel 82371AB" },
135 { 0x8086, 0x7110, "Intel 82371AB (PIIX4)" },
136 { 0x8086, 0x7111, "Intel 82371AB (IDE)" },
137 { 0x8086, 0x7112, "Intel 82371AB (USB)" },
138 { 0x8086, 0x7113, "Intel 82371AB (Power)" },
139 { 0x8086, 0x7124, "Intel 82801AA" }, /* asw 2004-11-09 */
140 { 0x8086, 0x7190, "Intel 82443BX" },
141 { 0x8086, 0x7191, "Intel 82443BX (AGP bridge)" },
142 { 0x8086, 0x7192, "Intel 82443BX (Host-to-PCI bridge)" },
143 { 0x9004, 0x8178, "Adaptec AHA-2940U/2940UW Ultra/Ultra-Wide SCSI Ctrlr" },
144 { 0x9005, 0x0080, "Adaptec AIC-7892A Ultra160/m PCI SCSI Controller" },
145 { 0x0000, 0x0000, NULL }
146};
147
148struct pci_baseclass pci_baseclass_table[]=
149{
150 { 0x00, "No device class" },
151 { 0x01, "Mass storage controller" },
152 { 0x02, "Network controller" },
153 { 0x03, "Display controller" },
154 { 0x04, "Multimedia device" },
155 { 0x05, "Memory controller" },
156 { 0x06, "Bridge device" },
157 { 0x07, "Simple comm. controller" },
158 { 0x08, "Base system peripheral" },
159 { 0x09, "Input device" },
160 { 0x0A, "Docking station" },
161 { 0x0B, "Processor" },
162 { 0x0C, "Serial bus controller" },
163 { 0x0d, "Wireless controller" },
164 { 0x0e, "Intelligent I/O controller" },
165 { 0x0f, "Satellite comm. controller" },
166 { 0x10, "Encryption/decryption controller" },
167 { 0x11, "Data acquisition controller" },
168 { 0xff, "Misc. device" },
169
170 { 0x00, NULL }
171};
172
173/* -1 in the infclass field is a wildcard for infclass */
174struct pci_subclass pci_subclass_table[]=
175{
176 { 0x00, 0x01, 0x00, "VGA-compatible device" },
177
178 { 0x01, 0x00, 0x00, "SCSI bus controller" },
179 { 0x01, 0x01, -1, "IDE controller" },
180 { 0x01, 0x02, 0x00, "Floppy disk controller" },
181 { 0x01, 0x03, 0x00, "IPI controller" },
182 { 0x01, 0x04, 0x00, "RAID controller" },
183 { 0x01, 0x80, 0x00, "Other mass storage controller" },
184
185 { 0x02, 0x00, 0x00, "Ethernet controller" },
186 { 0x02, 0x01, 0x00, "Token Ring controller" },
187 { 0x02, 0x02, 0x00, "FDDI controller" },
188 { 0x02, 0x03, 0x00, "ATM controller" },
189 { 0x02, 0x04, 0x00, "ISDN controller" },
190 { 0x02, 0x80, 0x00, "Other network controller" },
191
192 { 0x03, 0x00, 0x00, "VGA-compatible controller" },
193 { 0x03, 0x00, 0x01, "8514-compatible controller" },
194 { 0x03, 0x01, 0x00, "XGA controller" },
195 { 0x03, 0x02, 0x00, "3D controller" },
196 { 0x03, 0x80, 0x00, "Other display controller" },
197
198 { 0x04, 0x00, 0x00, "Video device" },
199 { 0x04, 0x01, 0x00, "Audio device" },
200 { 0x04, 0x02, 0x00, "Computer telephony device" },
201 { 0x04, 0x80, 0x00, "Other multimedia device" },
202
203 { 0x06, 0x00, 0x00, "Host bridge" },
204 { 0x06, 0x01, 0x00, "ISA bridge" },
205 { 0x06, 0x02, 0x00, "EISA bridge" },
206 { 0x06, 0x03, 0x00, "MCA bridge" },
207 { 0x06, 0x04, 0x00, "PCI-to-PCI bridge" },
208 { 0x06, 0x04, 0x01, "Subtractive decode PCI-to-PCI bridge" },
209 { 0x06, 0x05, 0x00, "PCMCIA bridge" },
210 { 0x06, 0x06, 0x00, "NuBus bridge" },
211 { 0x06, 0x07, 0x00, "CardBus bridge" },
212 { 0x06, 0x08, -1, "RACEway bridge" },
213 { 0x06, 0x09, -1, "Semi-transparent PCI-to-PCI bridge" },
214 { 0x06, 0x80, 0x00, "Other bridge device" },
215
216 { 0x0C, 0x00, 0x00, "IEEE 1394 (FireWire)" },
217 { 0x0C, 0x00, 0x10, "IEEE 1394 (OpenHCI)" },
218 { 0x0C, 0x01, 0x00, "ACCESS bus" },
219 { 0x0C, 0x02, 0x00, "SSA" },
220 { 0x0C, 0x03, 0x00, "USB (with UHC)" },
221 { 0x0C, 0x03, 0x10, "USB (with OHC)" },
222 { 0x0C, 0x03, 0x80, "USB (other host inf.)" },
223 { 0x0C, 0x03, 0xFE, "USB device" },
224 { 0x0C, 0x04, 0x00, "Fibre Channel" },
225 { 0x0C, 0x05, 0x00, "SMBus" },
226
227 { 0x00, 0x00, 0x00, NULL }
228};
229
230struct pci_intel_ctrl pci_intel_ctrl[]=
231{
232 { 0x1022, 0x700C, }, /* AMD-762 */
233 { 0x1039, 0x0406, }, /* SiS 85C501/2 */
234 { 0x1039, 0x5597, }, /* SiS 5582 */
235 { 0x10B9, 0x1541, }, /* ALI M1541 */
236 { 0x1106, 0x0305, }, /* VIA VT8363/8365 */
237 { 0x1106, 0x3099, }, /* VIA VT8367 [KT266] */
238 { 0x1106, 0x3188, }, /* VIA */
239 { 0x1106, 0x0282, }, /* VIA */
240 { 0x1106, 0x0204, }, /* VIA VT8367 [KT266] */
241 { 0x8086, 0x122D, }, /* Intel 82437FX */
242 { 0x8086, 0x1237, }, /* Intel 82441FX */
243 { 0x8086, 0x1250, }, /* Intel 82439HX */
244 { 0x8086, 0x2560, }, /* Intel 82845G/GL[Brookdale-G]/GE/PE */
245 { 0x8086, 0x7030, }, /* Intel 82437VX (asw 2005-03-02) */
246 { 0x8086, 0x7100, }, /* Intel 82371AB (asw 2004-07-31) */
247 { 0x8086, 0x7124, }, /* Intel 82801AA (asw 2004-11-09) */
248 { 0x8086, 0x7190, }, /* Intel 82443BX - AGP enabled */
249 { 0x8086, 0x7192, }, /* Intel 82443BX - AGP disabled */
250 { 0x0000, 0x0000, },
251};
252
253struct pci_isabridge pci_isabridge[]=
254{
255 { 0x1022, 0x7410, 1, PCI_IB_AMD, }, /* AMD-766 */
256 { 0x1039, 0x0008, 1, PCI_IB_SIS, }, /* SiS 85C503/5513 */
257 { 0x10B9, 0x1533, 1, PCI_IB_PIIX, }, /* ALI M1533 */
258 { 0x1106, 0x0686, 1, PCI_IB_VIA, }, /* VIA VT82C686 */
259 { 0x1106, 0x3074, 1, PCI_IB_VIA, }, /* VIA VT8233 */
260 { 0x1106, 0x3227, 1, PCI_IB_VIA, }, /* VIA */
261 { 0x8086, 0x122E, 1, PCI_IB_PIIX, }, /* Intel 82371FB */
262 { 0x8086, 0x7000, 1, PCI_IB_PIIX, }, /* Intel 82371SB */
263 { 0x8086, 0x7030, 1, PCI_IB_PIIX, }, /* Intel 82437VX (asw 2005-03-02) */
264 { 0x8086, 0x7100, 1, PCI_IB_PIIX, }, /* Intel 82371AB (asw 2004-07-31) */
265 { 0x8086, 0x7110, 1, PCI_IB_PIIX, }, /* Intel PIIX4 */
266 { 0x8086, 0x7124, 1, PCI_IB_PIIX, }, /* Intel 82801AA (asw 2004-11-09) */
267 { 0x8086, 0x2641, 1, PCI_IB_PIIX, },
268 { 0x0000, 0x0000, 0, 0, },
269};
270
271struct pci_pcibridge pci_pcibridge[]=
272{
273 { 0x8086, 0x244e, PCI_PCIB_INTEL, }, /* Intel 82801 PCI Bridge */
274 { 0x8086, 0x2561, PCI_AGPB_INTEL, }, /* Intel 82845 AGP Bridge */
275 { 0x8086, 0x7191, PCI_AGPB_INTEL, }, /* Intel 82443BX (AGP bridge) */
276 { 0x1022, 0x700D, PCI_AGPB_INTEL, }, /* AMD-762 (AGP 4x) */
277 { 0x10B9, 0x5243, PCI_AGPB_INTEL, }, /* ALI M5243 */
278 { 0x1106, 0x8305, PCI_AGPB_VIA, }, /* VIA VT8365 [KM133 AGP] */
279 { 0x1106, 0xB188, PCI_AGPB_VIA, }, /* VT8237 PCI bridge */
280 { 0x0000, 0x0000, 0, },
281};
282
283/*
284 * $PchId: pci_table.c,v 1.7 2003/09/05 10:53:22 philip Exp $
285 */
Note: See TracBrowser for help on using the repository browser.