diff -Ncr linux-2.4.20-aralion-0.0/drivers/pci/pci.ids linux-2.4.20-aralion-0.1/drivers/pci/pci.ids *** linux-2.4.20-aralion-0.0/drivers/pci/pci.ids 2003-11-26 16:26:01.000000000 +0900 --- linux-2.4.20-aralion-0.1/drivers/pci/pci.ids 2003-11-26 16:30:31.000000000 +0900 *************** *** 7,13 **** # so if you have anything to contribute, please visit the home page or # send a diff -u against the most recent pci.ids to pci-ids@ucw.cz. # ! # $Id: pci.ids,v 1.46 2002/08/14 17:38:51 mares Exp $ # # Vendors, devices and subsystems. Please keep sorted. --- 7,14 ---- # so if you have anything to contribute, please visit the home page or # send a diff -u against the most recent pci.ids to pci-ids@ucw.cz. # ! # Daily snapshot on Thu 2003-05-29 10:00:04 ! # Modded on Fri 2003-05-30 03:13:05 # # Vendors, devices and subsystems. Please keep sorted. *************** *** 21,26 **** --- 22,29 ---- 001a Ascend Communications, Inc. 0033 Paradyne corp. 003d Lockheed Martin-Marietta Corp + # Real TJN ID is e159, but they got it wrong several times --mj + 0059 Tiger Jet Network Inc. (Wrong ID) 0070 Hauppauge computer works Inc. 0100 Ncipher Corp Ltd 0675 Dynalink *************** *** 98,104 **** f130 NetFlex-3/P ThunderLAN 1.0 f150 NetFlex-3/P ThunderLAN 2.3 0e55 HaSoTec GmbH ! 1000 LSI Logic / Symbios Logic (formerly NCR) 0001 53c810 1000 1000 8100S 0002 53c820 --- 101,108 ---- f130 NetFlex-3/P ThunderLAN 1.0 f150 NetFlex-3/P ThunderLAN 2.3 0e55 HaSoTec GmbH ! # Formerly NCR ! 1000 LSI Logic / Symbios Logic 0001 53c810 1000 1000 8100S 0002 53c820 *************** *** 123,129 **** 0020 53c1010 Ultra3 SCSI Adapter 1de1 1020 DC-390U3W 0021 53c1010 66MHz Ultra3 SCSI Adapter ! 0030 53c1030 1028 1010 LSI U320 SCSI Controller 0040 53c1035 008f 53c875J --- 127,133 ---- 0020 53c1010 Ultra3 SCSI Adapter 1de1 1020 DC-390U3W 0021 53c1010 66MHz Ultra3 SCSI Adapter ! 0030 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI 1028 1010 LSI U320 SCSI Controller 0040 53c1035 008f 53c875J *************** *** 158,166 **** 0017 PROTO-3 PCI Prototyping board 9100 INI-9100/9100W SCSI Host 1002 ATI Technologies Inc 4158 68800AX [Mach32] ! 4242 Radeon 8500 DV 1002 02aa Radeon 8500 AIW DV Edition 4354 215CT [Mach64 CT] 4358 210888CX [Mach64 CX] 4554 210888ET [Mach64 ET] --- 162,181 ---- 0017 PROTO-3 PCI Prototyping board 9100 INI-9100/9100W SCSI Host 1002 ATI Technologies Inc + 4136 Radeon IGP 320 M + # New support forthcoming in XFree86 4.3.0 + 4144 Radeon R300 AD [Radeon 9500 Pro] + # New support forthcoming in XFree86 4.3.0 + 4145 Radeon R300 AE [Radeon 9500 Pro] + # New support forthcoming in XFree86 4.3.0 + 4146 Radeon R300 AF [Radeon 9500 Pro] + # Update: Oops, AF was a typo above for 4147, should be AG + 4147 Radeon R300 AG [FireGL Z1/X1] 4158 68800AX [Mach32] ! 4242 Radeon R200 BB [Radeon All in Wonder 8500DV] 1002 02aa Radeon 8500 AIW DV Edition + 4336 Radeon Mobility U1 + 4337 Radeon IGP 340M 4354 215CT [Mach64 CT] 4358 210888CX [Mach64 CX] 4554 210888ET [Mach64 ET] *************** *** 210,215 **** --- 225,232 ---- 4752 Rage XL 1002 0008 Rage XL 1002 4752 Rage XL + 1002 8008 Rage XL + 1028 00d1 PowerEdge 2550 4753 Rage XC 1002 4753 Rage XC 4754 3D Rage I/II 215GT [Mach64 GT] *************** *** 227,232 **** --- 244,263 ---- 475a 3D Rage IIC AGP 1002 0087 Rage 3D IIC 1002 475a Rage IIC AGP + 4964 Radeon R250 Id [Radeon 9000] + 4965 Radeon R250 Ie [Radeon 9000] + 4966 Radeon R250 If [Radeon 9000] + 10f1 0002 R250 If [Tachyon G9000 PRO] + 148c 2039 R250 If [Radeon 9000 Pro "Evil Commando"] + 1509 9a00 R250 If [Radeon 9000 "AT009"] + # New subdevice - 3D Prophet 9000 PCI by Hercules. AGP version probably would have same ID, so not specified. + 1681 0040 R250 If [3D prophet 9000] + 174b 7176 R250 If [Sapphire Radeon 9000 Pro] + 174b 7192 R250 If [Radeon 9000 "Atlantis"] + 17af 2005 R250 If [Excalibur Radeon 9000 Pro] + 17af 2006 R250 If [Excalibur Radeon 9000] + 4967 Radeon R250 Ig [Radeon 9000] + 496e Radeon R250 [Radeon 9000] (Secondary) 4c42 3D Rage LT Pro AGP-133 0e11 b0e8 Rage 3D LT Pro 0e11 b10e 3D Rage LT Pro (Compaq Armada 1750) *************** *** 245,251 **** --- 276,284 ---- 1002 0044 Rage LT Pro 1002 4c49 Rage LT Pro 4c4d Rage Mobility P/M AGP 2x + 0e11 b111 Armada M700 1002 0084 Xpert 98 AGP 2X (Mobility) + 1014 0154 ThinkPad A20m 4c4e Rage Mobility L AGP 2x 4c50 3D Rage LT Pro 1002 4c50 Rage LT Pro *************** *** 253,268 **** 4c52 Rage Mobility P/M 4c53 Rage Mobility L 4c54 264LT [Mach64 LT] ! 4c57 Radeon Mobility M7 LW 1028 00e6 Radeon Mobility M7 LW (Dell Inspiron 8100) ! 4c58 Radeon Mobility M7 LX [Radeon Mobility FireGL 7800] 4c59 Radeon Mobility M6 LY 1014 0235 ThinkPad A30p (2653-64G) 1014 0239 ThinkPad X22/X23/X24 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP 4c5a Radeon Mobility M6 LZ 4d46 Rage Mobility M4 AGP 4d4c Rage Mobility M4 AGP 5041 Rage 128 PA/PRO 5042 Rage 128 PB/PRO AGP 2x 5043 Rage 128 PC/PRO AGP 4x --- 286,324 ---- 4c52 Rage Mobility P/M 4c53 Rage Mobility L 4c54 264LT [Mach64 LT] ! 4c57 Radeon Mobility M7 LW [Radeon Mobility 7500] ! 1014 0517 ThinkPad T30 1028 00e6 Radeon Mobility M7 LW (Dell Inspiron 8100) ! 144d c006 Radeon Mobility M7 LW in vpr Matrix 170B4 ! # Update: More correct labelling for this FireGL chipset ! 4c58 Radeon RV200 LX [Mobility FireGL 7800 M7] 4c59 Radeon Mobility M6 LY 1014 0235 ThinkPad A30p (2653-64G) 1014 0239 ThinkPad X22/X23/X24 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP 4c5a Radeon Mobility M6 LZ + # Update: Add M9 to product name + 4c64 Radeon R250 Ld [Radeon Mobility 9000 M9] + # Update: Add M9 to product name + 4c65 Radeon R250 Le [Radeon Mobility 9000 M9] + # Update: Add M9 to product name + 4c66 Radeon R250 Lf [Radeon Mobility 9000 M9] + # Update: Add M9 to product name + 4c67 Radeon R250 Lg [Radeon Mobility 9000 M9] 4d46 Rage Mobility M4 AGP 4d4c Rage Mobility M4 AGP + 4e44 Radeon R300 ND [Radeon 9700 Pro] + 4e45 Radeon R300 NE [Radeon 9500 Pro] + 1002 0002 Radeon R300 NE [Radeon 9500 Pro] + 4e46 Radeon R300 NF [Radeon 9700] + # Update: This is FireGL X1, not Radeon 9700 + 4e47 Radeon R300 NG [FireGL X1] + 4e48 Radeon R350 [Radeon 9800] + 4e64 Radeon R300 [Radeon 9700 Pro] (Secondary) + 4e65 Radeon R300 [Radeon 9500 Pro] (Secondary) + 4e66 Radeon R300 [Radeon 9700] (Secondary) + 4e67 Radeon R300 [FireGL X1] (Secondary) + 4e68 Radeon R350 [Radeon 9800] (Secondary) 5041 Rage 128 PA/PRO 5042 Rage 128 PB/PRO AGP 2x 5043 Rage 128 PC/PRO AGP 4x *************** *** 289,295 **** 504d Rage 128 PM/PRO 504e Rage 128 PN/PRO AGP 2x 504f Rage 128 PO/PRO AGP 4x ! 5050 Rage 128 PP/PRO TMDS 1002 0008 Xpert 128 5051 Rage 128 PQ/PRO AGP 2x TMDS 5052 Rage 128 PR/PRO AGP 4x TMDS --- 345,351 ---- 504d Rage 128 PM/PRO 504e Rage 128 PN/PRO AGP 2x 504f Rage 128 PO/PRO AGP 4x ! 5050 Rage 128 PP/PRO TMDS [Xpert 128] 1002 0008 Xpert 128 5051 Rage 128 PQ/PRO AGP 2x TMDS 5052 Rage 128 PR/PRO AGP 4x TMDS *************** *** 299,305 **** 5056 Rage 128 PV/PRO TMDS 5057 Rage 128 PW/PRO AGP 2x TMDS 5058 Rage 128 PX/PRO AGP 4x TMDS ! 5144 Radeon QD 1002 0008 Radeon 7000/Radeon VE 1002 0009 Radeon 7000/Radeon 1002 000a Radeon 7000/Radeon --- 355,362 ---- 5056 Rage 128 PV/PRO TMDS 5057 Rage 128 PW/PRO AGP 2x TMDS 5058 Rage 128 PX/PRO AGP 4x TMDS ! # Update: This same chip is used in all 32Mb and 64Mb SDR/DDR orig Radeons, and is now known as 7200 ! 5144 Radeon R100 QD [Radeon 7200] 1002 0008 Radeon 7000/Radeon VE 1002 0009 Radeon 7000/Radeon 1002 000a Radeon 7000/Radeon *************** *** 313,346 **** 1002 028a Radeon 7000/Radeon 1002 02aa Radeon AIW 1002 053a Radeon 7000/Radeon ! 5145 Radeon QE ! 5146 Radeon QF ! 5147 Radeon QG 5148 Radeon R200 QH [Radeon 8500] ! 1002 0152 FireGL 8800 ! 1002 0172 FireGL 8700 5149 Radeon R200 QI 514a Radeon R200 QJ 514b Radeon R200 QK 514c Radeon R200 QL [Radeon 8500 LE] 1002 003a Radeon R200 QL [Radeon 8500 LE] 1002 013a Radeon 8500 ! 5157 Radeon 7500 QW 1002 013a Radeon 7500 174b 7161 Radeon RV200 QW [Radeon 7500 LE] ! 5158 Radeon 7500 QX ! 5159 Radeon VE QY 1002 000a Radeon 7000/Radeon VE 1002 0038 Radeon 7000/Radeon VE 1002 003a Radeon 7000/Radeon VE 1002 00ba Radeon 7000/Radeon VE 1002 013a Radeon 7000/Radeon VE ! 174b 7112 Radeon 7000 64M TVO ! 515a Radeon VE QZ 5168 Radeon R200 Qh 5169 Radeon R200 Qi 516a Radeon R200 Qj 516b Radeon R200 Qk 5245 Rage 128 RE/SG 1002 0008 Xpert 128 1002 0028 Rage 128 AIW --- 370,428 ---- 1002 028a Radeon 7000/Radeon 1002 02aa Radeon AIW 1002 053a Radeon 7000/Radeon ! 5145 Radeon R100 QE ! 5146 Radeon R100 QF ! 5147 Radeon R100 QG 5148 Radeon R200 QH [Radeon 8500] ! 1002 010a FireGL 8800 64Mb ! 1002 0152 FireGL 8800 128Mb ! 1002 0162 FireGL 8700 32Mb ! 1002 0172 FireGL 8700 64Mb 5149 Radeon R200 QI 514a Radeon R200 QJ 514b Radeon R200 QK 514c Radeon R200 QL [Radeon 8500 LE] 1002 003a Radeon R200 QL [Radeon 8500 LE] 1002 013a Radeon 8500 ! 148c 2026 R200 QL [Radeon 8500 Evil Master II Multi Display Edition] ! 174b 7149 Radeon R200 QL [Sapphire Radeon 8500 LE] ! # New: Radeon 9100 is basically a Radeon 8500LE branded as 9100 by Sapphire ! 514d Radeon R200 QM [Radeon 9100] ! # New: Radeon 8500LE chip ! 514e Radeon R200 QN [Radeon 8500LE] ! # New: Radeon 8500LE chip ! 514f Radeon R200 QO [Radeon 8500LE] ! 5157 Radeon RV200 QW [Radeon 7500] 1002 013a Radeon 7500 + 1458 4000 RV200 QW [RADEON 7500 PRO MAYA AR] + 148c 2024 RV200 QW [Radeon 7500LE Dual Display] + 148c 2025 RV200 QW [Radeon 7500 Evil Master Multi Display Edition] + 148c 2036 RV200 QW [Radeon 7500 PCI Dual Display] + 174b 7147 RV200 QW [Sapphire Radeon 7500LE] 174b 7161 Radeon RV200 QW [Radeon 7500 LE] ! 17af 0202 RV200 QW [Excalibur Radeon 7500LE] ! 5158 Radeon RV200 QX [Radeon 7500] ! # Update: More correct name ! 5159 Radeon RV100 QY [Radeon 7000/VE] 1002 000a Radeon 7000/Radeon VE + 1002 000b Radeon 7000 1002 0038 Radeon 7000/Radeon VE 1002 003a Radeon 7000/Radeon VE 1002 00ba Radeon 7000/Radeon VE 1002 013a Radeon 7000/Radeon VE ! 1458 4002 RV100 QY [RADEON 7000 PRO MAYA AV Series] ! 148c 2003 RV100 QY [Radeon 7000 Multi-Display Edition] ! 148c 2023 RV100 QY [Radeon 7000 Evil Master Multi-Display] ! 174b 7112 RV100 QY [Sapphire Radeon VE 7000] ! 1787 0202 RV100 QY [Excalibur Radeon 7000] ! # Update: More correct name ! 515a Radeon RV100 QZ [Radeon 7000/VE] 5168 Radeon R200 Qh 5169 Radeon R200 Qi 516a Radeon R200 Qj 516b Radeon R200 Qk + # new: This one is not in ATI documentation, but is in XFree86 source code + 516c Radeon R200 Ql 5245 Rage 128 RE/SG 1002 0008 Xpert 128 1002 0028 Rage 128 AIW *************** *** 360,365 **** --- 442,448 ---- 1002 0088 Xpert 99 5345 Rage 128 SE/4x 5346 Rage 128 SF/4x AGP 2x + 1002 0048 RAGE 128 16MB VGA TVOUT AMC PAL 5347 Rage 128 SG/4x AGP 4x 5348 Rage 128 SH 534b Rage 128 SK/4x *************** *** 390,395 **** --- 473,481 ---- 1002 5654 Mach64VT Reference 5655 264VT3 [Mach64 VT3] 5656 264VT4 [Mach64 VT4] + 700f PCI Bridge [IGP 320M] + 7010 PCI Bridge [IGP 340M] + cab2 RS200/RS200M AGP Bridge [IGP 340M] 1003 ULSI Systems 0201 US201 1004 VLSI Technology Inc *************** *** 419,425 **** --- 505,514 ---- 1004 0306 QSound ThunderBird PCI Audio Support Registers 122d 1208 DSP368 Audio Support Registers 1483 5022 XWave Thunder 3D Audio Support Registers + 0307 Thunderbird + 0308 Thunderbird 0702 VAS96011 [Golden Gate II] + 0703 Tollgate 1005 Avance Logic Inc. [ALI] 2064 ALG2032/2064 2128 ALG2364A *************** *** 492,504 **** 0014 DECchip 21041 [Tulip Pass 3] 1186 0100 DE-530+ 0016 DGLPB [OPPO] 0019 DECchip 21142/43 1011 500a DE500A Fast Ethernet 1011 500b DE500B Fast Ethernet 1014 0001 10/100 EtherJet Cardbus 1025 0315 ALN315 Fast Ethernet ! 1033 800c PC-9821-CS01 ! 1033 800d PC-9821NR-B06 108d 0016 Rapidfire 2327 10/100 Ethernet 108d 0017 GoCard 2250 Ethernet 10/100 Cardbus 10b8 2005 SMC8032DT Extreme Ethernet 10/100 --- 581,594 ---- 0014 DECchip 21041 [Tulip Pass 3] 1186 0100 DE-530+ 0016 DGLPB [OPPO] + 0017 PV-PCI Graphics Controller (ZLXp-L) 0019 DECchip 21142/43 1011 500a DE500A Fast Ethernet 1011 500b DE500B Fast Ethernet 1014 0001 10/100 EtherJet Cardbus 1025 0315 ALN315 Fast Ethernet ! 1033 800c PC-9821-CS01 100BASE-TX Interface Card ! 1033 800d PC-9821NR-B06 100BASE-TX Interface Card 108d 0016 Rapidfire 2327 10/100 Ethernet 108d 0017 GoCard 2250 Ethernet 10/100 Cardbus 10b8 2005 SMC8032DT Extreme Ethernet 10/100 *************** *** 522,527 **** --- 612,618 ---- 1374 0002 Cardbus Ethernet Card 10/100 1374 0007 Cardbus Ethernet Card 10/100 1374 0008 Cardbus Ethernet Card 10/100 + 1385 2100 FA510 1395 0001 10/100 Ethernet CardBus PC Card 13d1 ab01 EtherFast 10/100 Cardbus (PCMPC200) 8086 0001 EtherExpress PRO/100 Mobile CardBus 32 *************** *** 581,588 **** 1014 1010 CS4610 SoundFusion Audio Accelerator 6003 CS 4614/22/24 [CrystalClear SoundFusion Audio Accelerator] 1013 4280 Crystal SoundFusion PCI Audio Accelerator ! 1681 0050 Hercules Game Theater XP ! 1681 a011 Hercules Fortissimo III 7.1 6004 CS 4614/22/24 [CrystalClear SoundFusion Audio Accelerator] 6005 Crystal CS4281 PCI Audio 1013 4281 Crystal CS4281 PCI Audio --- 672,679 ---- 1014 1010 CS4610 SoundFusion Audio Accelerator 6003 CS 4614/22/24 [CrystalClear SoundFusion Audio Accelerator] 1013 4280 Crystal SoundFusion PCI Audio Accelerator ! 1681 0050 Game Theater XP ! 1681 a011 Fortissimo III 7.1 6004 CS 4614/22/24 [CrystalClear SoundFusion Audio Accelerator] 6005 Crystal CS4281 PCI Audio 1013 4281 Crystal CS4281 PCI Audio *************** *** 608,614 **** 0020 MCA 0022 IBM27-82351 002d Python ! 002e ServeRAID-3x 0036 Miami 003a CPU to PCI Bridge 003e 16/4 Token ring UTP/STP controller --- 699,707 ---- 0020 MCA 0022 IBM27-82351 002d Python ! 002e ServeRAID Controller ! 1014 002e ServeRAID-3x ! 1014 022e ServeRAID-4H 0036 Miami 003a CPU to PCI Bridge 003e 16/4 Token ring UTP/STP controller *************** *** 644,661 **** 00b7 256-bit Graphics Rasterizer [Fire GL1] 1902 00b8 Fire GL1 00be ATM 622MBPS Controller (1410be00) 00fc CPC710 Dual Bridge and Memory Controller (PCI-64) 0105 CPC710 Dual Bridge and Memory Controller (PCI-32) 0142 Yotta Video Compositor Input 1014 0143 Yotta Input Controller (ytin) 0144 Yotta Video Compositor Output 1014 0145 Yotta Output Controller (ytout) 0156 405GP PLB to PCI Bridge 01a7 PCI-X to PCI-X Bridge ! 01bd Netfinity ServeRAID controller ! 01be ServeRAID-4M ! 01bf ServeRAID-4L ! 022e ServeRAID-4H ffff MPIC-2 interrupt controller 1015 LSI Logic Corp of Canada 1016 ICL Personal Systems --- 737,761 ---- 00b7 256-bit Graphics Rasterizer [Fire GL1] 1902 00b8 Fire GL1 00be ATM 622MBPS Controller (1410be00) + 00dc Advanced Systems Management Adapter (ASMA) 00fc CPC710 Dual Bridge and Memory Controller (PCI-64) 0105 CPC710 Dual Bridge and Memory Controller (PCI-32) + 010f Remote Supervisor Adapter (RSA) 0142 Yotta Video Compositor Input 1014 0143 Yotta Input Controller (ytin) 0144 Yotta Video Compositor Output 1014 0145 Yotta Output Controller (ytout) 0156 405GP PLB to PCI Bridge 01a7 PCI-X to PCI-X Bridge ! 01bd ServeRAID Controller ! 1014 01be ServeRAID-4M ! 1014 01bf ServeRAID-4L ! 1014 0208 ServeRAID-4Mx ! 1014 020e ServeRAID-4Lx ! 1014 022e ServeRAID-4H ! 1014 0258 ServeRAID-5i ! 1014 0259 ServeRAID-5i ! 0302 XA-32 chipset [Summit] ffff MPIC-2 interrupt controller 1015 LSI Logic Corp of Canada 1016 ICL Personal Systems *************** *** 700,706 **** 1020 Hitachi Computer Products 1021 OKI Electric Industry Co. Ltd. 1022 Advanced Micro Devices [AMD] ! 2000 79c970 [PCnet LANCE] 1014 2000 NetFinity 10/100 Fast Ethernet 103c 104c Ethernet with LAN remote power Adapter 103c 1064 Ethernet with LAN remote power Adapter --- 800,810 ---- 1020 Hitachi Computer Products 1021 OKI Electric Industry Co. Ltd. 1022 Advanced Micro Devices [AMD] ! 1100 K8 NorthBridge ! 1101 K8 NorthBridge ! 1102 K8 NorthBridge ! 1103 K8 NorthBridge ! 2000 79c970 [PCnet32 LANCE] 1014 2000 NetFinity 10/100 Fast Ethernet 103c 104c Ethernet with LAN remote power Adapter 103c 1064 Ethernet with LAN remote power Adapter *************** *** 743,761 **** 7443 AMD-768 [Opus] ACPI 1043 8044 A7M-D Mainboard 7445 AMD-768 [Opus] Audio 7448 AMD-768 [Opus] PCI 7449 AMD-768 [Opus] USB 7454 AMD-8151 System Controller 7455 AMD-8151 AGP Bridge 7460 AMD-8111 PCI 7461 AMD-8111 USB 7462 AMD-8111 Ethernet 7468 AMD-8111 LPC 7469 AMD-8111 IDE 746a AMD-8111 SMBus 2.0 746b AMD-8111 ACPI 746d AMD-8111 AC97 Audio ! 756b AMD-8111 ACPI 1023 Trident Microsystems 0194 82C194 2000 4DWave DX --- 847,869 ---- 7443 AMD-768 [Opus] ACPI 1043 8044 A7M-D Mainboard 7445 AMD-768 [Opus] Audio + 7446 AMD-768 [Opus] MC97 Modem (Smart Link HAMR5600 compatible) 7448 AMD-768 [Opus] PCI 7449 AMD-768 [Opus] USB + 7450 AMD-8131 PCI-X Bridge + 7451 AMD-8131 PCI-X APIC 7454 AMD-8151 System Controller 7455 AMD-8151 AGP Bridge 7460 AMD-8111 PCI 7461 AMD-8111 USB 7462 AMD-8111 Ethernet + 7464 AMD-8111 USB 7468 AMD-8111 LPC 7469 AMD-8111 IDE 746a AMD-8111 SMBus 2.0 746b AMD-8111 ACPI 746d AMD-8111 AC97 Audio ! 746e AMD-8111 MC97 Modem 1023 Trident Microsystems 0194 82C194 2000 4DWave DX *************** *** 768,773 **** --- 876,883 ---- 8520 CyberBlade i1 0e11 b16e CyberBlade i1 AGP 1023 8520 CyberBlade i1 AGP + 8620 CyberBlade/i1 + 1014 0502 ThinkPad T30 8820 CyberBlade XPAi1 9320 TGUI 9320 9350 GUI Accelerator *************** *** 876,888 **** 1028 00d0 PowerEdge Expandable RAID Controller 3/Si 0005 PowerEdge Expandable RAID Controller 3/Di 0006 PowerEdge Expandable RAID Controller 3/Di ! 0007 Remote Assistant Card 3 ! 0008 PowerEdge Expandable RAID Controller 3/Di 000a PowerEdge Expandable RAID Controller 3 - 1027 0121 PowerEdge Expandable RAID Controller 3/Di 1028 0106 PowerEdge Expandable RAID Controller 3/Di 1028 011b PowerEdge Expandable RAID Controller 3/Di ! 000c Embedded Systems Management Device 4 000e PowerEdge Expandable RAID Controller 000f PowerEdge Expandable RAID Controller 4/Di 1029 Siemens Nixdorf IS --- 986,1000 ---- 1028 00d0 PowerEdge Expandable RAID Controller 3/Si 0005 PowerEdge Expandable RAID Controller 3/Di 0006 PowerEdge Expandable RAID Controller 3/Di ! 0007 Remote Access Controller:DRAC III ! 0008 Remote Access Controller ! 0009 BMC/SMIC device not present 000a PowerEdge Expandable RAID Controller 3 1028 0106 PowerEdge Expandable RAID Controller 3/Di 1028 011b PowerEdge Expandable RAID Controller 3/Di ! 1028 0121 PowerEdge Expandable RAID Controller 3/Di ! 000c Remote Access Controller:ERA or ERA/O ! 000d BMC/SMIC device 000e PowerEdge Expandable RAID Controller 000f PowerEdge Expandable RAID Controller 4/Di 1029 Siemens Nixdorf IS *************** *** 892,900 **** --- 1004,1014 ---- 102b Matrox Graphics, Inc. # DJ: I've a suspicion that 0010 is a duplicate of 0d10. 0010 MGA-I [Impression?] + 0100 MGA 1064SG [Mystique] 0518 MGA-II [Athena] 0519 MGA 2064W [Millennium] 051a MGA 1064SG [Mystique] + 102b 0100 MGA-1064SG Mystique 102b 1100 MGA-1084SG Mystique 102b 1200 MGA-1084SG Mystique 1100 102b MGA-1084SG Mystique *************** *** 989,998 **** 102b 5f52 4Sight II 102b 9010 Millennium G400 Dual Head 1458 0400 GA-G400 ! 1705 0001 Digital First Millennium G450 32MB SGRAM ! 1705 0002 Digital First Millennium G450 16MB SGRAM ! 1705 0003 Digital First Millennium G450 32MB ! 1705 0004 Digital First Millennium G450 16MB b16f 0e11 MGA-G400 AGP 0527 MGA Parhelia AGP 102b 0840 Parhelia 128Mb --- 1103,1112 ---- 102b 5f52 4Sight II 102b 9010 Millennium G400 Dual Head 1458 0400 GA-G400 ! 1705 0001 Millennium G450 32MB SGRAM ! 1705 0002 Millennium G450 16MB SGRAM ! 1705 0003 Millennium G450 32MB ! 1705 0004 Millennium G450 16MB b16f 0e11 MGA-G400 AGP 0527 MGA Parhelia AGP 102b 0840 Parhelia 128Mb *************** *** 1037,1042 **** --- 1151,1157 ---- 0009 r4x00 0020 ATM Meteor 155 102f 00f8 ATM Meteor 155 + 0180 TX4927 1030 TMC Research 1031 Miro Computer Products AG 5601 DC20 ASIC *************** *** 1050,1066 **** 0003 ATM Controller 0004 R4000 PCI Bridge 0005 PCI to 486-like bus Bridge ! 0006 GUI Accelerator 0007 PCI to UX-Bus Bridge ! 0008 GUI Accelerator ! 0009 GUI Accelerator for W98 001a [Nile II] 0021 Vrc4373 [Nile I] 0029 PowerVR PCX1 002a PowerVR 3D 0035 USB 1179 0001 USB 12ee 7000 Root Hub 003e NAPCCARD Cardbus Controller 0046 PowerVR PCX2 [midas] 005a Vrc5074 [Nile 4] --- 1165,1186 ---- 0003 ATM Controller 0004 R4000 PCI Bridge 0005 PCI to 486-like bus Bridge ! 0006 PC-9800 Graphic Accelerator 0007 PCI to UX-Bus Bridge ! 0008 PC-9800 Graphic Accelerator ! 0009 PCI to PC9800 Core-Graph Bridge ! 0016 PCI to VL Bridge 001a [Nile II] 0021 Vrc4373 [Nile I] 0029 PowerVR PCX1 002a PowerVR 3D + 002c Star Alpha 2 + 002d PCI to C-bus Bridge 0035 USB 1179 0001 USB 12ee 7000 Root Hub + 1799 0001 Root Hub + 003b PCI to C-bus Bridge 003e NAPCCARD Cardbus Controller 0046 PowerVR PCX2 [midas] 005a Vrc5074 [Nile 4] *************** *** 1077,1087 **** --- 1197,1209 ---- 0074 56k Voice Modem 1033 8014 RCV56ACF 56k Voice Modem 009b Vrc5476 + 00a5 VRC4173 00a6 VRC5477 AC97 00cd IEEE 1394 [OrangeLink] Host Controller 12ee 8011 Root hub 00e0 USB 2.0 12ee 7001 Root hub + 1799 0002 Root Hub 1034 Framatome Connectors USA Inc. 1035 Comp. & Comm. Research Lab 1036 Future Domain Corp. *************** *** 1089,1095 **** 1037 Hitachi Micro Systems 1038 AMP, Inc 1039 Silicon Integrated Systems [SiS] ! 0001 5591/5592 AGP 0002 SG86C202 0006 85C501/2/3 0008 85C503/5513 --- 1211,1218 ---- 1037 Hitachi Micro Systems 1038 AMP, Inc 1039 Silicon Integrated Systems [SiS] ! # This is what all my tests report. I don't know if this is equivalent to "5591/5592 AGP". ! 0001 SiS 530 Virtual PCI-to-PCI bridge (AGP) 0002 SG86C202 0006 85C501/2/3 0008 85C503/5513 *************** *** 1099,1106 **** 1039 0000 SiS5597 SVGA (Shared RAM) 0204 82C204 0205 SG86C205 ! 0300 300/200 107d 2720 Leadtek WinFast VR300 0406 85C501/2 0496 85C496 0530 530 Host --- 1222,1233 ---- 1039 0000 SiS5597 SVGA (Shared RAM) 0204 82C204 0205 SG86C205 ! 0300 SiS300/305 PCI/AGP VGA Display Adapter 107d 2720 Leadtek WinFast VR300 + 0310 SiS315H PCI/AGP VGA Display Adapter + 0315 SiS315 PCI/AGP VGA Display Adapter + 0325 SiS315PRO PCI/AGP VGA Display Adapter + 0330 SiS330 [Xabre] PCI/AGP VGA Display Adapter 0406 85C501/2 0496 85C496 0530 530 Host *************** *** 1111,1134 **** 0630 630 Host 0633 633 Host 0635 635 Host ! 0645 645 Host ! 0646 645DX Host 0650 650 Host 0730 730 Host 0733 733 Host 0735 735 Host 0740 740 Host 0745 745 Host 0746 746 Host 0900 SiS900 10/100 Ethernet 1039 0900 SiS900 10/100 Ethernet Adapter 0961 SiS961 [MuTIOL Media IO] 3602 83C602 5107 5107 5300 SiS540 PCI Display Adapter 5401 486 PCI Chipset 5511 5511/5512 5513 5513 [IDE] 1039 5513 SiS5513 EIDE Controller (A,B step) 5517 5517 5571 5571 --- 1238,1267 ---- 0630 630 Host 0633 633 Host 0635 635 Host ! 0645 SiS645 Host & Memory & AGP Controller ! 0646 SiS645DX Host & Memory & AGP Controller ! 0648 SiS 645xx 0650 650 Host + 0651 SiS651 Host 0730 730 Host 0733 733 Host 0735 735 Host 0740 740 Host 0745 745 Host 0746 746 Host + 0755 SiS 755 Host Bridge 0900 SiS900 10/100 Ethernet 1039 0900 SiS900 10/100 Ethernet Adapter 0961 SiS961 [MuTIOL Media IO] + 0962 SiS962 [MuTIOL Media IO] 3602 83C602 5107 5107 5300 SiS540 PCI Display Adapter + 5315 SiS550 AGP/VGA VGA Display Adapter 5401 486 PCI Chipset 5511 5511/5512 5513 5513 [IDE] + 1019 0970 P6STP-FL motherboard 1039 5513 SiS5513 EIDE Controller (A,B step) 5517 5517 5571 5571 *************** *** 1142,1149 **** 6205 VGA Controller 6236 6236 3D-AGP 6300 SiS630 GUI Accelerator+3D ! 6306 6306 3D-AGP 1039 6306 SiS530,620 GUI Accelerator+3D 6326 86C326 5598/6326 1039 6326 SiS6326 GUI Accelerator 1092 0a50 SpeedStar A50 --- 1275,1284 ---- 6205 VGA Controller 6236 6236 3D-AGP 6300 SiS630 GUI Accelerator+3D ! 1019 0970 P6STP-FL motherboard ! 6306 SiS530 3D PCI/AGP 1039 6306 SiS530,620 GUI Accelerator+3D + 6325 SiS65x/M650/740 PCI/AGP VGA Display Adapter 6326 86C326 5598/6326 1039 6326 SiS6326 GUI Accelerator 1092 0a50 SpeedStar A50 *************** *** 1151,1161 **** 1092 4910 SpeedStar A70 1092 4920 SpeedStar A70 1569 6326 SiS6326 GUI Accelerator ! 7001 7001 7007 FireWire Controller ! 7012 SiS7012 PCI Audio Accelerator ! 7013 56k Winmodem (Smart Link HAMR5600 compatible) ! 7016 SiS7016 10/100 Ethernet Adapter 1039 7016 SiS7016 10/100 Ethernet Adapter 7018 SiS PCI Audio Accelerator 1014 01b6 SiS PCI Audio Accelerator --- 1286,1299 ---- 1092 4910 SpeedStar A70 1092 4920 SpeedStar A70 1569 6326 SiS6326 GUI Accelerator ! 7001 USB 1.0 Controller ! 1039 7000 Onboard USB Controller ! 7002 USB 2.0 Controller ! 1509 7002 Onboard USB Controller 7007 FireWire Controller ! 7012 Sound Controller ! 7013 Intel 537 [56k Winmodem] ! 7016 10/100 Ethernet Adapter 1039 7016 SiS7016 10/100 Ethernet Adapter 7018 SiS PCI Audio Accelerator 1014 01b6 SiS PCI Audio Accelerator *************** *** 1212,1217 **** --- 1350,1356 ---- 103c 1226 Keystone SP2 103c 1227 Powerbar SP2 103c 1282 Everest SP2 + 1054 PCI Local Bus Adapter 1064 79C970 PCnet Ethernet Controller 108b Visualize FXe 10c1 NetServer Smart IRQ Router *************** *** 1223,1229 **** 121c NetServer PCI COM Port Decoder 1229 zx1 System Bus Adapter 122a zx1 I/O Controller ! 122e zx1 Local Bus Adapter 1290 Auxiliary Diva Serial Port 2910 E2910A PCIBus Exerciser 2925 E2925A 32 Bit, 33 MHzPCI Exerciser & Analyzer --- 1362,1369 ---- 121c NetServer PCI COM Port Decoder 1229 zx1 System Bus Adapter 122a zx1 I/O Controller ! 122e PCI-X/AGP Local Bus Adapter ! 127c sx1000 I/O Controller 1290 Auxiliary Diva Serial Port 2910 E2910A PCIBus Exerciser 2925 E2925A 32 Bit, 33 MHzPCI Exerciser & Analyzer *************** *** 1232,1244 **** 1040 Accelgraphics Inc. 1041 Computrend 1042 Micron ! 1000 FDC 37C665 ! 1001 37C922 3000 Samurai_0 3010 Samurai_1 3020 Samurai_IDE 1043 Asustek Computer, Inc. 0675 ISDNLink P-IN100-ST-D 4057 V8200 GeForce 3 1044 Distributed Processing Technology 1012 Domino RAID Engine --- 1372,1385 ---- 1040 Accelgraphics Inc. 1041 Computrend 1042 Micron ! 1000 PC Tech RZ1000 ! 1001 PC Tech RZ1001 3000 Samurai_0 3010 Samurai_1 3020 Samurai_IDE 1043 Asustek Computer, Inc. 0675 ISDNLink P-IN100-ST-D + 4021 v7100 Combo Deluxe [GeForce2 MX + TV tuner] 4057 V8200 GeForce 3 1044 Distributed Processing Technology 1012 Domino RAID Engine *************** *** 1314,1319 **** --- 1455,1463 ---- 104a SGS Thomson Microelectronics 0008 STG 2000X 0009 STG 1764X + 0010 STG4000 [3D Prophet Kyro Series] + # From + 0210 STPC Atlas ISA Bridge 0981 DEC-Tulip compatible 10/100 Ethernet 1746 STG 1764X 2774 DEC-Tulip compatible 10/100 Ethernet *************** *** 1326,1331 **** --- 1470,1476 ---- 0500 100 MBit LAN Controller 0508 TMS380C2X Compressor Interface 1000 Eagle i/f AS + 104c PCI1510 PC card Cardbus Controller 3d04 TVP4010 [Permedia] 3d07 TVP4020 [Permedia 2] 1011 4d10 Comet *************** *** 1369,1377 **** --- 1514,1525 ---- 8026 TSB43AB21 IEEE-1394a-2000 Controller (PHY/Link) 8027 PCI4451 IEEE-1394 Controller 1028 00e6 PCI4451 IEEE-1394 Controller (Dell Inspiron 8100) + 8029 PCI4510 IEEE-1394 Controller + 8400 ACX 100 22Mbps Wireless Interface a001 TDC1570 a100 TDC1561 a102 TNETA1575 HyperSAR Plus w/PCI Host i/f & UTOPIA i/f + a106 TMS320C6205 ac10 PCI1050 ac11 PCI1053 ac12 PCI1130 *************** *** 1383,1388 **** --- 1531,1537 ---- ac19 PCI1221 ac1a PCI1210 ac1b PCI1450 + 0e11 b113 Armada M700 ac1c PCI1225 ac1d PCI1251A ac1e PCI1211 *************** *** 1397,1402 **** --- 1546,1552 ---- ac41 PCI4410 PC card Cardbus Controller ac42 PCI4451 PC card Cardbus Controller 1028 00e6 PCI4451 PC card CardBus Controller (Dell Inspiron 8100) + ac44 PCI4510 PC card Cardbus Controller ac50 PCI1410 PC card Cardbus Controller ac51 PCI1420 1014 023b ThinkPad T23 (2647-4MG) *************** *** 1405,1410 **** --- 1555,1562 ---- ac52 PCI1451 PC card Cardbus Controller ac53 PCI1421 PC card Cardbus Controller ac55 PCI1250 PC card Cardbus Controller + 1014 0512 ThinkPad T30 + ac56 PCI1510 PC card Cardbus Controller ac60 PCI2040 PCI to DSP Bridge Controller fe00 FireWire Host Controller fe03 12C01A FireWire Host Controller *************** *** 1430,1435 **** --- 1582,1588 ---- 1050 0840 W89C840 Ethernet Adapter 0940 W89C940 5a5a W89C940F + 6692 W6692 9970 W9970CF 1051 Anigma, Inc. 1052 ?Young Micro Systems *************** *** 1446,1451 **** --- 1599,1606 ---- 0001 MPC105 [Eagle] 0002 MPC106 [Grackle] 0003 MPC8240 [Kahlua] + 0004 MPC107 + 0006 MPC8245 [Unity] 0100 MC145575 [HFC-PCI] 0431 KTI829c 100VG 1801 Audio I/O Controller (MIDI) *************** *** 1483,1488 **** --- 1638,1645 ---- 0d38 20263 105a 4d39 Fasttrak66 1275 20275 + 3376 PDC20376 + 1043 809e A7V8X motherboard 4d30 20267 105a 4d33 Ultra100 105a 4d39 Fasttrak100 *************** *** 1495,1506 **** 4d68 20268 105a 4d68 Ultra100TX2 4d69 20269 5275 PDC20276 IDE 105a 0275 SuperTrak SX6000 IDE 5300 DC5300 6268 20268R 6269 PDC20271 ! 105a 6269 Fasttrack tx2 7275 PDC20277 105b Foxconn International, Inc. 105c Wipro Infotech Limited --- 1652,1665 ---- 4d68 20268 105a 4d68 Ultra100TX2 4d69 20269 + 105a 4d68 Ultra133TX2 5275 PDC20276 IDE 105a 0275 SuperTrak SX6000 IDE 5300 DC5300 6268 20268R 6269 PDC20271 ! 105a 6269 FastTrak TX2/TX2000 ! 6621 PDC20621 [SX4000] 4 Channel IDE RAID Controller 7275 PDC20277 105b Foxconn International, Inc. 105c Wipro Infotech Limited *************** *** 1538,1543 **** --- 1697,1703 ---- 13cc 0009 Barco Metheus 5 Megapixel, Dual Head 13cc 000a Barco Metheus 5 Megapixel, Dual Head 5348 Revolution 4 + 105d 0037 Revolution IV-FP AGP (For SGI 1600SW) 105e Vtech Computers Ltd 105f Infotronic America Inc 1060 United Microelectronics [UMC] *************** *** 1615,1620 **** --- 1775,1785 ---- 002e UniNorth 1.5 PCI 002f UniNorth 1.5 Internal PCI 0030 UniNorth/Pangea FireWire + 0031 UniNorth 2 FireWire + 0032 UniNorth 2 GMAC (Sun GEM) + 0033 UniNorth 2 ATA/100 + 0034 UniNorth 2 AGP + 1645 Tigon3 Gigabit Ethernet NIC (BCM5701) 106c Hyundai Electronics America 8801 Dual Pentium ISA/PCI Motherboard 8802 PowerPC ISA/PCI Motherboard *************** *** 1671,1676 **** --- 1836,1842 ---- 2100 QLA2100 64-bit Fibre Channel Adapter 1077 0001 QLA2100 64-bit Fibre Channel Adapter 2200 QLA2200 + 1077 0002 QLA2200 2300 QLA2300 64-bit FC-AL Adapter 2312 QLA2312 Fibre Channel Adapter 1078 Cyrix Corporation *************** *** 1726,1732 **** 1087 Cache Computer 1088 Microcomputer Systems (M) Son 1089 Data General Corporation ! 108a SBS Technologies (formerly Bit3 Computer Corp.) 0001 VME Bridge Model 617 0010 VME Bridge Model 618 0040 dataBLIZZARD --- 1892,1899 ---- 1087 Cache Computer 1088 Microcomputer Systems (M) Son 1089 Data General Corporation ! # Formerly Bit3 Computer Corp. ! 108a SBS Technologies 0001 VME Bridge Model 617 0010 VME Bridge Model 618 0040 dataBLIZZARD *************** *** 1818,1825 **** --- 1985,1994 ---- b081 IMAQ-PXI-1422 b091 IMAQ-PXI-1411 c801 PCI-GPIB + c831 PCI-GPIB bridge 1094 First International Computers [FIC] 1095 CMD Technology Inc + 0240 Adaptec AAR-1210SA SATA HostRAID Controller 0640 PCI0640 0643 PCI0643 0646 PCI0646 *************** *** 1834,1839 **** --- 2003,2009 ---- 1095 0670 USB0670 0673 USB0673 0680 PCI0680 + 3112 Silicon Image SiI 3112 SATARaid Controller 1096 Alacron 1097 Appian Technology 1098 Quantum Designs (H.K.) Ltd *************** *** 1853,1860 **** 036c Bt879(??) Video Capture 13e9 0070 Win/TV (Video Section) 036e Bt878 Video Capture ! 0070 13eb WinTV/GO 0070 ff01 Viewcast Osprey 200 11bd 001c PCTV Sat (DBC receiver) 127a 0001 Bt878 Mediastream Controller NTSC 127a 0002 Bt878 Mediastream Controller PAL BG --- 2023,2032 ---- 036c Bt879(??) Video Capture 13e9 0070 Win/TV (Video Section) 036e Bt878 Video Capture ! 0070 13eb WinTV Series 0070 ff01 Viewcast Osprey 200 + 107d 6606 WinFast TV 2000 + 11bd 0012 PCTV pro (TV + FM stereo receiver) 11bd 001c PCTV Sat (DBC receiver) 127a 0001 Bt878 Mediastream Controller NTSC 127a 0002 Bt878 Mediastream Controller PAL BG *************** *** 1869,1874 **** --- 2041,2047 ---- 1851 1850 FlyVideo'98 - Video 1851 1851 FlyVideo II 1852 1852 FlyVideo'98 - Video (with FM Tuner) + bd11 1200 PCTV pro (TV + FM stereo receiver) 036f Bt879 Video Capture 127a 0044 Bt879 Video Capture NTSC 127a 0122 Bt879 Video Capture PAL I *************** *** 1904,1913 **** 1851 1851 FlyVideo'98 EZ - video 1852 1852 FlyVideo'98 (with FM Tuner) 0878 Bt878 Audio Capture ! 0070 13eb WinTV/GO 0070 ff01 Viewcast Osprey 200 1002 0001 TV-Wonder 1002 0003 TV-Wonder/VE 11bd 001c PCTV Sat (DBC receiver) 127a 0001 Bt878 Video Capture (Audio Section) 127a 0002 Bt878 Video Capture (Audio Section) --- 2077,2087 ---- 1851 1851 FlyVideo'98 EZ - video 1852 1852 FlyVideo'98 (with FM Tuner) 0878 Bt878 Audio Capture ! 0070 13eb WinTV Series 0070 ff01 Viewcast Osprey 200 1002 0001 TV-Wonder 1002 0003 TV-Wonder/VE + 11bd 0012 PCTV pro (TV + FM stereo receiver, audio section) 11bd 001c PCTV Sat (DBC receiver) 127a 0001 Bt878 Video Capture (Audio Section) 127a 0002 Bt878 Video Capture (Audio Section) *************** *** 1920,1925 **** --- 2094,2100 ---- 14f1 0002 Bt878 Video Capture (Audio Section) 14f1 0003 Bt878 Video Capture (Audio Section) 14f1 0048 Bt878 Video Capture (Audio Section) + bd11 1200 PCTV pro (TV + FM stereo receiver, audio section) 0879 Bt879 Audio Capture 127a 0044 Bt879 Video Capture (Audio Section) 127a 0122 Bt879 Video Capture (Audio Section) *************** *** 1961,1967 **** 10a2 Quantum Corporation 10a3 Everex Systems Inc 10a4 Globe Manufacturing Sales ! 10a5 Racal Interlan 10a6 Informtech Industrial Ltd. 10a7 Benchmarq Microelectronics 10a8 Sierra Semiconductor --- 2136,2144 ---- 10a2 Quantum Corporation 10a3 Everex Systems Inc 10a4 Globe Manufacturing Sales ! 10a5 Smart Link Ltd. ! 3052 SmartPCI562 56K Modem ! 5449 SmartPCI561 modem 10a6 Informtech Industrial Ltd. 10a7 Benchmarq Microelectronics 10a8 Sierra Semiconductor *************** *** 1976,1981 **** --- 2153,2159 ---- 0007 RPCEX 0008 DiVO VIP 0009 Alteon Gigabit Ethernet + 10a9 8002 Acenic Gigabit Ethernet 0010 AMP Video I/O 0011 GRIP 0012 SGH PSHAC GSN *************** *** 1987,1992 **** --- 2165,2171 ---- 1006 Dual JPEG 4 1007 Dual JPEG 5 1008 Cesium + 100a IOC4 I/O controller 2001 Fibre Channel 2002 ASDE 8001 O2 1394 *************** *** 2027,2033 **** --- 2206,2214 ---- 15ed 1003 MCCS 16-port Serial Hot Swap 9036 9036 9050 PCI <-> IOBus Bridge + 10b5 2036 SatPak GPS 10b5 2273 SH-ARC SoHard ARCnet card + 10b5 9050 MP9050 1522 0001 RockForce 4 Port V.90 Data/Fax/Voice Modem 1522 0002 RockForce 2 Port V.90 Data/Fax/Voice Modem 1522 0003 RockForce 6 Port V.90 Data/Fax/Voice Modem *************** *** 2038,2043 **** --- 2219,2225 ---- 15ed 1001 Macrolink MCCS 16-port Serial 15ed 1002 Macrolink MCCS 8-port Serial Hot Swap 15ed 1003 Macrolink MCCS 16-port Serial Hot Swap + 5654 5634 OpenLine4 Telephony Card d531 c002 PCIntelliCAN 2xSJA1000 CAN bus d84d 4006 EX-4006 1P d84d 4008 EX-4008 1P EPP/ECP *************** *** 2058,2063 **** --- 2240,2246 ---- d84d 4078 EX-4078 2S(16C552) RS-232+1P 9054 PCI <-> IOBus Bridge 10b5 2455 Wessex Techology PHIL-PCI + 12d9 0002 PCI Prosody Card rev 1.5 9060 9060 906d 9060SD 125c 0640 Aries 16000P *************** *** 2065,2072 **** 9080 9080 10b5 9080 9080 [real subsystem ID not set] 129d 0002 Aculab PCI Prosidy card ! a001 GTEK Jetport II 2 port serial adaptor ! c001 GTEK Cyclone 16/32 port serial adaptor 10b6 Madge Networks 0001 Smart 16/4 PCI Ringnode 0002 Smart 16/4 PCI Ringnode Mk2 --- 2248,2254 ---- 9080 9080 10b5 9080 9080 [real subsystem ID not set] 129d 0002 Aculab PCI Prosidy card ! 12d9 0002 PCI Prosody Card 10b6 Madge Networks 0001 Smart 16/4 PCI Ringnode 0002 Smart 16/4 PCI Ringnode Mk2 *************** *** 2094,2099 **** --- 2276,2282 ---- 1001 Collage 155 ATM Server Adapter 10b7 3Com Corporation 0001 3c985 1000BaseSX (SX/TX) + 0910 3C910-A01 1006 MINI PCI type 3B Data Fax Modem 1007 Mini PCI 56k Winmodem 10b7 615c Mini PCI 56K Modem *************** *** 2172,2190 **** 1028 0095 Integrated 3C905C-TX Fast Etherlink for PC Management NIC 10b7 1000 3C905C-TX Fast Etherlink for PC Management NIC 10b7 7000 10/100 Mini PCI Ethernet Adapter 9800 3c980-TX [Fast Etherlink XL Server Adapter] 10b7 9800 3c980-TX Fast Etherlink XL Server Adapter 9805 3c980-TX 10/100baseTX NIC [Python-T] 10b7 1201 3c982-TXM 10/100baseTX Dual Port A [Hydra] 10b7 1202 3c982-TXM 10/100baseTX Dual Port B [Hydra] 10b7 9805 3c980 10/100baseTX NIC [Python-T] ! 9900 3C990-TX Typhoon ! 9902 3CR990-TX-95 56-bit Typhoon Client ! 9903 3CR990-TX-97 168-bit Typhoon Client 9904 3C990B-TX-M/3C990BSVR [Typhoon2] 9905 3CR990-FX-95/97/95 [Typhon Fiber] ! 9908 3CR990SVR95 56-bit Typhoon Server ! 9909 3CR990SVR97 Typhoon Server 990b 3C990SVR [Typhoon Server] 10b8 Standard Microsystems Corp [SMC] 0005 83C170QF --- 2355,2382 ---- 1028 0095 Integrated 3C905C-TX Fast Etherlink for PC Management NIC 10b7 1000 3C905C-TX Fast Etherlink for PC Management NIC 10b7 7000 10/100 Mini PCI Ethernet Adapter + 9201 3C920B-EMB Integrated Fast Ethernet Controller + 9300 3CSOHO100B-TX [910-A01] 9800 3c980-TX [Fast Etherlink XL Server Adapter] 10b7 9800 3c980-TX Fast Etherlink XL Server Adapter 9805 3c980-TX 10/100baseTX NIC [Python-T] 10b7 1201 3c982-TXM 10/100baseTX Dual Port A [Hydra] 10b7 1202 3c982-TXM 10/100baseTX Dual Port B [Hydra] 10b7 9805 3c980 10/100baseTX NIC [Python-T] ! 10f1 2462 Thunder K7 S2462 ! 9900 3C990-TX [Typhoon] ! 9902 3CR990-TX-95 [Typhoon 56-bit] ! 9903 3CR990-TX-97 [Typhoon 168-bit] 9904 3C990B-TX-M/3C990BSVR [Typhoon2] + 10b7 1000 3CR990B-TX-M [Typhoon2] + 10b7 2000 3CR990BSVR [Typhoon2 Server] 9905 3CR990-FX-95/97/95 [Typhon Fiber] ! 10b7 1101 3CR990-FX-95 [Typhoon Fiber 56-bit] ! 10b7 1102 3CR990-FX-97 [Typhoon Fiber 168-bit] ! 10b7 2101 3CR990-FX-95 Server [Typhoon Fiber 56-bit] ! 10b7 2102 3CR990-FX-97 Server [Typhoon Fiber 168-bit] ! 9908 3CR990SVR95 [Typhoon Server 56-bit] ! 9909 3CR990SVR97 [Typhoon Server 168-bit] 990b 3C990SVR [Typhoon Server] 10b8 Standard Microsystems Corp [SMC] 0005 83C170QF *************** *** 2207,2213 **** 1001 FDC 37C922 a011 83C170QF b106 SMC34C90 ! 10b9 ALi Corporation. [ALi] 0111 C-Media CMI8738/C3DX Audio Device (OEM) 10b9 0111 C-Media CMI8738/C3DX Audio Device (OEM) 1435 M1435 --- 2399,2405 ---- 1001 FDC 37C922 a011 83C170QF b106 SMC34C90 ! 10b9 ALi Corporation 0111 C-Media CMI8738/C3DX Audio Device (OEM) 10b9 0111 C-Media CMI8738/C3DX Audio Device (OEM) 1435 M1435 *************** *** 2229,2235 **** 1541 M1541 10b9 1541 ALI M1541 Aladdin V/V+ AGP System Controller 1543 M1543 ! 1563 M1563 South Bridge supporting HT Technology 1621 M1621 1631 ALI M1631 PCI North Bridge Aladdin Pro III 1632 M1632M Northbridge+Trident --- 2421,2427 ---- 1541 M1541 10b9 1541 ALI M1541 Aladdin V/V+ AGP System Controller 1543 M1543 ! 1563 M1563 HyperTransport South Bridge 1621 M1621 1631 ALI M1631 PCI North Bridge Aladdin Pro III 1632 M1632M Northbridge+Trident *************** *** 2238,2246 **** 1646 M1646 Northbridge+Trident 1647 M1647 Northbridge [MAGiK 1 / MobileMAGiK 1] 1651 M1651/M1651T Northbridge [Aladdin-Pro 5/5M,Aladdin-Pro 5T/5TM] ! 1671 M1671 Super P4 Northbridge [AGP4X,PCI, and SDR/DDR] ! 1681 M1681 P4 Northbridge [AGP8X,HT, and SDR/DDR] ! 1687 M1687 K8 Northbridge [AGP8X and HT] 3141 M3141 3143 M3143 3145 M3145 --- 2430,2438 ---- 1646 M1646 Northbridge+Trident 1647 M1647 Northbridge [MAGiK 1 / MobileMAGiK 1] 1651 M1651/M1651T Northbridge [Aladdin-Pro 5/5M,Aladdin-Pro 5T/5TM] ! 1671 M1671 Super P4 Northbridge [AGP4X,PCI and SDR/DDR] ! 1681 M1681 P4 Northbridge [AGP8X,HyperTransport and SDR/DDR] ! 1687 M1687 K8 Northbridge [AGP8X and HyperTransport] 3141 M3141 3143 M3143 3145 M3145 *************** *** 2261,2274 **** 5239 USB 2.0 Controller 5243 M1541 PCI to AGP Controller 5247 PCI to AGP Controller ! 5249 HTT to PCI Bridge 5251 M5251 P1394 OHCI 1.0 Controller 5253 M5253 P1394 OHCI 1.1 Controller 5261 M5261 Ethernet Controller 5451 M5451 PCI AC-Link Controller Audio Device 5453 M5453 PCI AC-Link Controller Modem Device 5455 M5455 PCI AC-Link Controller Audio Device ! 5457 M5457 AC-Link Modem Interface Controller 5471 M5471 Memory Stick Controller 5473 M5473 SD-MMC Controller 7101 M7101 PMU --- 2453,2472 ---- 5239 USB 2.0 Controller 5243 M1541 PCI to AGP Controller 5247 PCI to AGP Controller ! 5249 M5249 HTT to PCI Bridge 5251 M5251 P1394 OHCI 1.0 Controller 5253 M5253 P1394 OHCI 1.1 Controller 5261 M5261 Ethernet Controller + 5450 Lucent Technologies Soft Modem AMR 5451 M5451 PCI AC-Link Controller Audio Device + 1014 0506 ThinkPad R30 5453 M5453 PCI AC-Link Controller Modem Device 5455 M5455 PCI AC-Link Controller Audio Device ! 5457 Intel 537 [M5457 AC-Link Modem] ! # Same but more usefull for driver's lookup ! 5459 SmartLink SmartPCI561 56K Modem ! # SmartLink PCI SoftModem ! 545a SmartLink SmartPCI563 56K Modem 5471 M5471 Memory Stick Controller 5473 M5473 SD-MMC Controller 7101 M7101 PMU *************** *** 2291,2297 **** 10c6 Rambus Inc. 10c7 Media Vision 10c8 Neomagic Corporation ! 0001 NM2070 [MagicGraph NM2070] 0002 NM2090 [MagicGraph 128V] 0003 NM2093 [MagicGraph 128ZV] 0004 NM2160 [MagicGraph 128XD] --- 2489,2495 ---- 10c6 Rambus Inc. 10c7 Media Vision 10c8 Neomagic Corporation ! 0001 NM2070 [MagicGraph 128] 0002 NM2090 [MagicGraph 128V] 0003 NM2093 [MagicGraph 128ZV] 0004 NM2160 [MagicGraph 128XD] *************** *** 2313,2325 **** 10f7 830b MagicGraph 128XD 10f7 830d MagicGraph 128XD 10f7 8312 MagicGraph 128XD ! 0005 [MagicMedia 256AV] 0006 NM2360 [MagicMedia 256ZX] 0016 NM2380 [MagicMedia 256XL+] 10c8 0016 MagicMedia 256XL+ ! 0025 [MagicMedia 256AV+] ! 0083 [MagicGraph 128ZV Plus] ! 8005 [MagicMedia 256AV Audio] 0e11 b0d1 MagicMedia 256AV Audio Device on Discovery 0e11 b126 MagicMedia 256AV Audio Device on Durango 1014 00dd MagicMedia 256AV Audio Device on BlackTip Thinkpad --- 2511,2524 ---- 10f7 830b MagicGraph 128XD 10f7 830d MagicGraph 128XD 10f7 8312 MagicGraph 128XD ! 0005 NM2200 [MagicGraph 256AV] ! 1014 00dd ThinkPad 570 0006 NM2360 [MagicMedia 256ZX] 0016 NM2380 [MagicMedia 256XL+] 10c8 0016 MagicMedia 256XL+ ! 0025 NM2230 [MagicGraph 256AV+] ! 0083 NM2093 [MagicGraph 128ZV+] ! 8005 NM2200 [MagicMedia 256AV Audio] 0e11 b0d1 MagicMedia 256AV Audio Device on Discovery 0e11 b126 MagicMedia 256AV Audio Device on Durango 1014 00dd MagicMedia 256AV Audio Device on BlackTip Thinkpad *************** *** 2332,2338 **** 110a 8005 MagicMedia 256AV Audio Device 14c0 0004 MagicMedia 256AV Audio Device 8006 NM2360 [MagicMedia 256ZX Audio] ! 8016 NM2360 [MagicMedia 256ZX Audio] 10c9 Dataexpert Corporation 10ca Fujitsu Microelectr., Inc. 10cb Omron Corporation --- 2531,2537 ---- 110a 8005 MagicMedia 256AV Audio Device 14c0 0004 MagicMedia 256AV Audio Device 8006 NM2360 [MagicMedia 256ZX Audio] ! 8016 NM2380 [MagicMedia 256XL+ Audio] 10c9 Dataexpert Corporation 10ca Fujitsu Microelectr., Inc. 10cb Omron Corporation *************** *** 2377,2383 **** 0008 NV1 [EDGE 3D] 0009 NV1 [EDGE 3D] 0010 NV2 [Mutara V08] ! 0020 NV4 [Riva TnT] 1043 0200 V3400 TNT 1048 0c18 Erazor II SGRAM 1048 0c1b Erazor II --- 2576,2582 ---- 0008 NV1 [EDGE 3D] 0009 NV1 [EDGE 3D] 0010 NV2 [Mutara V08] ! 0020 NV4 [RIVA TNT] 1043 0200 V3400 TNT 1048 0c18 Erazor II SGRAM 1048 0c1b Erazor II *************** *** 2394,2408 **** 1092 4914 Viper V550 1092 8225 Viper V550 10b4 273d Velocity 4400 10b4 2740 Velocity 4400 10de 0020 Riva TNT 1102 1015 Graphics Blaster CT6710 1102 1016 Graphics Blaster RIVA TNT ! 0028 NV5 [Riva TnT2] 1043 0200 AGP-V3800 SGRAM 1043 0201 AGP-V3800 SDRAM 1043 0205 PCI-V3800 1043 4000 AGP-V3800PRO 1092 4804 Viper V770 1092 4a00 Viper V770 1092 4a02 Viper V770 Ultra --- 2593,2609 ---- 1092 4914 Viper V550 1092 8225 Viper V550 10b4 273d Velocity 4400 + 10b4 273e Velocity 4400 10b4 2740 Velocity 4400 10de 0020 Riva TNT 1102 1015 Graphics Blaster CT6710 1102 1016 Graphics Blaster RIVA TNT ! 0028 NV5 [RIVA TNT2/TNT2 Pro] 1043 0200 AGP-V3800 SGRAM 1043 0201 AGP-V3800 SDRAM 1043 0205 PCI-V3800 1043 4000 AGP-V3800PRO + 1048 0c21 Synergy II 1092 4804 Viper V770 1092 4a00 Viper V770 1092 4a02 Viper V770 Ultra *************** *** 2414,2420 **** 1102 1020 3D Blaster RIVA TNT2 1102 1026 3D Blaster RIVA TNT2 Digital 14af 5810 Maxi Gamer Xentor ! 0029 NV5 [Riva TnT2 Ultra] 1043 0200 AGP-V3800 Deluxe 1043 0201 AGP-V3800 Ultra SDRAM 1043 0205 PCI-V3800 Ultra --- 2615,2621 ---- 1102 1020 3D Blaster RIVA TNT2 1102 1026 3D Blaster RIVA TNT2 Digital 14af 5810 Maxi Gamer Xentor ! 0029 NV5 [RIVA TNT2 Ultra] 1043 0200 AGP-V3800 Deluxe 1043 0201 AGP-V3800 Ultra SDRAM 1043 0205 PCI-V3800 Ultra *************** *** 2424,2439 **** 14af 5820 Maxi Gamer Xentor 32 002a NV5 [Riva TnT2] 002b NV5 [Riva TnT2] ! 002c NV6 [Vanta] 1043 0200 AGP-V3800 Combat SDRAM 1043 0201 AGP-V3800 Combat 1092 6820 Viper V730 1102 1031 CT6938 VANTA 8MB 1102 1034 CT6894 VANTA 16MB 14af 5008 Maxi Gamer Phoenix 2 ! 002d RIVA TNT2 Model 64 1043 0200 AGP-V3800M 1043 0201 AGP-V3800M 1102 1023 CT6892 RIVA TNT2 Value 1102 1024 CT6932 RIVA TNT2 Value 32Mb 1102 102c CT6931 RIVA TNT2 Value [Jumper] --- 2625,2642 ---- 14af 5820 Maxi Gamer Xentor 32 002a NV5 [Riva TnT2] 002b NV5 [Riva TnT2] ! 002c NV6 [Vanta/Vanta LT] 1043 0200 AGP-V3800 Combat SDRAM 1043 0201 AGP-V3800 Combat 1092 6820 Viper V730 1102 1031 CT6938 VANTA 8MB 1102 1034 CT6894 VANTA 16MB 14af 5008 Maxi Gamer Phoenix 2 ! 002d NV5M64 [RIVA TNT2 Model 64/Model 64 Pro] 1043 0200 AGP-V3800M 1043 0201 AGP-V3800M + 1048 0c3a Erazor III LT + 10de 001e M64 AGP4x 1102 1023 CT6892 RIVA TNT2 Value 1102 1024 CT6932 RIVA TNT2 Value 32Mb 1102 102c CT6931 RIVA TNT2 Value [Jumper] *************** *** 2441,2447 **** 1554 1041 PixelView RIVA TNT2 M64 32MB 002e NV6 [Vanta] 002f NV6 [Vanta] ! 00a0 NV5 [Riva TNT2] 14af 5810 Maxi Gamer Xentor 0100 NV10 [GeForce 256 SDR] 1043 0200 AGP-V6600 SGRAM --- 2644,2662 ---- 1554 1041 PixelView RIVA TNT2 M64 32MB 002e NV6 [Vanta] 002f NV6 [Vanta] ! 0060 nForce2 ISA Bridge ! 1043 80ad A7N8X Mainboard ! 0064 nForce2 SMBus (MCP) ! 0065 nForce2 IDE ! 0066 nForce2 Ethernet Controller ! 0067 nForce2 USB Controller ! 1043 0c11 A7N8X Mainboard ! 0068 nForce2 USB Controller ! 1043 0c11 A7N8X Mainboard ! 006a nForce2 AC97 Audio Controler (MCP) ! 006b nForce MultiMedia audio [Via VT82C686B] ! 006e nForce2 FireWire (IEEE 1394) Controller ! 00a0 NV5 [Aladdin TNT2] 14af 5810 Maxi Gamer Xentor 0100 NV10 [GeForce 256 SDR] 1043 0200 AGP-V6600 SGRAM *************** *** 2450,2489 **** 1043 4009 AGP-V6600 SDRAM 1102 102d CT6941 GeForce 256 14af 5022 3D Prophet SE ! 0101 NV10 [GeForce 256 DDR] 1043 0202 AGP-V6800 DDR 1043 400a AGP-V6800 DDR SGRAM 1043 400b AGP-V6800 DDR SDRAM 1102 102e CT6971 GeForce 256 DDR 14af 5021 3D Prophet DDR-DVI ! 0103 NV10 [Quadro] ! 0110 NV11 [GeForce2 MX] 1043 4015 AGP-V7100 Pro 1043 4031 V7100 Pro with TV output 14af 7103 3D Prophet II MX Dual-Display ! 0111 NV11 [GeForce2 MX DDR] 0112 NV11 [GeForce2 Go] ! 0113 NV11 [GeForce2 MXR] ! 0150 NV15 [GeForce2 GTS] 1043 4016 V7700 AGP Video Card 107d 2840 WinFast GeForce2 GTS with TV output 1462 8831 Creative GeForce2 Pro ! 0151 NV15 [GeForce2 Ti] ! 0152 NV15 [GeForce2 Ultra, Bladerunner] 1048 0c56 GLADIAC Ultra ! 0153 NV15 [Quadro2 Pro] ! 0170 NV17 [GeForce4 MX460] ! 0171 NV17 [GeForce4 MX440] ! 0172 NV17 [GeForce4 MX420] ! 0173 NV1x 0174 NV17 [GeForce4 440 Go] 0175 NV17 [GeForce4 420 Go] 0176 NV17 [GeForce4 420 Go 32M] ! 0178 Quadro4 500XGL 0179 NV17 [GeForce4 440 Go 64M] ! 017a Quadro4 200/400NVS ! 017b Quadro4 550XGL ! 017c Quadro4 550 GoGL 01a0 NV15 [GeForce2 - nForce GPU] 01a4 nForce CPU bridge 01ab nForce 420 Memory Controller (DDR) --- 2665,2717 ---- 1043 4009 AGP-V6600 SDRAM 1102 102d CT6941 GeForce 256 14af 5022 3D Prophet SE ! 0101 NV10DDR [GeForce 256 DDR] 1043 0202 AGP-V6800 DDR 1043 400a AGP-V6800 DDR SGRAM 1043 400b AGP-V6800 DDR SDRAM 1102 102e CT6971 GeForce 256 DDR 14af 5021 3D Prophet DDR-DVI ! 0103 NV10GL [Quadro] ! 0110 NV11 [GeForce2 MX/MX 400] 1043 4015 AGP-V7100 Pro 1043 4031 V7100 Pro with TV output + 1462 8817 MSI GeForce2 MX400 Pro32S [MS-8817] + 14af 7102 3D Prophet II MX 14af 7103 3D Prophet II MX Dual-Display ! 0111 NV11DDR [GeForce2 MX 100 DDR/200 DDR] 0112 NV11 [GeForce2 Go] ! 0113 NV11GL [Quadro2 MXR/EX] ! 0150 NV15 [GeForce2 GTS/Pro] 1043 4016 V7700 AGP Video Card 107d 2840 WinFast GeForce2 GTS with TV output 1462 8831 Creative GeForce2 Pro ! 0151 NV15DDR [GeForce2 Ti] ! 1043 405f V7700Ti ! 0152 NV15BR [GeForce2 Ultra, Bladerunner] 1048 0c56 GLADIAC Ultra ! 0153 NV15GL [Quadro2 Pro] ! 0170 NV17 [GeForce4 MX 460] ! 0171 NV17 [GeForce4 MX 440] ! 10b0 0002 Gainward Pro/600 TV ! 1462 8661 G4MX440-VTP ! 1462 8730 MX440SES-T (MS-8873) ! 147b 8f00 Abit Siluro GeForce4MX440 ! 0172 NV17 [GeForce4 MX 420] ! 0173 NV17 [GeForce4 MX 440-SE] 0174 NV17 [GeForce4 440 Go] 0175 NV17 [GeForce4 420 Go] 0176 NV17 [GeForce4 420 Go 32M] ! 0178 NV17GL [Quadro4 550 XGL] 0179 NV17 [GeForce4 440 Go 64M] ! 017a NV17GL [Quadro4 200/400 NVS] ! 017b NV17GL [Quadro4 550 XGL] ! 017c NV17GL [Quadro4 550 GoGL] ! 0181 NV18 [GeForce4 MX 440 AGP 8x] ! 0182 NV18 [GeForce4 MX 440SE AGP 8x] ! 0183 NV18 [GeForce4 MX 420 AGP 8x] ! 0188 NV18GL [Quadro4 580 XGL] ! 018a NV18GL [Quadro4 NVS] ! 018b NV18GL [Quadro4 380 XGL] 01a0 NV15 [GeForce2 - nForce GPU] 01a4 nForce CPU bridge 01ab nForce 420 Memory Controller (DDR) *************** *** 2495,2525 **** 01b7 nForce AGP to PCI Bridge 01b8 nForce PCI-to-PCI bridge 01bc nForce IDE 0200 NV20 [GeForce3] 1043 402f AGP-V8200 DDR ! 0201 NV20 [GeForce3 Ti200] ! 0202 NV20 [GeForce3 Ti500] 1043 405b V8200 T5 ! 0203 NV20 [Quadro DCC] ! 0250 NV25 [GeForce4 Ti4600] ! 0251 NV25 [GeForce4 Ti4400] ! 0253 NV25 [GeForce4 Ti4200] ! 0258 Quadro4 900XGL ! 0259 Quadro4 750XGL ! 025b Quadro4 700XGL 10df Emulex Corporation - 10df Light Pulse Fibre Channel Adapter 1ae5 LP6000 Fibre Channel Host Adapter f700 LP7000 Fibre Channel Host Adapter f800 LP8000 Fibre Channel Host Adapter f900 LP9000 Fibre Channel Host Adapter 10e0 Integrated Micro Solutions Inc. 5026 IMS5026/27/28 5027 IMS5027 5028 IMS5028 8849 IMS8849 8853 IMS8853 ! 9128 IMS9129 [Twin turbo 128] 10e1 Tekram Technology Co.,Ltd. 0391 TRM-S1040 10e1 0391 DC-315U SCSI-3 Host Adapter --- 2723,2776 ---- 01b7 nForce AGP to PCI Bridge 01b8 nForce PCI-to-PCI bridge 01bc nForce IDE + 01c1 Intel 537 [nForce MC97 Modem] + 01c2 nForce USB Controller + 01c3 nForce Ethernet Controller + 01e8 nForce2 AGP + 01f0 NV18 [GeForce4 MX - nForce GPU] 0200 NV20 [GeForce3] 1043 402f AGP-V8200 DDR ! 0201 NV20 [GeForce3 Ti 200] ! 0202 NV20 [GeForce3 Ti 500] 1043 405b V8200 T5 ! 1545 002f Xtasy 6964 ! 0203 NV20DCC [Quadro DCC] ! 0250 NV25 [GeForce4 Ti 4600] ! 0251 NV25 [GeForce4 Ti 4400] ! 0252 NV25 [GeForce4 Ti] ! 0253 NV25 [GeForce4 Ti 4200] ! 107d 2896 WinFast A250 LE TD (Dual VGA/TV-out/DVI) ! 147b 8f09 Siluro (Dual VGA/TV-out/DVI) ! 0258 NV25GL [Quadro4 900 XGL] ! 0259 NV25GL [Quadro4 750 XGL] ! 025b NV25GL [Quadro4 700 XGL] ! 0280 NV28 [GeForce4 Ti 4800] ! 0281 NV28 [GeForce4 Ti 4200 AGP 8x] ! 0282 NV28 [GeForce4 Ti 4800 SE] ! 0286 NV28 [GeForce4 Ti 4200 Go AGP 8x] ! 0288 NV28GL [Quadro4 980 XGL] ! 0289 NV28GL [Quadro4 780 XGL] ! 0300 NV30 [GeForce FX] ! 0301 NV30 [GeForce FX 5800 Ultra] ! 0302 NV30 [GeForce FX 5800] ! 0308 NV30GL [Quadro FX 2000] ! 0309 NV30GL [Quadro FX 1000] 10df Emulex Corporation 1ae5 LP6000 Fibre Channel Host Adapter + f085 LP850 Fibre Channel Adapter + f095 LP952 Fibre Channel Adapter + f098 LP982 Fibre Channel Adapter f700 LP7000 Fibre Channel Host Adapter f800 LP8000 Fibre Channel Host Adapter f900 LP9000 Fibre Channel Host Adapter + f980 LP9802 Fibre Channel Adapter 10e0 Integrated Micro Solutions Inc. 5026 IMS5026/27/28 5027 IMS5027 5028 IMS5028 8849 IMS8849 8853 IMS8853 ! 9128 IMS9128 [Twin turbo 128] 10e1 Tekram Technology Co.,Ltd. 0391 TRM-S1040 10e1 0391 DC-315U SCSI-3 Host Adapter *************** *** 2529,2534 **** --- 2780,2786 ---- 10e3 Tundra Semiconductor Corp. 0000 CA91C042 [Universe] 0860 CA91C860 [QSpan] + 0862 CA91C862A [QSpan-II] 10e4 Tandem Computers 10e5 Micro Industries Corporation 10e6 Gainbery Computer Products Inc. *************** *** 2558,2563 **** --- 2810,2816 ---- 2010 CyberPro 2000A 5000 CyberPro 5000 5050 CyberPro 5050 + 5202 CyberPro 5202 10eb Artists Graphics 0101 3GA 8111 Twist3 Frame Grabber *************** *** 2580,2585 **** --- 2833,2839 ---- 1186 1300 DFE-538TX 1186 1320 SN5200 1186 8139 DRN-32TX + 11f6 8139 FN22-3(A) LinxPRO Ethernet Adapter 1259 2500 AT-2500TX 1259 2503 AT-2500TX/ACPI 1429 d010 ND010 *************** *** 2595,2603 **** 8e2e 7100 KF-230TX/2 a0a0 0007 ALN-325C 8169 RTL-8169 10ed Ascii Corporation 7310 V7310 ! 10ee Xilinx, Inc. 3fc0 RME Digi96 3fc1 RME Digi96/8 3fc2 RME Digi96/8 Pro --- 2849,2859 ---- 8e2e 7100 KF-230TX/2 a0a0 0007 ALN-325C 8169 RTL-8169 + 1371 434e ProG-2000L + 8197 SmartLAN56 56K Modem 10ed Ascii Corporation 7310 V7310 ! 10ee Xilinx Corporation 3fc0 RME Digi96 3fc1 RME Digi96/8 3fc2 RME Digi96/8 Pro *************** *** 2620,2625 **** --- 2876,2882 ---- 10fa Truevision 000c TARGA 1000 10fb Thesys Gesellschaft für Mikroelektronik mbH + 186f TH 6255 10fc I-O Data Device, Inc. # What's in the cardbus end of a Sony ACR-A01 card, comes with newer Vaio CD-RW drives 0003 Cardbus IDE Controller *************** *** 2651,2664 **** 1102 8040 CT4760 SBLive! 1102 8051 CT4850 SBLive! Value 1102 8061 SBLive! Player 5.1 0004 SB Audigy 1102 0051 SB0090 Audigy Player 4001 SB Audigy FireWire Port 7002 SB Live! MIDI/Game Port 1102 0020 Gameport Joystick 7003 SB Audigy MIDI/Game port ! 1102 0040 SB Audigy MIDI/Gameport ! 8938 ES1371 1103 Triones Technologies, Inc. 0003 HPT343 # Revisions: 01=HPT366, 03=HPT370, 04=HPT370A, 05=HPT372 --- 2908,2928 ---- 1102 8040 CT4760 SBLive! 1102 8051 CT4850 SBLive! Value 1102 8061 SBLive! Player 5.1 + 1102 8064 SB Live! 5.1 Model SB0100 + 1102 8065 SBLive! 5.1 Digital Model SB0220 0004 SB Audigy 1102 0051 SB0090 Audigy Player + 1102 0053 SB0090 Audigy Player/OEM + 0006 [SB Live! Value] EMU10k1X 4001 SB Audigy FireWire Port + 1102 0010 SB Audigy FireWire Port 7002 SB Live! MIDI/Game Port 1102 0020 Gameport Joystick 7003 SB Audigy MIDI/Game port ! 1102 0040 SB Audigy MIDI/Game Port ! 7004 [SB Live! Value] Input device controller ! 8064 SB0100 [SBLive! 5.1 OEM] ! 8938 Ectiva EV1938 1103 Triones Technologies, Inc. 0003 HPT343 # Revisions: 01=HPT366, 03=HPT370, 04=HPT370A, 05=HPT372 *************** *** 2669,2691 **** 0006 HPT302 0007 HPT371 0008 HPT374 1104 RasterOps Corp. 1105 Sigma Designs, Inc. 1105 REALmagic Xcard MPEG 1/2/3/4 DVD Decoder 8300 REALmagic Hollywood Plus DVD Decoder 8400 EM840x REALmagic DVD/MPEG-2 Audio/Video Decoder 1106 VIA Technologies, Inc. 0130 VT6305 1394.A Controller 0305 VT8363/8365 [KT133/KM133] 1043 8033 A7V Mainboard 1043 8042 A7V133/A7V133-C Mainboard 147b a401 KT7/KT7-RAID/KT7A/KT7A-RAID Mainboard 0391 VT8371 [KX133] 0501 VT8501 [Apollo MVP4] 0505 VT82C505 ! 0561 VT82C561 ! 0571 VT82C586B PIPC Bus Master IDE ! 1458 5002 GA-7VAX Mainboard 0576 VT82C576 3V [Apollo Master] 0585 VT82C585VP [Apollo VP1/VPX] 0586 VT82C586/A/B PCI-to-ISA [Apollo VP] --- 2933,2964 ---- 0006 HPT302 0007 HPT371 0008 HPT374 + 0009 HPT372N 1104 RasterOps Corp. 1105 Sigma Designs, Inc. 1105 REALmagic Xcard MPEG 1/2/3/4 DVD Decoder 8300 REALmagic Hollywood Plus DVD Decoder 8400 EM840x REALmagic DVD/MPEG-2 Audio/Video Decoder 1106 VIA Technologies, Inc. + 0102 Embedded VIA Ethernet Controller 0130 VT6305 1394.A Controller 0305 VT8363/8365 [KT133/KM133] 1043 8033 A7V Mainboard + 1043 803e A7V-E Mainboard 1043 8042 A7V133/A7V133-C Mainboard 147b a401 KT7/KT7-RAID/KT7A/KT7A-RAID Mainboard 0391 VT8371 [KX133] 0501 VT8501 [Apollo MVP4] 0505 VT82C505 ! # Shares chip with :0576. The VT82C576M has :1571 instead of :0561. ! 0561 VT82C576MV ! 0571 VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE ! 1019 0985 P6VXA Motherboard ! 1043 8052 VT8233A Bus Master ATA100/66/33 IDE ! 1043 808c A7V8X motherboard ! 1106 0571 VT82C586/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE ! 1179 0001 Magnia Z310 ! 1458 5002 GA-7VAX Mainboard 0576 VT82C576 3V [Apollo Master] 0585 VT82C585VP [Apollo VP1/VPX] 0586 VT82C586/A/B PCI-to-ISA [Apollo VP] *************** *** 2698,2721 **** 0598 VT82C598 [Apollo MVP3] 0601 VT8601 [Apollo ProMedia] 0605 VT8605 [ProSavage PM133] 0680 VT82C680 [Apollo P6] 0686 VT82C686 [Apollo Super South] 1043 8033 A7V Mainboard 1043 8042 A7V133/A7V133-C Mainboard 1106 0000 VT82C686/A PCI to ISA Bridge 1106 0686 VT82C686/A PCI to ISA Bridge 0691 VT82C693A/694x [Apollo PRO133x] 1458 0691 VT82C691 Apollo Pro System Controller 0693 VT82C693 [Apollo Pro Plus] 0698 VT82C693A [Apollo Pro133 AGP] 0926 VT82C926 [Amazon] 1000 VT82C570MV 1106 VT82C570MV ! 1571 VT82C416MV 1595 VT82C595/97 [Apollo VP2/97] 3038 USB 0925 1234 USB Controller ! 1234 0925 MVP3 USB Controller 3040 VT82C586B ACPI 3043 VT86C100A [Rhine] 10bd 0000 VT86C100A Fast Ethernet Adapter --- 2971,3005 ---- 0598 VT82C598 [Apollo MVP3] 0601 VT8601 [Apollo ProMedia] 0605 VT8605 [ProSavage PM133] + 1043 802c CUV4X mainboard 0680 VT82C680 [Apollo P6] 0686 VT82C686 [Apollo Super South] + 1019 0985 P6VXA Motherboard + 1043 802c CUV4X mainboard 1043 8033 A7V Mainboard + 1043 803e A7V-E Mainboard + 1043 8040 A7M266 Mainboard 1043 8042 A7V133/A7V133-C Mainboard 1106 0000 VT82C686/A PCI to ISA Bridge 1106 0686 VT82C686/A PCI to ISA Bridge + 1179 0001 Magnia Z310 + 147b a702 KG7-Lite Mainboard 0691 VT82C693A/694x [Apollo PRO133x] + 1019 0985 P6VXA Motherboard + 1179 0001 Magnia Z310 1458 0691 VT82C691 Apollo Pro System Controller 0693 VT82C693 [Apollo Pro Plus] 0698 VT82C693A [Apollo Pro133 AGP] 0926 VT82C926 [Amazon] 1000 VT82C570MV 1106 VT82C570MV ! 1571 VT82C576M/VT82C586 1595 VT82C595/97 [Apollo VP2/97] 3038 USB 0925 1234 USB Controller ! 1019 0985 P6VXA Motherboard ! 1043 808c A7V8X motherboard ! 1179 0001 Magnia Z310 3040 VT82C586B ACPI 3043 VT86C100A [Rhine] 10bd 0000 VT86C100A Fast Ethernet Adapter *************** *** 2725,2765 **** 3050 VT82C596 Power Management 3051 VT82C596 Power Management 3057 VT82C686 [Apollo Super ACPI] 1043 8033 A7V Mainboard 1043 8042 A7V133/A7V133-C Mainboard 3058 VT82C686 AC97 Audio Controller 0e11 b194 Soundmax integrated digital audio 1106 4511 Onboard Audio on EP7KXA 1458 7600 Onboard Audio 1462 3091 MS-6309 Onboard Audio 15dd 7609 Onboard Audio ! 3059 VT8233 AC97 Audio Controller ! 1458 a002 GA-7VAX Onboard Audio (Realtek ALC650) 3065 VT6102 [Rhine-II] 1186 1400 DFE-530TX rev A 1186 1401 DFE-530TX rev B ! 3068 AC97 Modem Controller 3074 VT8233 PCI to ISA Bridge 3091 VT8633 [Apollo Pro266] ! 3099 VT8367 [KT266] ! 1043 8064 A7V266-E ! 1043 807f A7V333 3101 VT8653 Host Bridge 3102 VT8662 Host Bridge 3103 VT8615 Host Bridge 3104 USB 2.0 1458 5004 GA-7VAX Mainboard 3109 VT8233C PCI to ISA Bridge 3112 VT8361 [KLE133] Host Bridge 3128 VT8753 [P4X266 AGP] 3133 VT3133 Host Bridge 3147 VT8233A ISA Bridge 3148 P4M266 Host Bridge 3156 P/KN266 Host Bridge ! 3177 VT8233A ISA Bridge ! 1458 5001 GA-7VAX Mainboard 3189 VT8377 [KT400 AGP] Host Bridge ! 1458 5000 GA-7VAX Mainboard 5030 VT82C596 ACPI [Apollo PRO] 6100 VT85C100A [Rhine II] 8231 VT8231 [PCI-to-ISA Bridge] --- 3009,3068 ---- 3050 VT82C596 Power Management 3051 VT82C596 Power Management 3057 VT82C686 [Apollo Super ACPI] + 1019 0985 P6VXA Motherboard 1043 8033 A7V Mainboard + 1043 803e A7V-E Mainboard + 1043 8040 A7M266 Mainboard 1043 8042 A7V133/A7V133-C Mainboard + 1179 0001 Magnia Z310 3058 VT82C686 AC97 Audio Controller 0e11 b194 Soundmax integrated digital audio + 1019 0985 P6VXA Motherboard 1106 4511 Onboard Audio on EP7KXA 1458 7600 Onboard Audio 1462 3091 MS-6309 Onboard Audio 15dd 7609 Onboard Audio ! 3059 VT8233/A/8235 AC97 Audio Controller ! 1043 8095 A7V8X Motherboard (Realtek ALC650 codec) ! 1458 a002 GA-7VAX Onboard Audio (Realtek ALC650) 3065 VT6102 [Rhine-II] + 1106 0102 VT6102 [Rhine II] Embeded Ethernet Controller on VT8235 1186 1400 DFE-530TX rev A 1186 1401 DFE-530TX rev B ! 13b9 1421 LD-10/100AL PCI Fast Ethernet Adapter (rev.B) ! 3068 Intel 537 [AC97 Modem] 3074 VT8233 PCI to ISA Bridge + 1043 8052 VT8233A 3091 VT8633 [Apollo Pro266] ! 3099 VT8366/A/7 [Apollo KT266/A/333] ! 1043 8064 A7V266-E Mainboard ! 1043 807f A7V333 Mainboard 3101 VT8653 Host Bridge 3102 VT8662 Host Bridge 3103 VT8615 Host Bridge 3104 USB 2.0 + 1043 808c A7V8X motherboard 1458 5004 GA-7VAX Mainboard + 3106 VT6105 [Rhine-III] 3109 VT8233C PCI to ISA Bridge 3112 VT8361 [KLE133] Host Bridge + 3116 VT8375 [KM266/KL266] Host Bridge + # found on EPIA M6000/9000 mainboard + 3122 VT8623 [Apollo CLE266] integrated CastleRock graphics + # found on EPIA M6000/9000 mainboard + 3123 VT8623 [Apollo CLE266] 3128 VT8753 [P4X266 AGP] 3133 VT3133 Host Bridge 3147 VT8233A ISA Bridge 3148 P4M266 Host Bridge 3156 P/KN266 Host Bridge ! 3168 VT8374 P4X400 Host Controller/AGP Bridge ! 3177 VT8235 ISA Bridge ! 1043 808c A7V8X motherboard ! 1458 5001 GA-7VAX Mainboard 3189 VT8377 [KT400 AGP] Host Bridge ! 1043 807f A7V8X motherboard ! 1458 5000 GA-7VAX Mainboard 5030 VT82C596 ACPI [Apollo PRO] 6100 VT85C100A [Rhine II] 8231 VT8231 [PCI-to-ISA Bridge] *************** *** 2770,2781 **** 8596 VT82C596 [Apollo PRO AGP] 8597 VT82C597 [Apollo VP3 AGP] 8598 VT82C598/694x [Apollo MVP3/Pro133x AGP] 8601 VT8601 [Apollo ProMedia AGP] 8605 VT8605 [PM133 AGP] 8691 VT82C691 [Apollo Pro] 8693 VT82C693 [Apollo Pro Plus] PCI Bridge b091 VT8633 [Apollo Pro266 AGP] ! b099 VT8367 [KT333 AGP] b101 VT8653 AGP Bridge b102 VT8362 AGP Bridge b103 VT8615 AGP Bridge --- 3073,3085 ---- 8596 VT82C596 [Apollo PRO AGP] 8597 VT82C597 [Apollo VP3 AGP] 8598 VT82C598/694x [Apollo MVP3/Pro133x AGP] + 1019 0985 P6VXA Motherboard 8601 VT8601 [Apollo ProMedia AGP] 8605 VT8605 [PM133 AGP] 8691 VT82C691 [Apollo Pro] 8693 VT82C693 [Apollo Pro Plus] PCI Bridge b091 VT8633 [Apollo Pro266 AGP] ! b099 VT8366/A/7 [Apollo KT266/A/333 AGP] b101 VT8653 AGP Bridge b102 VT8362 AGP Bridge b103 VT8615 AGP Bridge *************** *** 2797,2802 **** --- 3101,3112 ---- 110a Siemens Nixdorf AG 0002 Pirahna 2-port 0005 Tulip controller, power management, switch extender + 0006 FSC PINC (I/O-APIC) + 0015 FSC Multiprocessor Interrupt Controller + 001d FSC Copernicus Management Controller + 007b FSC Remote Service Controller, mailbox device + 007c FSC Remote Service Controller, shared memory device + 007d FSC Remote Service Controller, SMIC device 2102 DSCC4 WAN adapter 4942 FPGA I-Bus Tracer for MBD 6120 SZB6120 *************** *** 2811,2818 **** 6037 Firepower Powerized SMP I/O ASIC 6073 Firepower Powerized SMP I/O ASIC 1111 Santa Cruz Operation ! # DJ: Some people say that 0x1112 is Rockwell International ! 1112 RNS - Div. of Meret Communications Inc 2200 FDDI Adapter 2300 Fast Ethernet Adapter 2340 4 Port Fast Ethernet Adapter --- 3121,3128 ---- 6037 Firepower Powerized SMP I/O ASIC 6073 Firepower Powerized SMP I/O ASIC 1111 Santa Cruz Operation ! # Also claimed to be RNS or Rockwell International, current PCISIG records list Osicom ! 1112 Osicom Technologies Inc 2200 FDDI Adapter 2300 Fast Ethernet Adapter 2340 4 Port Fast Ethernet Adapter *************** *** 2822,2827 **** --- 3132,3138 ---- 103c 1207 EN-1207D Fast Ethernet Adapter 1113 1211 EN-1207D Fast Ethernet Adapter 1216 EN-1216 Ethernet Adapter + 111a 1020 SpeedStream 1020 PCI 10/100 Ethernet Adaptor [EN-1207F-TX ?] 1217 EN-1217 Ethernet Adapter 5105 10Mbps Network card 9211 EN-1207D Fast Ethernet Adapter *************** *** 2962,2970 **** --- 3273,3286 ---- 0001 MVC IM-PCI Video frame grabber/processor 1130 Computervision 1131 Philips Semiconductors + 1561 USB 1.1 Host Controller + 1562 USB 2.0 Host Controller + 3400 SmartPCI56(UCB1500) 56K Modem 7130 SAA7130 Video Broadcast Decoder + 7133 SAA7133 Audio+video broadcast decoder # PCI audio and video broadcast decoder (http://www.semiconductors.philips.com/pip/saa7134hl) 7134 SAA7134 + 7135 SAA7135 Audio+video broadcast decoder 7145 SAA7145 7146 SAA7146 114b 2003 DVRaptor Video Edit/Capture Card *************** *** 2993,2998 **** --- 3309,3315 ---- 1133 e004 DIVA 2.0 U e005 DIVA LOW 1133 e005 DIVA 2.01 S/T + e00b DIVA 2.02 e010 DIVA Server BRI-2M 1133 e010 DIVA Server BRI-2M e012 DIVA Server BRI-8M *************** *** 3041,3055 **** 1144 Cincinnati Milacron 0001 Noservo controller 1145 Workbit Corporation - f007 NinjaSCSI-32 KME 8007 NinjaSCSI-32 Workbit f010 NinjaSCSI-32 Workbit f012 NinjaSCSI-32 Logitec f013 NinjaSCSI-32 Logitec f015 NinjaSCSI-32 Melco 1146 Force Computers 1147 Interface Corp ! 1148 SysKonnect 4000 FDDI Adapter 0e11 b03b Netelligent 100 FDDI DAS Fibre SC 0e11 b03c Netelligent 100 FDDI SAS Fibre SC --- 3358,3372 ---- 1144 Cincinnati Milacron 0001 Noservo controller 1145 Workbit Corporation 8007 NinjaSCSI-32 Workbit + f007 NinjaSCSI-32 KME f010 NinjaSCSI-32 Workbit f012 NinjaSCSI-32 Logitec f013 NinjaSCSI-32 Logitec f015 NinjaSCSI-32 Melco 1146 Force Computers 1147 Interface Corp ! 1148 Syskonnect (Schneider & Koch) 4000 FDDI Adapter 0e11 b03b Netelligent 100 FDDI DAS Fibre SC 0e11 b03c Netelligent 100 FDDI SAS Fibre SC *************** *** 3067,3095 **** 1148 5843 FDDI SK-5843 (SK-NET FDDI-LP64) 1148 5844 FDDI SK-5844 (SK-NET FDDI-LP64 DAS) 4200 Token Ring adapter ! 4300 SK-98xx Gigabit Ethernet Server Adapter ! 1148 9821 SK-9821 Gigabit Ethernet 1000Base-T Server Adapter ! 1148 9822 SK-9822 Gigabit Ethernet 1000Base-T Dual Port Server Adapter ! 1148 9841 SK-9841 Gigabit Ethernet 1000Base-LX Server Adapter ! 1148 9842 SK-9842 Gigabit Ethernet 1000Base-LX Dual Port Server Adapter ! 1148 9843 SK-9843 Gigabit Ethernet 1000Base-SX Server Adapter ! 1148 9844 SK-9844 Gigabit Ethernet 1000Base-SX Dual Port Server Adapter ! 1148 9861 SK-9861 Gigabit Ethernet 1000Base-SX Server Adapter ! 1148 9862 SK-9862 Gigabit Ethernet 1000Base-SX Dual Port Server Adapter ! 1148 9871 SK-9871 Gigabit Ethernet 1000Base-ZX Server Adapter ! 1148 9872 SK-9872 Gigabit Ethernet 1000Base-ZX Dual Port Server Adapter 4320 SK-98xx Gigabit Ethernet Server Adapter - 1148 9521 SK-9521 10/100/1000Base-T Adapter 1148 5021 SK-9821 V2.0 Gigabit Ethernet 10/100/1000Base-T Adapter 1148 5041 SK-9841 V2.0 Gigabit Ethernet 1000Base-LX Adapter 1148 5043 SK-9843 V2.0 Gigabit Ethernet 1000Base-SX Adapter 1148 5051 SK-9851 V2.0 Gigabit Ethernet 1000Base-SX Adapter 1148 5061 SK-9861 V2.0 Gigabit Ethernet 1000Base-SX Adapter 1148 5071 SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter 4400 Gigabit Ethernet 1149 Win System Corporation 114a VMIC 5579 VMIPCI-5579 (Reflective Memory Card) 7587 VMIVME-7587 114b Canopus Co., Ltd 114c Annabooks --- 3384,3420 ---- 1148 5843 FDDI SK-5843 (SK-NET FDDI-LP64) 1148 5844 FDDI SK-5844 (SK-NET FDDI-LP64 DAS) 4200 Token Ring adapter ! 4300 Gigabit Ethernet ! 1148 9821 SK-9821 (1000Base-T single link) ! 1148 9822 SK-9822 (1000Base-T dual link) ! 1148 9841 SK-9841 (1000Base-LX single link) ! 1148 9842 SK-9842 (1000Base-LX dual link) ! 1148 9843 SK-9843 (1000Base-SX single link) ! 1148 9844 SK-9844 (1000Base-SX dual link) ! 1148 9861 SK-9861 (1000Base-SX VF45 single link) ! 1148 9862 SK-9862 (1000Base-SX VF45 dual link) ! # Information got from SysKonnekt ! 1148 9871 SK-9871 (1000Base-ZX single link) ! # Information got from SysKonnekt ! 1148 9872 SK-9872 (1000Base-ZX dual link) ! 1259 2970 AT-2970SX [Allied Telesyn] ! 1259 2972 AT-2970T [Allied Telesyn] ! 1259 2975 AT-2970SX [Allied Telesyn] ! 1259 2977 AT-2970T [Allied Telesyn] 4320 SK-98xx Gigabit Ethernet Server Adapter 1148 5021 SK-9821 V2.0 Gigabit Ethernet 10/100/1000Base-T Adapter 1148 5041 SK-9841 V2.0 Gigabit Ethernet 1000Base-LX Adapter 1148 5043 SK-9843 V2.0 Gigabit Ethernet 1000Base-SX Adapter 1148 5051 SK-9851 V2.0 Gigabit Ethernet 1000Base-SX Adapter 1148 5061 SK-9861 V2.0 Gigabit Ethernet 1000Base-SX Adapter 1148 5071 SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter + 1148 9521 SK-9521 10/100/1000Base-T Adapter 4400 Gigabit Ethernet 1149 Win System Corporation 114a VMIC 5579 VMIPCI-5579 (Reflective Memory Card) + 5587 VMIPCI-5587 (Reflective Memory Card) + 6504 VMIC PCI 7755 FPGA 7587 VMIVME-7587 114b Canopus Co., Ltd 114c Annabooks *************** *** 3200,3210 **** --- 3525,3537 ---- 0001 Motion TPEG Recorder/Player with audio 1166 ServerWorks 0005 CNB20-LE Host Bridge + 0006 CNB20HE Host Bridge 0007 CNB20-LE Host Bridge 0008 CNB20HE Host Bridge 0009 CNB20LE Host Bridge 0010 CIOB30 0011 CMIC-HE + 0012 CMIC-LE 0013 CNB20-HE Host Bridge 0014 CNB20-HE Host Bridge 0015 CMIC-GC Host Bridge *************** *** 3270,3276 **** --- 3597,3605 ---- 0465 RL5c465 0466 RL5c466 0475 RL5c475 + 144d c006 vpr Matrix 170B4 CardBus bridge 0476 RL5c476 II + 1014 0185 ThinkPad A/T/X Series 104d 80df Vaio PCG-FX403 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP 0477 RL5c477 *************** *** 3279,3285 **** --- 3608,3616 ---- 0522 R5C522 IEEE 1394 Controller 1014 01cf ThinkPad A30p (2653-64G) 0551 R5C551 IEEE 1394 Controller + 144d c006 vpr Matrix 170B4 0552 R5C552 IEEE 1394 Controller + 1014 0511 ThinkPad A/T/X Series 1181 Telmatics International 1183 Fujikura Ltd 1184 Forks Inc *************** *** 3371,3377 **** 4240 AMCC S933Q Intelligent Serial Card 11aa Actel 11ab Galileo Technology Ltd. ! 0146 GT-64010 4801 GT-48001 f003 GT-64010 Primary Image Piranha Image Generator 11ac Canon Information Systems Research Aust. --- 3702,3710 ---- 4240 AMCC S933Q Intelligent Serial Card 11aa Actel 11ab Galileo Technology Ltd. ! 0146 GT-64010/64010A System Controller ! 4611 GT-64115 System Controller ! 4620 GT-64120/64120A/64121A System Controller 4801 GT-48001 f003 GT-64010 Primary Image Piranha Image Generator 11ac Canon Information Systems Research Aust. *************** *** 3467,3472 **** --- 3800,3806 ---- 0443 LT WinModem 0444 LT WinModem 0445 LT WinModem + 8086 2203 PRO/100+ MiniPCI (probably an Ambit U98.003.C.00 combo card) 0446 LT WinModem 0447 LT WinModem 0448 WinModem 56k *************** *** 3496,3501 **** --- 3830,3836 ---- 044e LT WinModem 044f V90 WildWire Modem 0450 LT WinModem + 144f 4005 Magnia SG20 0451 LT WinModem 0452 LT WinModem 0453 LT WinModem *************** *** 3506,3520 **** 0458 LT WinModem 0459 LT WinModem 045a LT WinModem 0461 V90 WildWire Modem 0462 V90 WildWire Modem 0480 Venus Modem (V90, 56KFlex) 5801 USB 5802 USS-312 USB Controller 5811 FW323 dead 0800 FireWire Host Bus Adapter 11c2 Sand Microelectronics ! 11c3 NEC Corp 11c4 Document Technologies, Inc 11c5 Shiva Corporation 11c6 Dainippon Screen Mfg. Co. Ltd --- 3841,3858 ---- 0458 LT WinModem 0459 LT WinModem 045a LT WinModem + 045c LT WinModem 0461 V90 WildWire Modem 0462 V90 WildWire Modem 0480 Venus Modem (V90, 56KFlex) 5801 USB 5802 USS-312 USB Controller + # 4 port PCI USB Controller made by Agere (formely Lucent) + 5803 USS-344S USB Controller 5811 FW323 dead 0800 FireWire Host Bus Adapter 11c2 Sand Microelectronics ! 11c3 NEC Corporation 11c4 Document Technologies, Inc 11c5 Shiva Corporation 11c6 Dainippon Screen Mfg. Co. Ltd *************** *** 3568,3573 **** --- 3906,3912 ---- 11e1 GEC Plessey Semi Inc. 11e2 Samsung Information Systems America 11e3 Quicklogic Corporation + 5030 PC Watchdog 11e4 Second Wave Inc 11e5 IIX Consulting 11e6 Mitsui-Zosen System Research *************** *** 3629,3634 **** --- 3968,3978 ---- 1200 CSS Corporation 1201 Vista Controls Corp 1202 Network General Corp. + 4300 Gigabit Ethernet Adapter + 1202 9841 SK-9841 LX + 1202 9842 SK-9841 LX dual link + 1202 9843 SK-9843 SX + 1202 9844 SK-9843 SX dual link 1203 Bayer Corporation, Agfa Division 1204 Lattice Semiconductor Corporation 1205 Array Corporation *************** *** 3675,3680 **** --- 4019,4025 ---- 6933 OZ6933 Cardbus Controller 1025 1016 Travelmate 612 TX 6972 OZ6912 Cardbus Controller + 1179 0001 Magnia Z310 1218 Hybricon Corp. 1219 First Virtual Corporation 121a 3Dfx Interactive, Inc. *************** *** 3696,3702 **** 139c 0016 Raven 139c 0017 Raven 14af 0002 Maxi Gamer Phoenix - 3030 3030 Skywell Magic TwinPower 0004 Voodoo Banshee [Velocity 100] 0005 Voodoo 3 121a 0004 Voodoo3 AGP --- 4041,4046 ---- *************** *** 3808,3814 **** 1249 Samsung Electronics Co., Ltd. 124a AEG Electrocom GmbH 124b SBS/Greenspring Modular I/O ! 0040 cPCI-200 Four Slot IndustryPack carrier 124b 9080 PCI9080 Bridge 124c Solitron Technologies, Inc. 124d Stallion Technologies, Inc. --- 4152,4158 ---- 1249 Samsung Electronics Co., Ltd. 124a AEG Electrocom GmbH 124b SBS/Greenspring Modular I/O ! 0040 PCI-40A or cPCI-200 Quad IndustryPack carrier 124b 9080 PCI9080 Bridge 124c Solitron Technologies, Inc. 124d Stallion Technologies, Inc. *************** *** 3853,3858 **** --- 4197,4203 ---- 125d 8888 Solo-1 Audio Adapter 525f c888 ES1969 SOLO-1 AudioDrive (+ES1938) 1978 ES1978 Maestro 2E + 0e11 b112 Armada M700 1033 803c ES1978 Maestro-2E Audiodrive 1033 8058 ES1978 Maestro-2E Audiodrive 1092 4000 Monster Sound MX400 *************** *** 3884,3889 **** --- 4229,4238 ---- 1260 Harris Semiconductor 3873 Prism 2.5 Wavelan chipset 1186 3501 DWL-520 Wireless PCI Adapter + 1668 0414 HWP01170-01 802.11b PCI Wireless Adapter + 1737 3874 WMP11 Wireless 802.11b PCI Adapter + 8086 2513 Wireless 802.11b MiniPCI Adapter + 3890 D-Links DWL-g650 A1 8130 HMP8130 NTSC/PAL Video Decoder 8131 HMP8131 NTSC/PAL Video Decoder 1261 Matsushita-Kotobuki Electronics Industries, Ltd. *************** *** 3919,3924 **** --- 4268,4274 ---- 1273 Hughes Network Systems 0002 DirecPC 1274 Ensoniq + 1171 ES1373 [AudioPCI] (also Creative Labs CT5803) 1371 ES1371 [AudioPCI-97] 0e11 0024 AudioPCI on Motherboard Compaq Deskpro 0e11 b1a7 ES1371, ES1373 AudioPCI *************** *** 3989,3994 **** --- 4339,4345 ---- 1277 Comstream 1278 Transtech Parallel Systems Ltd. 0701 TPE3/TM3 PowerPC Node + 0710 TPE5 PowerPC PCI board 1279 Transmeta Corporation 0295 Northbridge 0395 LongRun Northbridge *************** *** 4184,4189 **** --- 4535,4541 ---- 12ae 0001 Gigabit Ethernet-SX (Universal) 1410 0104 Gigabit Ethernet-SX PCI Adapter 0002 AceNIC Gigabit Ethernet (Copper) + 10a9 8002 Acenic Gigabit Ethernet 12ae 0002 Gigabit Ethernet-T (3C986-T) 12af TDK USA Corp 12b0 Jorge Scientific Corp *************** *** 4214,4220 **** 12b9 00ab USR 56k Internal Voice Modem (Model 5609) 12b9 00ac USR 56k Internal Voice Modem (Model 3298) 12b9 00ad USR 56k Internal FAX Modem (Model 5610) ! 12ba PMC Sierra 12bb Nippon Unisoft Corporation 12bc Array Microsystems 12bd Computerm Corp. --- 4566,4572 ---- 12b9 00ab USR 56k Internal Voice Modem (Model 5609) 12b9 00ac USR 56k Internal Voice Modem (Model 3298) 12b9 00ad USR 56k Internal FAX Modem (Model 5610) ! 12ba BittWare, Inc. 12bb Nippon Unisoft Corporation 12bc Array Microsystems 12bd Computerm Corp. *************** *** 4278,4288 **** --- 4630,4643 ---- 00a0 ITNT2 12d3 Vingmed Sound A/S 12d4 Ulticom (Formerly DGM&S) + 0200 T1 Card 12d5 Equator Technologies 12d6 Analogic Corp 12d7 Biotronic SRL 12d8 Pericom Semiconductor 12d9 Aculab PLC + 0002 PCI Prosody + 0004 cPCI Prosody 12da True Time Inc. 12db Annapolis Micro Systems, Inc 12dc Symicron Computer Communication Ltd. *************** *** 4400,4405 **** --- 4755,4761 ---- 0036 PCI-DAS64/M2/16 0037 PCI-DAS64/M3/16 004c PCI-DAS1000 + 004d PCI-QUAD04 1308 Jato Technologies Inc. 0001 NetCelerator Adapter 1308 0001 NetCelerator Adapter *************** *** 4486,4491 **** --- 4842,4849 ---- 1330 MMC Networks 1331 Radisys Corp. 1332 Micro Memory + 5415 MM-5415CN PCI Memory Module with Battery Backup + 5425 MM-5425CN PCI 64/66 Memory Module with Battery Backup 1334 Redcreek Communications, Inc 1335 Videomail, Inc 1337 Third Planet Publishing *************** *** 4523,4529 **** 134f Algo System Co Ltd 1350 Systec Co. Ltd 1351 Sonix Inc ! 1353 Dassault A.T. 1354 Dwave System Inc 1355 Kratos Analytical Ltd 1356 The Logical Co --- 4881,4891 ---- 134f Algo System Co Ltd 1350 Systec Co. Ltd 1351 Sonix Inc ! 1353 Thales Idatys ! 0002 Proserver ! 0003 PCI-FUT ! 0004 PCI-S0 ! 0005 PCI-FUT-S0 1354 Dwave System Inc 1355 Kratos Analytical Ltd 1356 The Logical Co *************** *** 4531,4537 **** --- 4893,4911 ---- 135a Brain Boxes 135b Giganet Inc 135c Quatech Inc + 0010 QSC-100 + 0020 DSC-100 + 0030 DSC-200/300 + 0040 QSC-200/300 + 0050 ESC-100D + 0060 ESC-100M 00f0 MPAC-100 Syncronous Serial Card (Zilog 85230) + 0170 QSCLP-100 + 0180 DSCLP-100 + 0190 SSCLP-100 + 01a0 QSCLP-200/300 + 01b0 DSCLP-200/300 + 01c0 SSCLP-200/300 135d ABB Network Partner AB 135e Sealevel Systems Inc 7101 Single Port RS-232/422/485/530 *************** *** 4579,4584 **** --- 4953,4959 ---- 1384 Reality Simulation Systems Inc 1385 Netgear 4100 802.11b Wireless Adapter (MA301) + 4105 MA311 802.11b wireless adapter 620a GA620 622a GA622 630a GA630 *************** *** 4631,4636 **** --- 5006,5015 ---- 0006 6500 Public Key Processor 0007 7811 Security Processor 0012 7951 Security Processor + 0014 78XX Security Processor + 0016 8065 Security Processor + 0017 8165 Security Processor + 0018 8154 Security Processor 13a4 Rascom Inc 13a5 Audio Digital Imaging Inc 13a6 Videonics Inc *************** *** 4681,4687 **** --- 5060,5069 ---- 13ce Cocom A/S 13cf Studio Audio & Video Ltd 13d0 Techsan Electronics Co Ltd + # http://www.b2c2inc.com/products/pc-specs.html + 2103 B2C2 Sky2PC PCI [SkyStar2] 13d1 Abocom Systems Inc + ab02 ADMtek Centaur-C rev 17 [D-Link DFE-680TX] CardBus Fast Ethernet Adapter ab06 RTL8139 [FE2000VX] CardBus Fast Ethernet Attached Port Adapter 13d2 Shark Multimedia Inc 13d3 IMC Networks *************** *** 4708,4714 **** 13e6 Argosy research Inc 13e7 NAC Incorporated 13e8 Chip Express Corporation ! 13e9 Chip Express Corporation 13ea Dallas Semiconductor 13eb Hauppauge Computer Works Inc 13ec Zydacron Inc --- 5090,5096 ---- 13e6 Argosy research Inc 13e7 NAC Incorporated 13e8 Chip Express Corporation ! 13e9 Intraserver Technology Inc 13ea Dallas Semiconductor 13eb Hauppauge Computer Works Inc 13ec Zydacron Inc *************** *** 4729,4737 **** --- 5111,5121 ---- 0101 CM8338B 13f6 0101 CMI8338-031 PCI Audio Device 0111 CM8738 + 1019 0970 P6STP-FL motherboard 1043 8077 CMI8738 6-channel audio controller 1043 80e2 CMI8738 6ch-MX 13f6 0111 CMI8738/C3DX PCI Audio Device + 1681 a000 Gamesurround MUSE XL 0211 CM8738 13f7 Wildfire Communications 13f8 Ad Lib Multimedia Inc *************** *** 4778,4783 **** --- 5162,5168 ---- 1411 Ikos Systems Inc 1412 IC Ensemble Inc 1712 ICE1712 [Envy24] + 1724 ICE1724 [Envy24HT] 1413 Addonics 1414 Microsoft Corporation 1415 Oxford Semiconductor Ltd *************** *** 4875,4881 **** 0001 NextMove PCI 1460 DYNARC INC 1461 Avermedia Technologies Inc ! 1462 Micro-star International Co Ltd 1463 Fast Corporation 1464 Interactive Circuits & Systems Ltd 1465 GN NETTEST Telecom DIV. --- 5260,5266 ---- 0001 NextMove PCI 1460 DYNARC INC 1461 Avermedia Technologies Inc ! 1462 Micro-Star International Co., Ltd. 1463 Fast Corporation 1464 Interactive Circuits & Systems Ltd 1465 GN NETTEST Telecom DIV. *************** *** 4886,4891 **** --- 5271,5277 ---- 146a IFR 146b Parascan Technologies Ltd 146c Ruby Tech Corp. + 1430 FE-1430TX Fast Ethernet PCI Adapter 146d Tachyon, INC. 146e Williams Electronics Games, Inc. 146f Multi Dimensional Consulting Inc *************** *** 4936,4941 **** --- 5322,5328 ---- 149b SEIKO Instruments Inc 149c OVISLINK Corp. 149d NEWTEK Inc + 0001 Video Toaster for PC 149e Mapletree Networks Inc. 149f LECTRON Co Ltd 14a0 SOFTING GmBH *************** *** 4954,4959 **** --- 5341,5347 ---- 14ad Time Space Radio AB 14ae CTI, Inc 14af Guillemot Corporation + 7102 3D Prophet II MX 14b0 BST Communication Technology Ltd 14b1 Nextcom K.K. 14b2 ENNOVATE Networks Inc *************** *** 4961,4966 **** --- 5349,5362 ---- 0000 DSL NIC 14b4 PHILIPS Business Electronics B.V. 14b5 Creamware GmBH + 0200 Scope + 0300 Pulsar + 0400 Pulsar2 + 0600 Pulsar2 + 0800 DSP-Board + 0900 DSP-Board + 0a00 DSP-Board + 0b00 DSP-Board 14b6 Quantum Data Corp. 14b7 PROXIM Inc 0001 Symphony 4110 *************** *** 4971,4976 **** --- 5367,5373 ---- 0350 PC4800 4500 PC4500 4800 PC4800 + a504 Cisco Aironet Wireless 802.11b 14ba INTERNIX Inc. 14bb SEMTECH Corporation 14bc Globespan Semiconductor Inc. *************** *** 5043,5082 **** 14e3 AMTELCO 14e4 Broadcom Corporation 1644 NetXtreme BCM5700 Gigabit Ethernet ! 1014 0277 Broadcom Vigil B5700 1000BaseTX 1028 00d1 Broadcom BCM5700 1028 0106 Broadcom BCM5700 ! 1028 0109 Broadcom BCM5700 1000BaseTX 1028 010a Broadcom BCM5700 1000BaseTX ! 10b7 1000 3C996-T 1000BaseTX ! 10b7 1001 3C996B-T 1000BaseTX ! 10b7 1002 3C996C-T 1000BaseTX ! 10b7 1003 3C997-T 1000BaseTX Dual Port ! 10b7 1004 3C996-SX 1000BaseSX ! 10b7 1005 3C997-SX 1000BaseSX Dual Port 10b7 1008 3C942 Gigabit LOM (31X31) ! 14e4 0002 NetXtreme 1000BaseSX ! 14e4 0003 NetXtreme 1000BaseSX ! 14e4 0004 NetXtreme 1000BaseTX 14e4 1028 NetXtreme 1000BaseTX ! 14e4 1644 BCM5700 1000BaseTX 1645 NetXtreme BCM5701 Gigabit Ethernet 0e11 007c NC7770 Gigabit Server Adapter (PCI-X, 10/100/1000-T) 0e11 007d NC6770 Gigabit Server Adapter (PCI-X, 1000-SX) 0e11 0085 NC7780 Gigabit Server Adapter (embedded, WOL) 0e11 0099 NC7780 Gigabit Server Adapter (embedded, WOL) 0e11 009a NC7770 Gigabit Server Adapter (PCI-X, 10/100/1000-T) ! 1028 0121 Broadcom BCM5701 1000BaseTX ! 10b7 1004 3C996-SX 1000BaseSX ! 10b7 1006 3C996B-T 1000BaseTX ! 10b7 1007 3C1000-T 1000BaseTX ! 10b7 1008 3C940-BR01 1000BaseTX ! 14e4 0001 BCM5701 1000BaseTX ! 14e4 0005 BCM5701 1000BaseTX ! 14e4 0006 BCM5701 1000BaseTX ! 14e4 0007 BCM5701 1000BaseSX ! 14e4 0008 BCM5701 1000BaseTX ! 14e4 8008 BCM5701 1000BaseTX 1646 NetXtreme BCM5702 Gigabit Ethernet 0e11 00bb NC7760 1000BaseTX 1028 0126 Broadcom BCM5702 1000BaseTX --- 5440,5483 ---- 14e3 AMTELCO 14e4 Broadcom Corporation 1644 NetXtreme BCM5700 Gigabit Ethernet ! 1014 0277 Broadcom Vigil B5700 1000Base-T 1028 00d1 Broadcom BCM5700 1028 0106 Broadcom BCM5700 ! 1028 0109 Broadcom BCM5700 1000Base-T 1028 010a Broadcom BCM5700 1000BaseTX ! 10b7 1000 3C996-T 1000Base-T ! 10b7 1001 3C996B-T 1000Base-T ! 10b7 1002 3C996C-T 1000Base-T ! 10b7 1003 3C997-T 1000Base-T Dual Port ! 10b7 1004 3C996-SX 1000Base-SX ! 10b7 1005 3C997-SX 1000Base-SX Dual Port 10b7 1008 3C942 Gigabit LOM (31X31) ! 14e4 0002 NetXtreme 1000Base-SX ! 14e4 0003 NetXtreme 1000Base-SX ! 14e4 0004 NetXtreme 1000Base-T 14e4 1028 NetXtreme 1000BaseTX ! 14e4 1644 BCM5700 1000Base-T 1645 NetXtreme BCM5701 Gigabit Ethernet 0e11 007c NC7770 Gigabit Server Adapter (PCI-X, 10/100/1000-T) 0e11 007d NC6770 Gigabit Server Adapter (PCI-X, 1000-SX) 0e11 0085 NC7780 Gigabit Server Adapter (embedded, WOL) 0e11 0099 NC7780 Gigabit Server Adapter (embedded, WOL) 0e11 009a NC7770 Gigabit Server Adapter (PCI-X, 10/100/1000-T) ! 0e11 00c1 NC6770 Gigabit Server Adapter (PCI-X, 1000-SX) ! 1028 0121 Broadcom BCM5701 1000Base-T ! 10a9 8010 SGI IO9 Gigabit Ethernet (Copper) ! 10a9 8011 SGI Gigabit Ethernet (Copper) ! 10a9 8012 SGI Gigabit Ethernet (Fiber) ! 10b7 1004 3C996-SX 1000Base-SX ! 10b7 1006 3C996B-T 1000Base-T ! 10b7 1007 3C1000-T 1000Base-T ! 10b7 1008 3C940-BR01 1000Base-T ! 14e4 0001 BCM5701 1000Base-T ! 14e4 0005 BCM5701 1000Base-T ! 14e4 0006 BCM5701 1000Base-T ! 14e4 0007 BCM5701 1000Base-SX ! 14e4 0008 BCM5701 1000Base-T ! 14e4 8008 BCM5701 1000Base-T 1646 NetXtreme BCM5702 Gigabit Ethernet 0e11 00bb NC7760 1000BaseTX 1028 0126 Broadcom BCM5702 1000BaseTX *************** *** 5084,5102 **** 1647 NetXtreme BCM5703 Gigabit Ethernet 0e11 0099 NC7780 1000BaseTX 0e11 009a NC7770 1000BaseTX 14e4 0009 BCM5703 1000BaseTX 14e4 000a BCM5703 1000BaseSX 14e4 000b BCM5703 1000BaseTX 14e4 8009 BCM5703 1000BaseTX 14e4 800a BCM5703 1000BaseTX 1648 NetXtreme BCM5704 Gigabit Ethernet 164d NetXtreme BCM5702FE Gigabit Ethernet ! 16a6 NetXtreme BCM5702X Gigabit Ethernet ! 16a7 NetXtreme BCM5703X Gigabit Ethernet 16a8 NetXtreme BCM5704S Gigabit Ethernet ! 16c6 NetXtreme BCM5702A3 Gigabit Ethernet ! 16c7 NetXtreme BCM5703A3 Gigabit Ethernet ! 4212 BCM v.90 56k modem 5820 BCM5820 Crypto Accelerator 5821 BCM5821 Crypto Accelerator 14e5 Pixelfusion Ltd --- 5485,5541 ---- 1647 NetXtreme BCM5703 Gigabit Ethernet 0e11 0099 NC7780 1000BaseTX 0e11 009a NC7770 1000BaseTX + 10a9 8010 SGI IO9 Gigabit Ethernet (Copper) 14e4 0009 BCM5703 1000BaseTX 14e4 000a BCM5703 1000BaseSX 14e4 000b BCM5703 1000BaseTX 14e4 8009 BCM5703 1000BaseTX 14e4 800a BCM5703 1000BaseTX 1648 NetXtreme BCM5704 Gigabit Ethernet + 0e11 00cf NC7772 Gigabit Server Adapter (PCI-X, 10,100,1000-T) + 0e11 00d0 NC7782 Gigabit Server Adapter (PCI-X, 10,100,1000-T) + 0e11 00d1 NC7783 Gigabit Server Adapter (PCI-X, 10,100,1000-T) + 10b7 2000 3C998-T Dual Port 10/100/1000 PCI-X + 10b7 3000 3C999-T Quad Port 10/100/1000 PCI-X + 1166 1648 NetXtreme CIOB-E 1000Base-T 164d NetXtreme BCM5702FE Gigabit Ethernet ! 1653 NetXtreme BCM5705 Gigabit Ethernet ! 165d NetXtreme BCM5705M Gigabit Ethernet ! 1696 NetXtreme BCM5782 Gigabit Ethernet ! 14e4 000d NetXtreme BCM5782 1000Base-T ! 169c NetXtreme BCM5788 Gigabit Ethernet ! 16a6 NetXtreme BCM5702 Gigabit Ethernet ! 0e11 00bb NC7760 Gigabit Server Adapter (PCI-X, 10/100/1000-T) ! 1028 0126 BCM5702 1000Base-T ! 14e4 000c BCM5702 1000Base-T ! 14e4 8009 BCM5702 1000Base-T ! 16a7 NetXtreme BCM5703 Gigabit Ethernet ! 0e11 00ca NC7771 Gigabit Server Adapter (PCI-X, 10,100,1000-T) ! 0e11 00cb NC7781 Gigabit Server Adapter (PCI-X, 10,100,1000-T) ! 14e4 0009 NetXtreme BCM5703 1000Base-T ! 14e4 000a NetXtreme BCM5703 1000Base-SX ! 14e4 000b NetXtreme BCM5703 1000Base-T ! 14e4 800a NetXtreme BCM5703 1000Base-T 16a8 NetXtreme BCM5704S Gigabit Ethernet ! 10b7 2001 3C998-SX Dual Port 1000-SX PCI-X ! 16c6 NetXtreme BCM5702 Gigabit Ethernet ! 10b7 1100 3C1000B-T 10/100/1000 PCI ! 14e4 000c BCM5702 1000Base-T ! 14e4 8009 BCM5702 1000Base-T ! 16c7 NetXtreme BCM5703 Gigabit Ethernet ! 14e4 0009 NetXtreme BCM5703 1000Base-T ! 14e4 000a NetXtreme BCM5703 1000Base-SX ! 4210 BCM4210 iLine10 HomePNA 2.0 ! 4211 BCM4211 iLine10 HomePNA 2.0 + V.90 56k modem ! 4212 BCM4212 v.90 56k modem ! 4301 BCM4301 802.11b ! 4320 BCM94306 802.11g ! 4401 BCM4401 100Base-T ! 1043 80a8 A7V8X motherboard ! 4402 BCM4402 Integrated 10/100BaseT ! 4410 BCM4413 iLine32 HomePNA 2.0 ! 4411 BCM4413 V.90 56k modem ! 4412 BCM4413 10/100BaseT 5820 BCM5820 Crypto Accelerator 5821 BCM5821 Crypto Accelerator 14e5 Pixelfusion Ltd *************** *** 5181,5186 **** --- 5620,5628 ---- 122d 4302 Dell MP3930V-W(C) MiniPCI 1610 ADSL AccessRunner PCI Arbitration Device 1611 AccessRunner PCI ADSL Interface Device + 1620 ADSL AccessRunner V2 PCI Arbitration Device + 1621 AccessRunner V2 PCI ADSL Interface Device + 1622 AccessRunner V2 PCI ADSL Yukon WAN Adapter 1803 HCF 56k Modem 0e11 0023 623-LAN Grizzly 0e11 0043 623-LAN Yogi *************** *** 5255,5261 **** 14f9 AG COMMUNICATIONS 14fa WANDEL & GOCHERMANN 14fb TRANSAS MARINE (UK) Ltd ! 14fc QUADRICS Supercomputers World 14fd JAPAN Computer Industry Inc 14fe ARCHTEK TELECOM Corp 14ff TWINHEAD INTERNATIONAL Corp --- 5697,5705 ---- 14f9 AG COMMUNICATIONS 14fa WANDEL & GOCHERMANN 14fb TRANSAS MARINE (UK) Ltd ! 14fc Quadrics Ltd ! 0000 QsNet Cluster Interconnect ! 0001 QsNetII Cluster Interconnect 14fd JAPAN Computer Industry Inc 14fe ARCHTEK TELECOM Corp 14ff TWINHEAD INTERNATIONAL Corp *************** *** 5316,5323 **** --- 5760,5773 ---- 1522 0400 RockForceDUO+ 2 Port V.92/V.44 Data/Fax/Voice Modem 1522 0500 RockForceQUATRO+ 4 Port V.92/V.44 Data/Fax/Voice Modem 1522 0600 RockForce+ 2 Port V.90 Data/Fax/Voice Modem + 1522 0700 RockForce+ 4 Port V.90 Data/Fax/Voice Modem + 1522 0800 RockForceOCTO+ 8 Port V.92/V.44 Data/Fax/Voice Modem 1523 MUSIC Semiconductors 1524 ENE Technology Inc + 1211 CB1211 Cardbus Controller + 1225 CB1225 Cardbus Controller + 1410 CB1410 Cardbus Controller + 1420 CB1420 Cardbus Controller 1525 IMPACT Technologies 1526 ISS, Inc 1527 SOLECTRON *************** *** 5337,5342 **** --- 5787,5793 ---- 1535 EVERGREEN Technologies Inc 1537 DATALEX COMMUNCATIONS 1538 ARALION Inc + 0303 ARS106S Ultra ATA 133/100/66 Host Controller 1539 ATELIER INFORMATIQUES et ELECTRONIQUE ETUDES S.A. 153a ONO SOKKI 153b TERRATEC Electronic GmbH *************** *** 5348,5353 **** --- 5799,5806 ---- 1541 MACHONE Communications 1542 VIVID Technology Inc 1543 SILICON Laboratories + 3052 Intel 537 [Winmodem] + 4c22 Si3036 MC'97 DAA 1544 DCM DATA Systems 1545 VISIONTEK 1546 IOI Technology Corp *************** *** 5578,5583 **** --- 6031,6037 ---- 1607 Lava Semiconductor Manufacturing Inc 1608 Automated Wagering International 1609 Scimetric Instruments Inc + 1612 Telesynergy Research Inc. 1619 FarSite Communications Ltd 0400 FarSync T2P (2 port X.21/V.35/V.24) 0440 FarSync T4P (4 port X.21/V.35/V.24) *************** *** 5586,5607 **** 2002 Fast Universal Data Output 1638 Standard Microsystems Corp [SMC] 1100 SMC2602W EZConnect / Addtron AWA-100 1657 Brocade Communications Systems, Inc. 165d Hsing Tech. Enterprise Co., Ltd. 1661 Worldspace Corp. ! 1668 Action Tec Electronics Inc 16ec U.S. Robotics 3685 Wireless Access PCI Adapter Model 022415 16f6 VideoTele.com, Inc. 170b NetOctave Inc 170c YottaYotta Inc. 173b Altima (nee Broadcom) 03e8 AC1000 Gigabit Ethernet 03ea AC9100 Gigabit Ethernet 1743 Peppercon AG 8139 ROL/F-100 Fast Ethernet Adapter with ROL 174b PC Partner Limited 175e Sanera Systems, Inc. # also used by Struck Innovative Systeme for joint developments 1796 Research Centre Juelich 0001 SIS1100 [Gigabit link] --- 6040,6079 ---- 2002 Fast Universal Data Output 1638 Standard Microsystems Corp [SMC] 1100 SMC2602W EZConnect / Addtron AWA-100 + 163c Smart Link Ltd. + 3052 SmartLink SmartPCI562 56K Modem + 5449 SmartPCI561 Modem 1657 Brocade Communications Systems, Inc. + 165a Epix Inc + c100 PIXCI(R) CL1 Camera Link Video Capture Board [custom QL5232] + d200 PIXCI(R) D2X Digital Video Capture Board [custom QL5232] + d300 PIXCI(R) D3X Digital Video Capture Board [custom QL5232] 165d Hsing Tech. Enterprise Co., Ltd. 1661 Worldspace Corp. ! 1668 Actiontec Electronics Inc ! 1681 Hercules ! 16ab Global Sun Technology Inc ! 1102 PCMCIA-to-PCI Wireless Network Bridge ! 16be Creatix Polymedia GmbH ! 16ca CENATEK Inc ! 0001 Rocket Drive DL 16ec U.S. Robotics 3685 Wireless Access PCI Adapter Model 022415 16f6 VideoTele.com, Inc. + 1705 Digital First, Inc. 170b NetOctave Inc 170c YottaYotta Inc. + 172a Accelerated Encryption + 1737 Linksys 173b Altima (nee Broadcom) 03e8 AC1000 Gigabit Ethernet 03ea AC9100 Gigabit Ethernet + 173b 0001 AC1002 1743 Peppercon AG 8139 ROL/F-100 Fast Ethernet Adapter with ROL 174b PC Partner Limited 175e Sanera Systems, Inc. + 1787 Hightech Information System Ltd. # also used by Struck Innovative Systeme for joint developments 1796 Research Centre Juelich 0001 SIS1100 [Gigabit link] *************** *** 5610,5616 **** --- 6082,6103 ---- 0004 CAMAC Controller 0005 PROFIBUS 0006 AMCC HOTlink + 1799 Belkin + 17af Hightech Information System Ltd. + 17cc NetChip Technology, Inc + 2280 USB 2.0 1813 Ambient Technologies Inc + 4000 HaM controllerless modem + 16be 0001 V9x HAM Data Fax Modem + 4100 HaM plus Data Fax Modem + 16be 0002 V9x HAM 1394 + 1851 Microtune, Inc. + 1852 Anritsu Corp. + 1888 Varisys Ltd + 0301 VMFX1 FPGA PMC module + 0601 VSM2 dual PMC carrier + 0710 VS14x series PowerPC PCI board + 0720 VS24x series PowerPC PCI board 1a08 Sierra semiconductor 0000 SC15064 1b13 Jaton Corp *************** *** 5623,5629 **** --- 6110,6121 ---- 2020 DC-390 690c 690c dc29 DC290 + 1fc0 Tumsan Oy + 0300 E2200 Dual E1/Rawpipe Card + 2000 Smart Link Ltd. 2001 Temporal Research Ltd + 2003 Smart Link Ltd. + 2004 Smart Link Ltd. 21c3 21st Century Computer Corp. 2348 Racore 2010 8142 100VG/AnyLAN *************** *** 5635,5641 **** --- 6127,6137 ---- 3000 Hansol Electronics Inc. 3142 Post Impression Systems. 3388 Hint Corp + 0013 HiNT HC4 PCI to ISDN bridge, Multimedia audio controller + 0014 HiNT HC4 PCI to ISDN bridge, Network controller 0021 HB1-SE33 PCI-PCI Bridge + 101a E.Band [AudioTrak Inca88] + 101b E.Band [AudioTrak Inca88] 8011 VXPro II Chipset 3388 8011 VXPro II Chipset CPU to PCI Bridge 8012 VXPro II Chipset *************** *** 5666,5671 **** --- 6162,6169 ---- 3d3d 0127 Permedia3 Create! 000a GLINT R3 3d3d 0121 Oxygen VX1 + 000c GLINT R3 [Oxygen VX1] + 3d3d 0144 Oxygen VX1-4X AGP [Permedia 4] 0100 Permedia II 2D+3D 1004 Permedia 3d04 Permedia *************** *** 5693,5698 **** --- 6191,6197 ---- 0100 AladdinCARD 0200 CPC 4444 Internext Compression Inc + 0803 iTVC15 MPEG-2 Encoder 4468 Bridgeport machines 4594 Cogetec Informatique Inc 45fb Baldor Electric Company *************** *** 5738,5743 **** --- 6237,6243 ---- 5143 Qualcomm Inc 5145 Ensoniq (Old) 3031 Concert AudioPCI + 5168 Animation Technologies Inc. 5301 Alliance Semiconductor Corp. 0001 ProMotion aT3D 5333 S3 Inc. *************** *** 5846,5852 **** --- 6346,6354 ---- 8c10 86C270-294 Savage/MX-MV 8c11 82C270-294 Savage/MX 8c12 86C270-294 Savage/IX-MV + 1014 017f ThinkPad T20 8c13 86C270-294 Savage/IX + 1179 0001 Magnia Z310 8c22 SuperSavage MX/128 8c24 SuperSavage MX/64 8c26 SuperSavage MX/64C *************** *** 5857,5866 **** 8c2e SuperSavage IX/C SDR 1014 01fc ThinkPad T23 (2647-4MG) 8c2f SuperSavage IX/C DDR ! # Integrated in VIA ProSavage PN133 North Bridge ! 8d01 VT8603 [ProSavage PN133] AGP4X VGA Controller (Twister) 8d02 VT8636A [ProSavage KN133] AGP4X VGA Controller (TwisterK) ! 8d04 VT8751 [ProSavageDDR P4M266] VGA Controller 9102 86C410 Savage 2000 1092 5932 Viper II Z200 1092 5934 Viper II Z200 --- 6359,6368 ---- 8c2e SuperSavage IX/C SDR 1014 01fc ThinkPad T23 (2647-4MG) 8c2f SuperSavage IX/C DDR ! 8d01 86C380 [ProSavageDDR K4M266] 8d02 VT8636A [ProSavage KN133] AGP4X VGA Controller (TwisterK) ! 8d03 VT8751 [ProSavageDDR P4M266] ! 8d04 VT8375 [ProSavage8 KM266/KL266] 9102 86C410 Savage 2000 1092 5932 Viper II Z200 1092 5934 Viper II Z200 *************** *** 5872,5877 **** --- 6374,6380 ---- 1092 5a57 Viper II Z200 ca00 SonicVibes 544c Teralogic Inc + 0350 TL880-based HDTV/ATSC tuner 5455 Technische University Berlin 4458 S5933 5519 Cnet Technologies, Inc. *************** *** 5879,5884 **** --- 6382,6388 ---- 0001 I-30xx Scanner Interface 5555 Genroco, Inc 0003 TURBOstor HFP-832 [HiPPI NIC] + 5654 VoiceTronix Pty Ltd 5700 Netpower 6356 UltraStor 6374 c't Magazin für Computertechnik *************** *** 5914,5920 **** 0e11 b123 NC1634 Gigabit Ethernet Adapter (1000-SX) 1014 0119 Netfinity Gigabit Ethernet SX Adapter 8086 1000 PRO/1000 Gigabit Server Adapter ! 1001 82543GC Gigabit Ethernet Controller 0e11 004a NC6136 Gigabit Server Adapter 1014 01ea Netfinity Gigabit Ethernet SX Adapter 8086 1003 PRO/1000 F Server Adapter --- 6418,6424 ---- 0e11 b123 NC1634 Gigabit Ethernet Adapter (1000-SX) 1014 0119 Netfinity Gigabit Ethernet SX Adapter 8086 1000 PRO/1000 Gigabit Server Adapter ! 1001 82543GC Gigabit Ethernet Controller (Fiber) 0e11 004a NC6136 Gigabit Server Adapter 1014 01ea Netfinity Gigabit Ethernet SX Adapter 8086 1003 PRO/1000 F Server Adapter *************** *** 5922,5965 **** 8086 200e Pro 100 LAN+Modem 56 Cardbus II 8086 2013 Pro 100 SR Mobile Combo Adapter 8086 2017 Pro 100 S Combo Mobile Adapter ! 1004 82543GC Gigabit Ethernet Controller 0e11 0049 NC7132 Gigabit Upgrade Module 0e11 b1a4 NC7131 Gigabit Server Adapter 1014 10f2 Gigabit Ethernet Server Adapter 8086 1004 PRO/1000 T Server Adapter 8086 2004 PRO/1000 T Server Adapter ! 1008 82544EI Gigabit Ethernet Controller 8086 1107 PRO/1000 XT Server Adapter 8086 2107 PRO/1000 XT Server Adapter 8086 2110 PRO/1000 XT Server Adapter ! 1009 82544EI Gigabit Ethernet Controller 8086 1109 PRO/1000 XF Server Adapter 8086 2109 PRO/1000 XF Server Adapter ! 100c 82544GC Gigabit Ethernet Controller 8086 1112 PRO/1000 T Desktop Adapter 8086 2112 PRO/1000 T Desktop Adapter ! 100d 82544GC Gigabit Ethernet Controller 100e 82540EM Gigabit Ethernet Controller 8086 001e PRO/1000 MT Desktop Adapter 8086 002e PRO/1000 MT Desktop Adapter ! 100f 82545EM Gigabit Ethernet Controller 8086 1001 PRO/1000 MT Server Adapter ! 1010 82546EB Gigabit Ethernet Controller 8086 1011 PRO/1000 MT Dual Port Server Adapter ! 1011 82545EM Gigabit Ethernet Controller 8086 1002 PRO/1000 MF Server Adapter ! 1012 82546EB Gigabit Ethernet Controller 8086 1012 PRO/1000 MF Dual Port Server Adapter 1029 82559 Ethernet Controller 1030 82559 InBusiness 10/100 1031 82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller ! 1014 0209 ThinkPad A30p (2653-64G) 104d 80e7 Vaio PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP 107b 5350 EtherExpress PRO/100 VE 1179 0001 EtherExpress PRO/100 VE 144d c000 EtherExpress PRO/100 VE 144d c001 EtherExpress PRO/100 VE 144d c003 EtherExpress PRO/100 VE 1032 82801CAM (ICH3) PRO/100 VE Ethernet Controller 1033 82801CAM (ICH3) PRO/100 VM (LOM) Ethernet Controller 1034 82801CAM (ICH3) PRO/100 VM Ethernet Controller --- 6426,6472 ---- 8086 200e Pro 100 LAN+Modem 56 Cardbus II 8086 2013 Pro 100 SR Mobile Combo Adapter 8086 2017 Pro 100 S Combo Mobile Adapter ! 1004 82543GC Gigabit Ethernet Controller (Copper) 0e11 0049 NC7132 Gigabit Upgrade Module 0e11 b1a4 NC7131 Gigabit Server Adapter 1014 10f2 Gigabit Ethernet Server Adapter 8086 1004 PRO/1000 T Server Adapter 8086 2004 PRO/1000 T Server Adapter ! 1008 82544EI Gigabit Ethernet Controller (Copper) 8086 1107 PRO/1000 XT Server Adapter 8086 2107 PRO/1000 XT Server Adapter 8086 2110 PRO/1000 XT Server Adapter ! 1009 82544EI Gigabit Ethernet Controller (Fiber) 8086 1109 PRO/1000 XF Server Adapter 8086 2109 PRO/1000 XF Server Adapter ! 100c 82544GC Gigabit Ethernet Controller (Copper) 8086 1112 PRO/1000 T Desktop Adapter 8086 2112 PRO/1000 T Desktop Adapter ! 100d 82544GC Gigabit Ethernet Controller (LOM) 100e 82540EM Gigabit Ethernet Controller 8086 001e PRO/1000 MT Desktop Adapter 8086 002e PRO/1000 MT Desktop Adapter ! 100f 82545EM Gigabit Ethernet Controller (Copper) 8086 1001 PRO/1000 MT Server Adapter ! 1010 82546EB Gigabit Ethernet Controller (Copper) 8086 1011 PRO/1000 MT Dual Port Server Adapter ! 1011 82545EM Gigabit Ethernet Controller (Fiber) 8086 1002 PRO/1000 MF Server Adapter ! 1012 82546EB Gigabit Ethernet Controller (Fiber) 8086 1012 PRO/1000 MF Dual Port Server Adapter + 1015 82540EM Gigabit Ethernet Controller (LOM) + 1019 82547EI Gigabit Ethernet Controller 1029 82559 Ethernet Controller 1030 82559 InBusiness 10/100 1031 82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller ! 1014 0209 ThinkPad A/T/X Series 104d 80e7 Vaio PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP 107b 5350 EtherExpress PRO/100 VE 1179 0001 EtherExpress PRO/100 VE 144d c000 EtherExpress PRO/100 VE 144d c001 EtherExpress PRO/100 VE 144d c003 EtherExpress PRO/100 VE + 144d c006 vpr Matrix 170B4 1032 82801CAM (ICH3) PRO/100 VE Ethernet Controller 1033 82801CAM (ICH3) PRO/100 VM (LOM) Ethernet Controller 1034 82801CAM (ICH3) PRO/100 VM Ethernet Controller *************** *** 5973,5988 **** --- 6480,6504 ---- 103c 82801BD PRO/100 VM (CNR) Ethernet Controller 103d 82801BD PRO/100 VE (MOB) Ethernet Controller 103e 82801BD PRO/100 VM (MOB) Ethernet Controller + 1040 536EP Data Fax Modem + 16be 1040 V.9X DSP Data Fax Modem + 1043 PRO/Wireless LAN 2100 3B Mini PCI Adapter 1059 82551QM Ethernet Controller 1130 82815 815 Chipset Host Bridge and Memory Controller Hub + 1025 1016 Travelmate 612 TX 1043 8027 TUSL2-C Mainboard 104d 80df Vaio PCG-FX403 + 8086 4532 D815EEA2 mainboard + 8086 4557 D815EGEW Mainboard 1131 82815 815 Chipset AGP Bridge 1132 82815 CGC [Chipset Graphics Controller] 1025 1016 Travelmate 612 TX 104d 80df Vaio PCG-FX403 + 8086 4532 D815EEA2 Mainboard + 8086 4557 D815EGEW Mainboard 1161 82806AA PCI64 Hub Advanced Programmable Interrupt Controller 8086 1161 82806AA PCI64 Hub APIC + 1162 Xscale 80200 Big Endian Companion Chip 1200 Intel IXP1200 Network Processor 172a 0000 AEP SSL Accelerator 1209 82559ER *************** *** 6024,6036 **** --- 6540,6555 ---- 1014 01f2 10/100 Ethernet Server Adapter 1014 0207 Ethernet Pro/100 S 1014 0232 10/100 Dual Port Server Adapter + 1014 023a ThinkPad R30 1014 105c Netfinity 10/100 + 1014 2205 ThinkPad A22p 1014 305c 10/100 EtherJet Management Adapter 1014 405c 10/100 EtherJet Adapter with Alert on LAN 1014 505c 10/100 EtherJet Secure Management Adapter 1014 605c 10/100 EtherJet Secure Management Adapter 1014 705c 10/100 Netfinity 10/100 Ethernet Security Adapter 1014 805c 10/100 Netfinity 10/100 Ethernet Security Adapter + 1028 009b PowerEdge 2550 1033 8000 PC-9821X-B06 1033 8016 PK-UG-X006 1033 801f PK-UG-X006 *************** *** 6161,6166 **** --- 6680,6686 ---- 8086 8000 82806AA PCI64 Hub Controller (HRes) 1460 82870P2 P64H2 Hub PCI Bridge 1461 82870P2 P64H2 I/OxAPIC + 15d9 3480 P4DP6 1462 82870P2 P64H2 Hot Plug Controller 1960 80960RP [i960RP Microprocessor] 101e 0431 MegaRAID 431 RAID Controller *************** *** 6212,6231 **** 2428 82801AB PCI Bridge 2440 82801BA ISA Bridge (LPC) 2442 82801BA/BAM USB (Hub #1) 104d 80df Vaio PCG-FX403 147b 0507 TH7II-RAID 2443 82801BA/BAM SMBus 1043 8027 TUSL2-C Mainboard 104d 80df Vaio PCG-FX403 147b 0507 TH7II-RAID 2444 82801BA/BAM USB (Hub #2) 104d 80df Vaio PCG-FX403 147b 0507 TH7II-RAID 2445 82801BA/BAM AC'97 Audio 104d 80df Vaio PCG-FX403 1462 3370 STAC9721 AC 147b 0507 TH7II-RAID ! 2446 82801BA/BAM AC'97 Modem 104d 80df Vaio PCG-FX403 2448 82801BAM/CAM PCI Bridge 2449 82801BA/BAM/CA/CAM Ethernet Controller --- 6732,6765 ---- 2428 82801AB PCI Bridge 2440 82801BA ISA Bridge (LPC) 2442 82801BA/BAM USB (Hub #1) + 1014 01c6 Netvista A40/A40p + 1025 1016 Travelmate 612 TX 104d 80df Vaio PCG-FX403 147b 0507 TH7II-RAID + 8086 4532 D815EEA2 mainboard + 8086 4557 D815EGEW Mainboard 2443 82801BA/BAM SMBus + 1014 01c6 Netvista A40/A40p + 1025 1016 Travelmate 612 TX 1043 8027 TUSL2-C Mainboard 104d 80df Vaio PCG-FX403 147b 0507 TH7II-RAID + 8086 4532 D815EEA2 mainboard + 8086 4557 D815EGEW Mainboard 2444 82801BA/BAM USB (Hub #2) + 1025 1016 Travelmate 612 TX 104d 80df Vaio PCG-FX403 147b 0507 TH7II-RAID + 8086 4532 D815EEA2 mainboard 2445 82801BA/BAM AC'97 Audio + 1014 01c6 Netvista A40/A40p + 1025 1016 Travelmate 612 TX 104d 80df Vaio PCG-FX403 1462 3370 STAC9721 AC 147b 0507 TH7II-RAID ! 8086 4557 D815EGEW Mainboard ! 2446 Intel 537 [82801BA/BAM AC'97 Modem] ! 1025 1016 Travelmate 612 TX 104d 80df Vaio PCG-FX403 2448 82801BAM/CAM PCI Bridge 2449 82801BA/BAM/CA/CAM Ethernet Controller *************** *** 6242,6249 **** --- 6776,6787 ---- 1014 023d EtherExpress PRO/100 VE 1014 0244 EtherExpress PRO/100 VE 1014 0245 EtherExpress PRO/100 VE + 1014 0265 PRO/100 VE Desktop Connection + 1014 0267 PRO/100 VE Desktop Connection + 1014 026a PRO/100 VE Desktop Connection 109f 315d EtherExpress PRO/100 VE 109f 3181 EtherExpress PRO/100 VE + 1179 ff01 PRO/100 VE Network Connection 1186 7801 EtherExpress PRO/100 VE 144d 2602 HomePNA 1M CNR 8086 3010 EtherExpress PRO/100 VE *************** *** 6259,6268 **** 1025 1016 Travelmate 612TX 104d 80df Vaio PCG-FX403 244b 82801BA IDE U100 1043 8027 TUSL2-C Mainboard 147b 0507 TH7II-RAID 244c 82801BAM ISA Bridge (LPC) ! 244e 82801BA/CA/DB PCI Bridge 2450 82801E ISA Bridge (LPC) 2452 82801E USB 2453 82801E SMBus --- 6797,6809 ---- 1025 1016 Travelmate 612TX 104d 80df Vaio PCG-FX403 244b 82801BA IDE U100 + 1014 01c6 Netvista A40/A40p 1043 8027 TUSL2-C Mainboard 147b 0507 TH7II-RAID + 8086 4532 D815EEA2 mainboard + 8086 4557 D815EGEW Mainboard 244c 82801BAM ISA Bridge (LPC) ! 244e 82801BA/CA/DB/EB PCI Bridge 2450 82801E ISA Bridge (LPC) 2452 82801E USB 2453 82801E SMBus *************** *** 6270,6310 **** 245b 82801E IDE U100 245d 82801E Ethernet Controller 1 245e 82801E PCI Bridge ! 2480 82801CA ISA Bridge (LPC) 2482 82801CA/CAM USB (Hub #1) ! 1014 0220 ThinkPad T23 (2647-4MG) or A30p (2653-64G) 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ! 2483 82801CA/CAM SMBus ! 1014 0220 ThinkPad T23 (2647-4MG) or A30p (2653-64G) 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP 2484 82801CA/CAM USB (Hub #2) ! 1014 0220 ThinkPad T23 (2647-4MG) or A30p (2653-64G) 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ! 2485 82801CA/CAM AC'97 Audio ! 1014 0222 ThinkPad T23 (2647-4MG) 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ! 2486 82801CA/CAM AC'97 Modem ! 1014 0223 ThinkPad A30p (2653-64G) 1014 0503 ThinkPad R31 2656BBG 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP 134d 4c21 Dell Inspiron 2100 internal modem 2487 82801CA/CAM USB (Hub #3) ! 1014 0220 ThinkPad T23 (2647-4MG) or A30p (2653-64G) 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP 248a 82801CAM IDE U100 ! 1014 0220 ThinkPad T23 (2647-4MG) or A30p (2653-64G) 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ! 248b 82801CA IDE U100 248c 82801CAM ISA Bridge (LPC) ! 24c0 82801DB ISA Bridge (LPC) 24c2 82801DB USB (Hub #1) ! 24c3 82801DB SMBus 24c4 82801DB USB (Hub #2) ! 24c5 82801DB AC'97 Audio ! 24c6 82801DB AC'97 Modem 24c7 82801DB USB (Hub #3) ! 24cb 82801DB ICH4 IDE ! 24cd 82801DB USB EHCI Controller 2500 82820 820 (Camino) Chipset Host Bridge (MCH) 1028 0095 Precision Workstation 220 Chipset 1043 801c P3C-2000 system chipset --- 6811,6890 ---- 245b 82801E IDE U100 245d 82801E Ethernet Controller 1 245e 82801E PCI Bridge ! 2480 82801CA LPC Interface Controller 2482 82801CA/CAM USB (Hub #1) ! 1014 0220 ThinkPad A/T/X Series 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ! 15d9 3480 P4DP6 ! 8086 1958 vpr Matrix 170B4 ! 2483 82801CA/CAM SMBus Controller ! 1014 0220 ThinkPad A/T/X Series 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP + 15d9 3480 P4DP6 + 8086 1958 vpr Matrix 170B4 2484 82801CA/CAM USB (Hub #2) ! 1014 0220 ThinkPad A/T/X Series 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ! 15d9 3480 P4DP6 ! 8086 1958 vpr Matrix 170B4 ! 2485 82801CA/CAM AC'97 Audio Controller ! 1014 0222 ThinkPad T23 (2647-4MG) or A30p (2653-64G) ! 1014 0508 ThinkPad T30 ! 1014 051c ThinkPad A/T/X Series 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ! 144d c006 vpr Matrix 170B4 ! 2486 82801CA/CAM AC'97 Modem Controller ! 1014 0223 ThinkPad A/T/X Series 1014 0503 ThinkPad R31 2656BBG + 1014 051a ThinkPad A/T/X Series 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP + 1179 0001 Toshiba Satellite 1110 Z15 internal Modem 134d 4c21 Dell Inspiron 2100 internal modem + 144d 2115 vpr Matrix 170B4 internal modem + 14f1 5421 MD56ORD V.92 MDC Modem 2487 82801CA/CAM USB (Hub #3) ! 1014 0220 ThinkPad A/T/X Series 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP + 15d9 3480 P4DP6 + 8086 1958 vpr Matrix 170B4 248a 82801CAM IDE U100 ! 1014 0220 ThinkPad A/T/X Series 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ! 8086 1958 vpr Matrix 170B4 ! 248b 82801CA Ultra ATA Storage Controller ! 15d9 3480 P4DP6 248c 82801CAM ISA Bridge (LPC) ! 24c0 82801DB LPC Interface Controller ! 1462 5800 845PE Max (MS-6580) 24c2 82801DB USB (Hub #1) ! 1462 5800 845PE Max (MS-6580) ! 24c3 82801DB/DBM SMBus Controller ! 1462 5800 845PE Max (MS-6580) 24c4 82801DB USB (Hub #2) ! 1462 5800 845PE Max (MS-6580) ! 24c5 82801DB AC'97 Audio Controller ! 1462 5800 845PE Max (MS-6580) ! 24c6 82801DB AC'97 Modem Controller 24c7 82801DB USB (Hub #3) ! 1462 5800 845PE Max (MS-6580) ! 24ca 82801DBM Ultra ATA Storage Controller ! 24cb 82801DB Ultra ATA Storage Controller ! 1462 5800 845PE Max (MS-6580) ! 24cc 82801DBM LPC Interface Controller ! 24cd 82801DB USB2 ! 1462 3981 845PE Max (MS-6580) Onboard USB EHCI Controller ! 24d0 82801EB LPC Interface Controller ! 24d1 82801EB Ultra ATA Storage Controller ! 24d2 82801EB USB ! 24d3 82801EB SMBus Controller ! 24d4 82801EB USB ! 24d5 82801EB AC'97 Audio Controller ! 24d6 82801EB AC'97 Modem Controller ! 24d7 82801EB USB ! 24db 82801EB Ultra ATA Storage Controller ! 24dc 82801EB LPC Interface Controller ! 24dd 82801EB USB2 ! 24de 82801EB USB 2500 82820 820 (Camino) Chipset Host Bridge (MCH) 1028 0095 Precision Workstation 220 Chipset 1043 801c P3C-2000 system chipset *************** *** 6320,6343 **** 2532 82850 850 (Tehama) Chipset AGP Bridge 2533 82860 860 (Wombat) Chipset AGP Bridge 2534 82860 860 (Wombat) Chipset PCI Bridge ! 2540 e7500 [Plumas] DRAM Controller ! 2541 e7500 [Plumas] DRAM Controller Error Reporting ! 2543 e7500 [Plumas] HI_B Virtual PCI Bridge (F0) ! 2544 e7500 [Plumas] HI_B Virtual PCI Bridge (F1) ! 2545 e7500 [Plumas] HI_C Virtual PCI Bridge (F0) ! 2546 e7500 [Plumas] HI_C Virtual PCI Bridge (F1) ! 2547 e7500 [Plumas] HI_D Virtual PCI Bridge (F0) ! 2548 e7500 [Plumas] HI_D Virtual PCI Bridge (F1) 2560 82845G/GL [Brookdale-G] Chipset Host Bridge 2561 82845G/GL [Brookdale-G] Chipset AGP Bridge 2562 82845G/GL [Brookdale-G] Chipset Integrated Graphics Device 3092 Integrated RAID 3575 82830 830 Chipset Host Bridge ! 1014 021d ThinkPad T23 (2647-4MG) or A30p (2653-64G) 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP 3576 82830 830 Chipset AGP Bridge 3577 82830 CGC [Chipset Graphics Controller] 3578 82830 830 Chipset Host Bridge 5200 EtherExpress PRO/100 Intelligent Server 5201 EtherExpress PRO/100 Intelligent Server 8086 0001 EtherExpress PRO/100 Server Ethernet Adapter --- 6900,6947 ---- 2532 82850 850 (Tehama) Chipset AGP Bridge 2533 82860 860 (Wombat) Chipset AGP Bridge 2534 82860 860 (Wombat) Chipset PCI Bridge ! 2540 E7500 Memory Controller Hub ! 15d9 3480 P4DP6 ! 2541 E7000 Series Host RASUM Controller ! 15d9 3480 P4DP6 ! 2543 E7000 Series Hub Interface B PCI-to-PCI Bridge ! 2544 E7000 Series Hub Interface B RASUM Controller ! 2545 E7000 Series Hub Interface C PCI-to-PCI Bridge ! 2546 E7000 Series Hub Interface C RASUM Controller ! 2547 E7000 Series Hub Interface D PCI-to-PCI Bridge ! 2548 E7000 Series Hub Interface D RASUM Controller ! 254c E7501 Memory Controller Hub ! 2550 E7505 Memory Controller Hub ! 2551 E7000 Series RAS Controller ! 2552 E7000 Series Processor to AGP Controller ! 2553 E7000 Series Hub Interface B PCI-to-PCI Bridge ! 2554 E7000 Series Hub Interface B PCI-to-PCI Bridge RAS Controller ! 255d E7205 Memory Controller Hub 2560 82845G/GL [Brookdale-G] Chipset Host Bridge + 1462 5800 845PE Max (MS-6580) 2561 82845G/GL [Brookdale-G] Chipset AGP Bridge 2562 82845G/GL [Brookdale-G] Chipset Integrated Graphics Device + 2570 82865G/PE/P Processor to I/O Controller + 2571 82865G/PE/P Processor to AGP Controller + 2572 82865G Integrated Graphics Device + 2573 82865G/PE/P Processor to PCI to CSA Bridge + 2576 82864G/PE/P Processor to I/O Memory Interface + 2578 82875P Memory Controller Hub + 2579 82875P Processor to AGP Controller + 257b 82875P Processor to PCI to CSA Bridge + 257e 82875P Processor to I/O Memory Interface 3092 Integrated RAID + 3340 82855PM Processor to I/O Controller + 3341 82855PM Processor to AGP Controller 3575 82830 830 Chipset Host Bridge ! 1014 021d ThinkPad A/T/X Series 104d 80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP 3576 82830 830 Chipset AGP Bridge 3577 82830 CGC [Chipset Graphics Controller] + 1014 0513 ThinkPad A/T/X Series 3578 82830 830 Chipset Host Bridge + 3580 82852/855GM Host Bridge + 3582 82852/855GM Integrated Graphics Device 5200 EtherExpress PRO/100 Intelligent Server 5201 EtherExpress PRO/100 Intelligent Server 8086 0001 EtherExpress PRO/100 Server Ethernet Adapter *************** *** 6353,6358 **** --- 6957,6963 ---- 7113 82371AB/EB/MB PIIX4 ACPI 7120 82810 GMCH [Graphics Memory Controller Hub] 7121 82810 CGC [Chipset Graphics Controller] + 8086 4341 Cayman (CA810) Mainboard 7122 82810 DC-100 GMCH [Graphics Memory Controller Hub] 7123 82810 DC-100 CGC [Chipset Graphics Controller] 7124 82810E DC-133 GMCH [Graphics Memory Controller Hub] *************** *** 6364,6369 **** --- 6969,6975 ---- 7181 440LX/EX - 82443LX/EX AGP bridge 7190 440BX/ZX/DX - 82443BX/ZX/DX Host bridge 0e11 0500 Armada 1750 Laptop System Chipset + 0e11 b110 Armada M700 1179 0001 Toshiba Tecra 8100 Laptop System Chipset 7191 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge 7192 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (AGP disabled) *************** *** 6482,6487 **** --- 7088,7095 ---- 7478 AHA-2944/2944W / AIC-7874 7578 AHA-3944/3944W / AIC-7875 7678 AHA-4944W/UW / AIC-7876 + 7710 ANA-7711F Network Accelerator Card (NAC) - Optical + 7711 ANA-7711C Network Accelerator Card (NAC) - Copper 7778 AIC-787x 7810 AIC-7810 7815 AIC-7815 RAID+Memory Controller IC *************** *** 6558,6572 **** --- 7166,7214 ---- 9005 62a1 19160 Ultra160 SCSI Controller 0083 AIC-7892D U160/m 008f AIC-7892P U160/m + 1179 0001 Magnia Z310 + 15d9 9005 Onboard SCSI Host Adapter 00c0 AHA-3960D / AIC-7899A U160/m 0e11 f620 Compaq 64-Bit/66MHz Dual Channel Wide Ultra3 SCSI Adapter 9005 f620 AHA-3960D U160/m 00c1 AIC-7899B U160/m 00c3 AIC-7899D U160/m 00c5 RAID subsystem HBA + 1028 00c5 PowerEdge 2550 00cf AIC-7899P U160/m + 1028 00d1 PowerEdge 2550 + 10f1 2462 Thunder K7 S2462 + 15d9 9005 Onboard SCSI Host Adapter + 0250 ServeRAID Controller + 1014 0279 ServeRAID-xx + 1014 028c ServeRAID-xx 0285 AAC-RAID 1028 0287 PowerEdge Expandable RAID Controller 320/DC + 8000 ASC-29320A U320 + 800f AIC-7901 U320 + 8010 ASC-39320 U320 + 8011 ASC-32320D U320 + 0e11 00ac U320 + 9005 0041 ASC-39320D U320 + 8012 ASC-29320 U320 + 8013 ASC-29320B U320 + 8014 ASC-29320LP U320 + 801e AIC-7901A U320 + 801f AIC-7902 U320 + 8080 ASC-29320A U320 w/HostRAID + 808f AIC-7901 U320 w/HostRAID + 8090 ASC-39320 U320 w/HostRAID + 8091 ASC-39320D U320 w/HostRAID + 8092 ASC-29320 U320 w/HostRAID + 8093 ASC-29320B U320 w/HostRAID + 8094 ASC-29320LP U320 w/HostRAID + 8095 ASC-39320(B) U320 w/HostRAID + 8096 ASC-39320A U320 w/HostRAID + 8097 ASC-29320ALP U320 w/HostRAID + 809c ASC-39320D(B) U320 w/HostRAID + 809d AIC-7902(B) U320 w/HostRAID + 809e AIC-7901A U320 w/HostRAID + 809f AIC-7902 U320 w/HostRAID 907f Atronics 2015 IDE-2015PL 919a Gigapixel Corp *************** *** 6587,6592 **** --- 7229,7236 ---- aa42 Scitex Digital Video ac1e Digital Receiver Technology Inc b1b3 Shiva Europe Limited + # Pinnacle should be 11bd, but they got it wrong several times --mj + bd11 Pinnacle Systems, Inc. (Wrong ID) c001 TSI Telsys c0a9 Micron/Crucial Technology c0de Motorola *************** *** 6594,6599 **** --- 7238,7246 ---- ca50 Varian Australia Pty Ltd cafe Chrysalis-ITS cccc Catapult Communications + cddd Tyzx, Inc. + 0101 DeepSea 1 High Speed Stereo Vision Frame Grabber + 0200 DeepSea 2 High Speed Stereo Vision Frame Grabber d4d4 Dy4 Systems Inc 0601 PCI Mezzanine Card d531 I+ME ACTIA GmbH *************** *** 6602,6613 **** e000 Winbond e000 W89C940 e159 Tiger Jet Network Inc. ! 0001 Model 300 128k 0059 0001 128k ISDN-S/T Adapter 0059 0003 128k ISDN-U Adapter 0002 Tiger100APC ISDN chipset e4bf EKF Elektronik GmbH ea01 Eagle Technology eabb Aashima Technology B.V. eace Endace Measurement Systems, Ltd 3100 DAG 3.10 OC-3/OC-12 --- 7249,7265 ---- e000 Winbond e000 W89C940 e159 Tiger Jet Network Inc. ! 0001 Intel 537 0059 0001 128k ISDN-S/T Adapter 0059 0003 128k ISDN-U Adapter 0002 Tiger100APC ISDN chipset e4bf EKF Elektronik GmbH ea01 Eagle Technology + # The main chip of all these devices is by Xilinx -> It could also be a Xilinx ID. + ea60 RME + 9896 Digi32 + 9897 Digi32 Pro + 9898 Digi32/8 eabb Aashima Technology B.V. eace Endace Measurement Systems, Ltd 3100 DAG 3.10 OC-3/OC-12 *************** *** 6623,6637 **** 422e DAG 4.2E Dual Gigabit Ethernet ec80 Belkin Corporation ec00 F5D6000 ! ecc0 Echo Corporation edd8 ARK Logic Inc a091 1000PV [Stingray] a099 2000PV [Stingray] a0a1 2000MT a0a9 2000MI fa57 Fast Search & Transfer ASA febd Ultraview Corp. ! feda Epigram Inc fffe VMWare Inc 0710 Virtual SVGA ffff Illegal Vendor ID --- 7275,7303 ---- 422e DAG 4.2E Dual Gigabit Ethernet ec80 Belkin Corporation ec00 F5D6000 ! ecc0 Echo Digital Audio Corporation ! 0050 Gina24_301 ! 0051 Gina24_361 ! 0060 Layla24 ! 0070 Mona_301_80 ! 0071 Mona_301_66 ! 0072 Mona_361 ! 0080 Mia edd8 ARK Logic Inc a091 1000PV [Stingray] a099 2000PV [Stingray] a0a1 2000MT a0a9 2000MI + f1d0 AJA Video + # All boards I have seen have this ID not efac, though all docs say efac... + cafe KONA SD SMPTE 259M I/O + efac KONA SD SMPTE 259M I/O + facd KONA HD SMPTE 292M I/O fa57 Fast Search & Transfer ASA febd Ultraview Corp. ! feda Broadcom Inc (nee Epigram) ! a0fa BCM4210 iLine10 HomePNA 2.0 ! a10e BCM4230 iLine10 HomePNA 2.0 fffe VMWare Inc 0710 Virtual SVGA ffff Illegal Vendor ID diff -Ncr linux-2.4.20-aralion-0.0/drivers/scsi/Config.in linux-2.4.20-aralion-0.1/drivers/scsi/Config.in *** linux-2.4.20-aralion-0.0/drivers/scsi/Config.in 2003-11-26 16:26:07.000000000 +0900 --- linux-2.4.20-aralion-0.1/drivers/scsi/Config.in 2003-11-26 16:30:31.000000000 +0900 *************** *** 205,210 **** --- 205,215 ---- if [ "$CONFIG_X86" = "y" ]; then dep_tristate 'UltraStor SCSI support' CONFIG_SCSI_ULTRASTOR $CONFIG_SCSI fi + if [ "$CONFIG_X86" = "y" ]; then + if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then + dep_tristate 'Ultima RAID 133 support (EXPERIMENTAL)' CONFIG_SCSI_ULTIMARAID133 $CONFIG_SCSI + fi + fi dep_tristate 'Workbit NinjaSCSI-32Bi/UDE support' CONFIG_SCSI_NSP32 $CONFIG_SCSI # # Note - this is a very special 'host' adapter that simulates the presence of some disks. diff -Ncr linux-2.4.20-aralion-0.0/drivers/scsi/Makefile linux-2.4.20-aralion-0.1/drivers/scsi/Makefile *** linux-2.4.20-aralion-0.0/drivers/scsi/Makefile 2003-11-26 16:26:14.000000000 +0900 --- linux-2.4.20-aralion-0.1/drivers/scsi/Makefile 2003-11-26 16:30:32.000000000 +0900 *************** *** 30,35 **** --- 30,36 ---- subdir-m += aic7xxx subdir-$(CONFIG_SCSI_NEWISP) += isp subdir-$(CONFIG_PCMCIA) += pcmcia + subdir-$(CONFIG_SCSI_ULTIMARAID133) += ultimaraid133 obj-$(CONFIG_SCSI) += scsi_mod.o *************** *** 76,81 **** --- 77,85 ---- ifeq ($(CONFIG_SCSI_AIC79XX),y) obj-$(CONFIG_SCSI_AIC79XX) += aic7xxx/aic79xx.o endif + ifeq ($(CONFIG_SCSI_ULTIMARAID133),y) + obj-$(CONFIG_SCSI_ULTIMARAID133) += ultimaraid133/ultimaraid133.o + endif obj-$(CONFIG_SCSI_AIC7XXX_OLD) += aic7xxx_old.o obj-$(CONFIG_SCSI_IPS) += ips.o ifeq ($(CONFIG_SCSI_NEWISP),y) diff -Ncr linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/Makefile linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/Makefile *** linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/Makefile 1970-01-01 09:00:00.000000000 +0900 --- linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/Makefile 2003-11-26 16:30:31.000000000 +0900 *************** *** 0 **** --- 1,16 ---- + # File: drivers/ultimaraid133/Makefile + # Makefile for the Ultima RAID 133 PCI controllers driver. + + list-multi := ultimaraid133.o + ultima133-objs := ultima.o + obj-$(CONFIG_SCSI_ULTIMARAID133) := ultimaraid133.o + + EXTRA_CFLAGS += -I. + + ultimaraid133.o: $(ultima133-objs) + $(LD) -r -o $@ $(ultima133-objs) + + include $(TOPDIR)/Rules.make + + clean: + rm -f *.o diff -Ncr linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/README linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/README *** linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/README 1970-01-01 09:00:00.000000000 +0900 --- linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/README 2003-11-26 16:30:31.000000000 +0900 *************** *** 0 **** --- 1,22 ---- + Ultima RAID 133 Driver for Linux + + Introduction + ------------------------- + Original Driver was supported by Aralion(http://www.aralion.co.kr) + + Supported Cards/Chipsets + ------------------------- + Ultima RAID 133 + + People + ------------------------- + Aralion Linux Dev. (Original ATA ONLY Driver source) + Ashuaria Lee (Patch for Linux Kernel Tree) + + Original Driver + ------------------------- + Aralion Linux Development + + Mailing List + ------------------------- + None yet! diff -Ncr linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/TODO linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/TODO *** linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/TODO 1970-01-01 09:00:00.000000000 +0900 --- linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/TODO 2003-11-26 16:30:31.000000000 +0900 *************** *** 0 **** --- 1,3 ---- + o Testing + o More testing + o Many more diff -Ncr linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/atapi.h linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/atapi.h *** linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/atapi.h 1970-01-01 09:00:00.000000000 +0900 --- linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/atapi.h 2003-11-26 16:30:31.000000000 +0900 *************** *** 0 **** --- 1,300 ---- + #ifndef _ATAPI_H + #define _ATAPI_H + + #ifndef UCHAR + #define UCHAR unsigned char + #define USHORT unsigned short + #define ULONG unsigned long + #endif + + #define IDE_STATUS_ERROR 0x01 + #define IDE_STATUS_INDEX 0x02 + #define IDE_STATUS_CORRECTED_ERROR 0x04 + #define IDE_STATUS_DRQ 0x08 + #define IDE_STATUS_DSC 0x10 + #define IDE_STATUS_DRDY 0x40 + #define IDE_STATUS_IDLE 0x50 + #define IDE_STATUS_BUSY 0x80 + + + #define IDE_ERROR_BAD_BLOCK 0x80 // ICRC :Crc error + #define IDE_ERROR_DATA_ERROR 0x40 // UNC :data error + #define IDE_ERROR_MEDIA_CHANGE 0x20 + #define IDE_ERROR_ID_NOT_FOUND 0x10 // IDNF :sector's ID field error + #define IDE_ERROR_MEDIA_CHANGE_REQ 0x08 + #define IDE_ERROR_COMMAND_ABORTED 0x04 // ABRT :command error + #define IDE_ERROR_END_OF_MEDIA 0x02 + #define IDE_ERROR_ILLEGAL_LENGTH 0x01 + // + // IDE command definitions + // + #define IDE_COMMAND_ATAPI_RESET 0x08 // Don't use! + #define IDE_COMMAND_RECALIBRATE 0x10 + #define IDE_COMMAND_READ 0x20 // <--- + #define IDE_COMMAND_WRITE 0x30 // <--- + #define IDE_COMMAND_VERIFY 0x40 // <--- + #define IDE_COMMAND_SEEK 0x70 + #define IDE_COMMAND_SET_DRIVE_PARAMETERS 0x91 + #define IDE_COMMAND_ATAPI_PACKET 0xA0 // Don't use! + #define IDE_COMMAND_ATAPI_IDENTIFY 0xA1 // Don't use! + #define IDE_COMMAND_READ_MULTIPLE 0xC4 // <--- + #define IDE_COMMAND_WRITE_MULTIPLE 0xC5 // <--- + #define IDE_COMMAND_SET_MULTIPLE 0xC6 + #define IDE_COMMAND_READ_DMA 0xC8 // <--- + #define IDE_COMMAND_WRITE_DMA 0xCA // <--- + #define IDE_COMMAND_GET_MEDIA_STATUS 0xDA + #define IDE_COMMAND_ENABLE_MEDIA_STATUS 0xEF // Feature Set + #define IDE_COMMAND_IDENTIFY 0xEC // <--- + #define IDE_COMMAND_MEDIA_EJECT 0xED + + + //////////////////////////////////KHG133s_Big////////////////////////////////////// + #define IDE_COMMAND_READ_DMA_EXT 0x25 + #define IDE_COMMAND_WRITE_DMA_EXT 0x35 + #define IDE_COMMAND_READ_SECTORS 0x20 + #define IDE_COMMAND_WRITE_SECTORS 0x30 + #define IDE_COMMAND_READ_SECTORS_EXT 0x24 + #define IDE_COMMAND_WRITE_SECTORS_EXT 0x34 + /////////////////////////////////////////////////////////////////////////////////// + // + //DmaCommand bits definition + // + #define DMA_READ 0x07 + #define DMA_WRITE 0x06 + + // + // Mode Register bit definotion + // + #define MODE_PIO 0x00 + #define MODE_DMA 0x01 + #define MODE_UDMA 0x03 + + // + // HDD DMA Mode Support + // + #define DMA_0 0x01 + #define DMA_1 0x03 + #define DMA_2 0x07 + #define UDMA_0 0x08 + #define UDMA_1 0x18 + #define UDMA_2 0x38 + + // + // Multiple sector setting is valid by HBA. + // + #define MULTIPLE_SET 0x0100 + + // + // Device Extension Device Flags + // + #define DFLAGS_DEVICE_PRESENT 0x0001 // Indicates that some device is present. + #define DFLAGS_DMA_DEVICE 0x0002 // Device is a DMA or UDMA device. + #define DFLAGS_PIO_DEVICE 0x0004 // Device is a PIO device. + + // + // Used to disable 'advanced' features. + // + #define MAX_ERRORS 4 // FOR IDE ERROR in MapError() + + #ifdef XXX + typedef struct _IDENTIFY_DATA { + USHORT GeneralConfiguration; // 00 00 + USHORT NumberOfCylinders; // 02 1 + USHORT Reserved1; // 04 2 + USHORT NumberOfHeads; // 06 3 + USHORT UnformattedBytesPerTrack; // 08 4 + USHORT UnformattedBytesPerSector; // 0A 5 + USHORT SectorsPerTrack; // 0C 6 + USHORT VendorUnique1[3]; // 0E 7-9 + USHORT SerialNumber[10]; // 14 10-19 + USHORT BufferType; // 28 20 + USHORT BufferSectorSize; // 2A 21 + USHORT NumberOfEccBytes; // 2C 22 + USHORT FirmwareRevision[4]; // 2E 23-26 + USHORT ModelNumber[20]; // 36 27-46 + UCHAR MaximumBlockTransfer; // 5E 47 + UCHAR VendorUnique2; // 5F + USHORT DoubleWordIo; // 60 48 + USHORT Capabilities; // 62 49 + USHORT Reserved2; // 64 50 + UCHAR VendorUnique3; // 66 51 + UCHAR PioCycleTimingMode; // 67 + UCHAR VendorUnique4; // 68 52 + UCHAR DmaCycleTimingMode; // 69 + USHORT TranslationFieldsValid:1; // 6A 53 + USHORT Reserved3:15; + USHORT NumberOfCurrentCylinders; // 6C 54 + USHORT NumberOfCurrentHeads; // 6E 55 + USHORT CurrentSectorsPerTrack; // 70 56 + ULONG CurrentSectorCapacity; // 72 57-58 + USHORT CurrentMultiSectorSetting; // 59 + ULONG UserAddressableSectors; // 60-61 + USHORT SingleWordDMASupport : 8; // 62 + USHORT SingleWordDMAActive : 8; + USHORT MultiWordDMASupport : 8; // 63 + USHORT MultiWordDMAActive : 8; + USHORT AdvancedPIOModes : 8; // 64 + USHORT Reserved4 : 8; + USHORT MinimumMWXferCycleTime; // 65 + USHORT RecommendedMWXferCycleTime; // 66 + USHORT MinimumPIOCycleTime; // 67 + USHORT MinimumPIOCycleTimeIORDY; // 68 + USHORT Reserved5[2]; // 69-70 + USHORT ReleaseTimeOverlapped; // 71 + USHORT ReleaseTimeServiceCommand; // 72 + USHORT MajorRevision; // 73 + USHORT MinorRevision; // 74 + USHORT Reserved6[11]; // 75-126 + USHORT DmaMode[6]; + USHORT Reserved7[33]; // 75-126 + USHORT SpecialFunctionsEnabled; // 127 + USHORT Reserved8[128]; // 128-255 + } IDENTIFY_DATA, *PIDENTIFY_DATA; + #endif + + // + // IDENTIFY data + // + typedef struct _IDENTIFY_DATA { + USHORT GeneralConfiguration; // 00 00 + USHORT NumberOfCylinders; // 02 1 + USHORT Reserved1; // 04 2 + USHORT NumberOfHeads; // 06 3 + USHORT UnformattedBytesPerTrack; // 08 4 + USHORT UnformattedBytesPerSector; // 0A 5 + USHORT SectorsPerTrack; // 0C 6 + USHORT VendorUnique1[3]; // 0E 7-9 + USHORT SerialNumber[10]; // 14 10-19 + USHORT BufferType; // 28 20 + USHORT BufferSectorSize; // 2A 21 + USHORT NumberOfEccBytes; // 2C 22 + USHORT FirmwareRevision[4]; // 2E 23-26 + USHORT ModelNumber[20]; // 36 27-46 + UCHAR MaximumBlockTransfer; // 5E 47 + UCHAR VendorUnique2; // 5F + USHORT DoubleWordIo; // 60 48 + USHORT Capabilities; // 62 49 + USHORT Reserved2; // 64 50 + UCHAR VendorUnique3; // 66 51 + UCHAR PioCycleTimingMode; // 67 + UCHAR VendorUnique4; // 68 52 + UCHAR DmaCycleTimingMode; // 69 + + UCHAR TranslationFieldsValid; // 6A 53 + UCHAR Reserved3; + /* + USHORT TranslationFieldsValid:3; // 6A 53 + USHORT Reserved3:13; + */ + + USHORT NumberOfCurrentCylinders; // 6C 54 + USHORT NumberOfCurrentHeads; // 6E 55 + USHORT CurrentSectorsPerTrack; // 70 56 + USHORT CurrentSectorCapacity[2]; // 72 57-58 + + /////// Out of spec! //////////// + USHORT CurrentMultiSectorSetting; // 59 + USHORT UserAddressableSectors[2]; // 60-61 + + UCHAR SingleWordDMASupport; // 62 Low + UCHAR SingleWordDMAActive; // High + /* + USHORT SingleWordDMASupport:8; // 62 Low + USHORT SingleWordDMAActive:8; // High + */ + + UCHAR MultiWordDMASupport; // 63 Low + UCHAR MultiWordDMAActive; // High + /* + USHORT MultiWordDMASupport:3; // 63 Low + USHORT MultiWordDMAActive:13; // High + */ + + UCHAR AdvancedPIOModes; // 64 + UCHAR Reserved4; + /* + USHORT AdvancedPIOModes:8; // 64 + USHORT Reserved4:8; + */ + + USHORT MinimumMWXferCycleTime; // 65 + USHORT RecommendedMWXferCycleTime; // 66 + USHORT MinimumPIOCycleTime; // 67 + USHORT MinimumPIOCycleTimeIORDY; // 68 + USHORT Reserved5[2]; // 69-70 + USHORT ReleaseTimeOverlapped; // 71 + USHORT ReleaseTimeServiceCommand; // 72 + USHORT MajorRevision; // 73 + USHORT MinorRevision; // 74 + + //////////////////////////////////KHG-133s_Big//////////////////////////////// + USHORT Reserved6[8]; // 75-82 + USHORT BIT48; // 83 + USHORT Reserved6_1[4]; // 84-87 + ////////////////////////////////////////////////////////////////////////////// + + UCHAR UDMASupport; // 88 + UCHAR UDMASelected; // + /* + USHORT UDMASupport:3; // 88 + USHORT UDMASelected:13; // + */ + + USHORT Reserved7[38]; // 89-126 + USHORT SpecialFunctionsEnabled; // 127 + USHORT Reserved8[128]; // 128-255 + } IDENTIFY_DATA, *PIDENTIFY_DATA; + typedef struct _INQUIRYDATA { + UCHAR DeviceType : 5; + UCHAR DeviceTypeQualifier : 3; + UCHAR DeviceTypeModifier : 7; + UCHAR RemovableMedia : 1; + UCHAR Versions; + UCHAR ResponseDataFormat; + UCHAR AdditionalLength; + UCHAR Reserved[2]; + UCHAR SoftReset : 1; + UCHAR CommandQueue : 1; + UCHAR Reserved2 : 1; + UCHAR LinkedCommands : 1; + UCHAR Synchronous : 1; + UCHAR Wide16Bit : 1; + UCHAR Wide32Bit : 1; + UCHAR RelativeAddressing : 1; + UCHAR VendorId[8]; + UCHAR ProductId[16]; + UCHAR ProductRevisionLevel[4]; + UCHAR VendorSpecific[20]; + UCHAR Reserved3[40]; + } INQUIRYDATA, *PINQUIRYDATA; + + #define DIRECT_ACCESS_DEVICE 0x00 // disks + #define SEQUENTIAL_ACCESS_DEVICE 0x01 // tapes + #define PRINTER_DEVICE 0x02 // printers + #define PROCESSOR_DEVICE 0x03 // scanners, printers, etc + #define WRITE_ONCE_READ_MULTIPLE_DEVICE 0x04 // worms + #define READ_ONLY_DIRECT_ACCESS_DEVICE 0x05 // cdroms + #define SCANNER_DEVICE 0x06 // scanners + #define OPTICAL_DEVICE 0x07 // optical disks + #define MEDIUM_CHANGER 0x08 // jukebox + #define COMMUNICATION_DEVICE 0x09 // network + #define LOGICAL_UNIT_NOT_PRESENT_DEVICE 0x7F + #define DEVICE_QUALIFIER_NOT_SUPPORTED 0x03 + + #define PDTLAR 0X00 + #define PDTHAR 0x02 + #define CMDR 0x04 + #define DMAMODE 0x06 + #define PIO_TIM 0x08 + #define MDM_TIM 0x0a + #define UDM_TIM 0x0c + #define CONSR 0x0e + + #define INTSRC 0x00 + #define CBL_ID 0x02 + #define INTENA 0x04 + #define RAIDSTAT 0x06 + + #endif + + diff -Ncr linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/flash.h linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/flash.h *** linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/flash.h 1970-01-01 09:00:00.000000000 +0900 --- linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/flash.h 2003-11-26 16:30:31.000000000 +0900 *************** *** 0 **** --- 1,64 ---- + #ifndef __FLASH_H__ + #define __FLASH_H__ + + #define VID 0x1538 + #define DID133 0x0303 + #define DID100 0x0301 + + #define F_DATA F_BASE + 0 + #define F_ADDR F_BASE + 2 + #define F_CMDR F_BASE + 4 + #define F_STAT F_BASE + 6 + + #define FCMD_RD 0x86 + #define FCMD_WR 0x87 + + #define FST_SIG 0xAA + #define SND_SIG 0x55 + #define TRD_SIG 0xA0 + #define FTH_SIG 0xf0 + + #define FST_ADR 0x0555 /*0x5555 */ + #define SND_ADR 0x0AAA /*0x2aaa */ + #define TRD_ADR 0x0555 + + #define SECTORCNT 512 + #define BUFFERCNT 128 + + #define MXMANUFAC 0xC2 + #define MXDEVIC 0x19 /* 29F001B */ + #define MXDEVIC1 0x18 /* 29F001T */ + + #define SMMANUFAC 0x40 + #define SMDEVIC 0x01 /* F295001T */ + #define SMDEVIC1 0xA1 /* F295001B */ /* must be lock or unlock */ + + #define AMICMANUFAC 0x37 + #define AMICDEVICE 0xa1 + //#define AMICDEVICE 0xa1 + + #define MPFMANUFAC 0xbf + #define MPFDEVICE1 0xb6 /*SST39SF020A*/ + #define MPFDEVICE 0xb5 /*SST39SF010*/ + + #define AMDMANUFAC 0x01 + #define AMDDEVICE 0x20 /* AM29F010B */ + + + #define ATMANUFAC 0x1F + #define ATDEVIC 0x5D /* AT29C512 */ + #define ATDEVIC1 0x3D /* AT29LV512 */ + #define ATDEVIC2 0xD5 /* AT29C001 */ + #define ATDEVIC3 0x35 /* AT29LV001 */ + #define ATDEVIC4 0xDC /* AT29C256 */ + + #define WIMANUFAC 0xDA + #define WIDEVIC 0xc8 /* W29C512 */ + #define WIDEVIC1 0xC1 /* W29C010 */ + #define WIDEVIC2 0x45 /* W29C020 */ + + #define RAIDTYPE 0x06 + #define CARDCOUNT 0X08 + + #endif + diff -Ncr linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/iocontrol.h linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/iocontrol.h *** linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/iocontrol.h 1970-01-01 09:00:00.000000000 +0900 --- linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/iocontrol.h 2003-11-26 16:30:31.000000000 +0900 *************** *** 0 **** --- 1,146 ---- + ///////////////////////// Ioctl start + /* IoControl.h */ + /* + This header is defined for RAID monitor Util and + should be shared with the App's header. + */ + + // REQUESTs to ULTIMA from GUI. + #define IOCTL_ULTIMA_PRESENT 0x80018001 // ~ ~ ~ ~ 1000 0000 0000 0001 + #define IOCTL_GET_ULTIMA_STATUS 0x80018002 // ~ ~ ~ ~ 1000 0000 0000 0010 + #define IOCTL_EXECUTIVE_COMMAND 0x80018004 // ~ ~ ~ ~ 1000 0000 0000 0100 + #define IOCTL_GET_HDD_FLAGS 0x80018008 // ~ ~ ~ ~ 1000 0000 0000 1000 + #define IOCTL_ULTIMA_RESET 0x80018010 // ~ ~ ~ ~ 1000 0000 0001 0000 + #define IOCTL_GET_ERROR_STATUS 0x80018020 // ~ ~ ~ ~ 1000 0000 0010 0000 + #define IOCTL_UPDATE_IDENTIFY 0x80018040 // ~ ~ ~ ~ 1000 0000 0010 0000 ~~ 2000/06/20 + #define IOCTL_ULTIMA_REBUILD_COMPLETE 0x80018080 // ~~2000/08/02 + #define IOCTL_ULTIMA_REBUILD_CANCEL 0x80018100 // ~~2000/08/11 + #define IOCTL_ULTIMA_MOVE_DATA 0x80018101 // ~~2000/08/11 + #define IOCTL_FLASH_READ 0x80018200 // ~~2000/08/11 + #define IOCTL_FLASH_WRITE 0x80018400 // ~~2000/08/11 + #define IOCTL_TEST_EVENT 0x80018800 + + + typedef struct _SRB_IO_CONTROL { + ULONG HeaderLength; + UCHAR Signature[8]; + ULONG Timeout; + ULONG ControlCode; + ULONG ReturnCode; + ULONG Length; + } SRB_IO_CONTROL, *PSRB_IO_CONTROL; + + typedef struct _SRB_BUFFER { + SRB_IO_CONTROL sic; + UCHAR ucDataBuffer[512]; // Extended DATA BUFFER + } SRB_BUFFER, *PSRB_BUFFER; + + typedef struct _REBUILDSIZE { + DWORD DiskID; + DWORD Size; + } REBUILDSIZE; + + typedef struct _HDD_STATUS { + + USHORT NumberOfCylinders; + USHORT NumberOfHeads; + USHORT SectorsPerTrack; + USHORT VendorUnique1[3]; + USHORT SerialNumber[10]; + USHORT FirmwareRevision[4]; + USHORT ModelNumber[20]; + // USHORT UserAddressableSectors[2]; + DWORD BlockSize; + UCHAR UDMASupport; + UCHAR UDMAPresentMode; + + } HDD_STATUS, *PHDD_STATUS; + + typedef struct _GUI_INTERFACE_B + { + V6INTERFACEB Interface; + HDD_STATUS HddStatus[4][4]; + UCHAR BiosDeviceNum; + UCHAR BiosManufacNum; + } GuiInterface, *PGuiInterface; + + + typedef struct _GUI_INTERFACE_B2 + { + SRB_IO_CONTROL sic; + V6INTERFACEB Interface; + HDD_STATUS HddStatus[4][4]; + UCHAR BiosDeviceNum; + UCHAR BiosManufacNum; + + } GuiInterface2, *PGuiInterface2; + + typedef struct _GUI_FLAG + { + UCHAR IsActingHdd[4][2][2]; + UCHAR IsHereHdd[4][2][2]; + UCHAR RemovedHdd[4][2][2]; + UCHAR RebuildHdd[4][2][2]; + UCHAR SourceHdd[4][2][2]; + ULONG DiskID[4][2][2]; + ULONG Order[4][2][2]; + ULONG RunRebuildTime[16]; + ULONG Reserved; + } GUI_FLAG,*PGUI_FLAG; + + /* + UI Interface´Â À§ ±¸Á¶Ã¼·Î Àü´ÞÇÕ´Ï´Ù.(1Ãʸ¶´Ù °»½Å) + + UCHAR IsActingHdd[CardNumber][TargerId] : Hdd Read/Write Working status + UCHAR IsHereHdd[CardNumber][TargerId] : Hdd Á¸Àç À¯¹« Ç÷¡±×. + UCHAR RebuildHdd[CardNumber][TargerId] : Rebuild´çÇÏ´Â Hdd + UCHAR SourceHdd[CardNumber][TargerId] : Source Hdd + ULONG RunRebuildTime; : RebuildÇØ¾ßÇÒ ½ÃÁ¡¿¡ TRUE¼ÂÆÃ. + */ + + + typedef struct _GUI_FLAG2 + { + SRB_IO_CONTROL sic; + UCHAR IsActingHdd[4][4]; + UCHAR IsHereHdd[4][4]; + UCHAR RebuildHdd[4][4]; + UCHAR SourceHdd[4][4]; + ULONG RunRebuildTime; + ULONG Reserved; + } GUI_FLAG2,*PGUI_FLAG2; + + typedef struct _MOVEDATA_ + { + DWORD DiskID; + UCHAR SourceCard; + UCHAR SourceTargetId; + UCHAR TargetCard; + UCHAR TargetTargetId; + ULONG LbaAddress; + ULONG Size; + }MOVEDATA,*PMOVEDATA; + + + // + // Define SCSI maximum configuration parameters. + // + + #define SCSI_MAXIMUM_LOGICAL_UNITS 8 + #define SCSI_MAXIMUM_TARGETS_PER_BUS 32 + #define SCSI_MAXIMUM_BUSES 8 + #define SCSI_MINIMUM_PHYSICAL_BREAKS 16 + #define SCSI_MAXIMUM_PHYSICAL_BREAKS 255 + + // + // This constant is for backward compatibility. + // This use to be the maximum number of targets supported. + // + + #define SCSI_MAXIMUM_TARGETS 8 + + // begin_ntminitape + + #define MAXIMUM_CDB_SIZE 12 + + // end_ntminitape diff -Ncr linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/ultima.c linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/ultima.c *** linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/ultima.c 1970-01-01 09:00:00.000000000 +0900 --- linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/ultima.c 2003-11-26 16:30:31.000000000 +0900 *************** *** 0 **** --- 1,1931 ---- + /******************************************************************* + + Aralion Ultima ATA133 IDE Raid Controller + Linux Device Driver source, programmed by soonsoo@hitel.net + + *******************************************************************/ + //#define __BOOT_KERNEL_BOOT 1 + + //#define DEBUG1 1 + //#define DEBUG2 1 + //#define DEBUG3 1 + //#define DEBUG4 1 + + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include "../scsi.h" + #include "../hosts.h" + #include "../sd.h" + #include "ultima.h" + #include "atapi.h" + #include + #include + #include + #include /* for CONFIG_PCI */ + #include + #include /* for put_user_byte */ + #include + #include + #include "iocontrol.h" + #include "flash.h" + + #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0) + #define KERNEL240 + #else + #define KERNEL220 + #endif + + #define S_BOARD(x,y) (DiskID[x].DiskStatus.BoardID) + #define S_CHAN(x,y) (DiskID[x].DiskStatus.Channel) + #define S_DRV(x,y) (DiskID[x].DiskStatus.Drive) + #define RAID(x) (DiskID[x].RaidStatus) + #define DEG printk("<1> "__FUNCTION__": %d\n",__LINE__) + //////////////////////////////////////////////////////////////////////////////// + + static void print_banner(struct Scsi_Host *shpnt); + char * GetCmdName(char code); + static void print_banner(struct Scsi_Host *shpnt); + static void do_pause(ULONG amount); + static int aralion_pci_bios_detect(int *irq); + ULONG GetBlockCount(int BoardID,int channel,int drive); + int RequestAllIrq(void); + void PutLBAvalue(ULONG IOPort1, + ULONG lba, + ULONG numsectors, + ULONG DriveSelect); + void DisableInterrupt(int BoardID); + void EnableInterrupt(int BoardID); + ULONG SetBoardInterruptFlag(int BoardID,int Channel,DWORD Status); + ULONG SetScatterList(Scsi_Cmnd *SCpnt, + ULONG lba, + ULONG numsectors, + ULONG ReadWrite); + void SetIOPort(DISKLIST *pList,USHORT DmaRW,DWORD OrderFlag); + void SetIOInformation(int tid,USHORT DmaRW,DWORD OrderFlag); + ULONG PutOneScatterList(ULONG CurrentID, + DWORD PrimaryDiskArrayCount, + DISKLIST *PrimaryDiskArray, + ULONG lba, + ULONG buffer, + USHORT length); + void SetIDECommand(DWORD Command, DWORD order); + DWORD BigDiskCommand (DWORD cmnd); + void SetDMACommand(USHORT DmaRW,DWORD OrderFlag); + static int ReadDMA(Scsi_Cmnd * SCpnt, + ULONG lba, + ULONG numsectors); + static int WriteDMA(Scsi_Cmnd * SCpnt, + ULONG lba, + ULONG numsectors); + void GetUDMAMode(USHORT *mode, + USHORT *Timing, + IDENTIFY_DATA * IdentifyData); + void SetUDMAMode(int BoardID, int Channel, int Drive); + static int IdentifyDisk(int BoardID, + int Channel, + int DriveSelect, + IDENTIFY_DATA * IdentifyData); + static void my_done(int error); + int CheckScsiError(ULONG Channel,ULONG IOPort1,UCHAR statusByte); + void CheckJobFinished(ULONG BoardID,ULONG Channel); + int IsSplitter(char c); + int ultima_1cardreset(int BoardID); + int ultima_cardreset(void); + void do_ultima_intr(int irq, void *dev_id, struct pt_regs *regs); + void internal_done(Scsi_Cmnd * SCpnt); + void print_info(Scsi_Cmnd * SCpnt); + + //////////////////////////////////////////////////////////////////////////////// + + struct proc_dir_entry proc_scsi_aralion = { + 0x10, 7, "aralion", + S_IFDIR | S_IRUGO | S_IXUGO, 2 + }; + + Scsi_Host_Template driver_template = ULTIMA_DMA133; + + #define VERSION "$Revision: LH 1.11BCS $" + + enum { + in_arbitration = 0x02, + in_selection = 0x04, + in_other = 0x08, + disconnect = 0x10, + aborted = 0x20, + sent_ident = 0x40, + }; + + typedef struct { + char name[23]; + char code; + } CMDNAME; + + CMDNAME CmdName[] = + { + {"TEST_UNIT_READY",0x00}, + {"REZERO_UNIT",0x01}, + {"REQUEST_SENSE",0x03}, + {"FORMAT_UNIT",0x04}, + {"READ_BLOCK_LIMITS",0x05}, + {"REASSIGN_BLOCKS",0x07}, + {"READ_6",0x08}, + {"WRITE_6",0x0a}, + {"SEEK_6",0x0b}, + {"READ_REVERSE",0x0f}, + {"WRITE_FILEMARKS",0x10}, + {"SPACE",0x11}, + {"INQUIRY",0x12}, + {"RECOVER_BUFFERED_DATA",0x14}, + {"MODE_SELECT",0x15}, + {"RESERVE",0x16}, + {"RELEASE",0x17}, + {"COPY",0x18}, + {"ERASE",0x19}, + {"MODE_SENSE",0x1a}, + {"START_STOP",0x1b}, + {"RECEIVE_DIAGNOSTIC",0x1c}, + {"SEND_DIAGNOSTIC",0x1d}, + {"ALLOW_MEDIUM_REMOVAL",0x1e}, + {"SET_WINDOW",0x24}, + {"READ_CAPACITY",0x25}, + {"READ_10",0x28}, + {"WRITE_10",0x2a}, + {"SEEK_10",0x2b}, + {"WRITE_VERIFY",0x2e}, + {"VERIFY",0x2f}, + {"SEARCH_HIGH",0x30}, + {"SEARCH_EQUAL",0x31}, + {"SEARCH_LOW",0x32}, + {"SET_LIMITS",0x33}, + {"PRE_FETCH",0x34}, + {"READ_POSITION",0x34}, + {"SYNCHRONIZE_CACHE",0x35}, + {"LOCK_UNLOCK_CACHE",0x36}, + {"READ_DEFECT_DATA",0x37}, + {"MEDIUM_SCAN",0x38}, + {"COMPARE",0x39}, + {"COPY_VERIFY",0x3a}, + {"WRITE_BUFFER",0x3b}, + {"READ_BUFFER",0x3c}, + {"UPDATE_BLOCK",0x3d}, + {"READ_LONG",0x3e}, + {"WRITE_LONG",0x3f}, + {"CHANGE_DEFINITION",0x40}, + {"WRITE_SAME",0x41}, + {"READ_TOC",0x43}, + {"LOG_SELECT",0x4c}, + {"LOG_SENSE",0x4d}, + {"MODE_SELECT_10",0x55}, + {"RESERVE_10",0x56}, + {"RELEASE_10",0x57}, + {"MODE_SENSE_10",0x5a}, + {"PERSISTENT_RESERVE_IN",0x5e}, + {"PERSISTENT_RESERVE_OUT",0x5f}, + {"MOVE_MEDIUM",0xa5}, + {"READ_12",0xa8}, + {"WRITE_12",0xaa}, + {"WRITE_VERIFY_12",0xae}, + {"SEARCH_HIGH_12",0xb0}, + {"SEARCH_EQUAL_12",0xb1}, + {"SEARCH_LOW_12",0xb2}, + {"READ_ELEMENT_STATUS",0xb8}, + {"SEND_VOLUME_TAG",0xb6}, + {"WRITE_LONG_2",0xea} + }; + + //////////////////////////////////////////////////////////////////////////////// + static volatile int internal_done_flag = 0; + static volatile int internal_done_errcode = 0; + static Scsi_Cmnd *current_SC = NULL; + static int this_id = 31; + V6INTERFACEB V6; + static _DiskIDTable DiskID[16]; + static DISKRWINFO DiskRWInfo[MAXBOARD][2][2]; + static IDENTIFY_DATA DiskIdentifyData[MAXBOARD][2][2]; + static int gBoardCount = 0; + IrqID ultimaID[MAXBOARD]; + BOARDTABLE BoardInfo[MAXBOARD]; + static int IrqFlag[32] = {0,}; + static int DiskCount = 0; + ULONG LastErrorBlock,LastErrorCode; + static ULONG RWStatus; + static ULONG OrderStatus; + static ULONG CurrentDisk; + static int interrupt_level = 0; + static int HddConnected[MAXBOARD][2][2]; + static int HddSupportMode[MAXBOARD][2][2]; + + ///////////////////////////////////////////////// + #define IOCTL_LOCK 1 + static int in_ioctl = 0; + static int in_command = 0; + unsigned long LockValue = 0; + static DECLARE_WAIT_QUEUE_HEAD (WaitingQ); + + ///////////////////////////////////////////////// + UCHAR BiosManufacture = 0; + UCHAR cDeviceCode = 0; + UCHAR cFlashFlag = 0; + UCHAR *Buffer; + char *GetCmdName(char code) + { + int i; + int count; + char *s = "unknown function"; + + count = sizeof(CmdName) / sizeof(CMDNAME); + + for(i=0;ithis_id); + + if (interrupt_level) + printk(" int %d", interrupt_level); + else + printk(""); + + printk("\n"); + } + + static void aralion_setup(char *str, int *ints) + { + this_id = 31; + } + + + /* Pause for amount*10 milliseconds */ + static void do_pause(ULONG amount) + { + do + { + udelay(10 * 1000); + } + while (--amount); + } + + inline static void aralion_make_bus_idle(void) + { + } + + static int aralion_is_valid_port(int port) + { + return 0; + } + + static int aralion_test_loopback(void) + { + return 0; + } + + static int aralion_pci_bios_detect(int *irq) + { + struct pci_dev *pdev = NULL; + + if (!pci_present()) + return 0; + + memset(BoardInfo,0,sizeof(BoardInfo)); + + do { + if ((pdev = pci_find_device(ARALION_VENDOR, ULTIMA_DEVICE, pdev)) != NULL) { + // printk("Find %d device\n",gBoardCount); + // BoardInfo[gBoardCount].BoardExist = 1; + + #ifdef KERNEL240 + BoardInfo[gBoardCount].PrimaryIO + = (ULONG) pci_resource_start(pdev,0); + BoardInfo[gBoardCount].SecondaryIO + = (ULONG) (BoardInfo[gBoardCount].PrimaryIO)+0x10; + BoardInfo[gBoardCount].PrimaryDmaIO + = (ULONG) (BoardInfo[gBoardCount].PrimaryIO)+0x20; + BoardInfo[gBoardCount].SecondaryDmaIO + = (ULONG) (BoardInfo[gBoardCount].PrimaryIO)+0x30; + BoardInfo[gBoardCount].ControlRegister + = (ULONG) (BoardInfo[gBoardCount].PrimaryIO)+0x40; + BoardInfo[gBoardCount].FlashMemory + = (ULONG) (BoardInfo[gBoardCount].PrimaryIO)+0x50; + #else + BoardInfo[gBoardCount].PrimaryIO + = (ULONG) pdev->base_address[0] & PCI_BASE_SDDRESS_IO_MASK; + BoardInfo[gBoardCount].SecondaryIO + = (ULONG) (BoardInfo[gBoardCount].PrimaryIO)+0x10; + BoardInfo[gBoardCount].PrimaryDmaIO + = (ULONG) (BoardInfo[gBoardCount].PrimaryIO)+0x20; + BoardInfo[gBoardCount].SecondaryDmaIO + = (ULONG) (BoardInfo[gBoardCount].PrimaryIO)+0x30; + BoardInfo[gBoardCount].ControlRegister + = (ULONG) (BoardInfo[gBoardCount].PrimaryIO)+0x40; + BoardInfo[gBoardCount].FlashMemory + = (ULONG) (BoardInfo[gBoardCount].PrimaryIO)+0x50; + #endif + + BoardInfo[gBoardCount].interrupt_level = pdev->irq; + + request_region(BoardInfo[gBoardCount].PrimaryIO, 0x10, "aralion"); + request_region(BoardInfo[gBoardCount].SecondaryIO, 0x10, "aralion"); + request_region(BoardInfo[gBoardCount].PrimaryDmaIO, 0x10, "aralion"); + request_region(BoardInfo[gBoardCount].SecondaryDmaIO, 0x10, "aralion"); + request_region(BoardInfo[gBoardCount].ControlRegister, 0x10, "aralion"); + request_region(BoardInfo[gBoardCount].FlashMemory,0x8, "aralion"); + + if (!gBoardCount) + *irq = pdev->irq; + + gBoardCount++; + } + } while(pdev != NULL); + + + if (!gBoardCount) { + printk("Ultima Board not found\n"); + return 0; + } + + interrupt_level = BoardInfo[0].interrupt_level; + return 1; + } + + ULONG GetBlockCount(int BoardID,int channel,int drive) + { + int i; + ULONG nCount; + UCHAR *p; + p = (char *) &(DiskIdentifyData[BoardID][channel][drive]); + if(DiskIdentifyData[BoardID][channel][drive].BIT48 & 0x0400) + nCount = *((ULONG *) (p + 200)); + else + nCount = *((ULONG *) (p + 120)); + return nCount; + } + + int RequestAllIrq(void) + { + int i; + int irq; + int retcode; + + for(i=0;i IRQ %d is bad!\n", irq); + printk(" This shouldn't happen!\n"); + printk(" Send mail to faith@acm.org\n"); + } + else if (retcode == -EBUSY) { + printk("scsi: IRQ %d is already in use!\n",irq); + printk(" Please use another IRQ!\n"); + } + else { + printk("scsi: Error getting IRQ %d\n",irq); + printk(" This shouldn't happen!\n"); + printk(" Send mail to faith@acm.org\n"); + } + printk("scsi: Detected, but driver not loaded (IRQ)\n"); + + return retcode; + } + } + } + return 0; + } + + int ultima_detect(Scsi_Host_Template * tpnt) + { + int retcode; + struct Scsi_Host *shpnt; + int i, j, statusByte; + int flag = 0; + ULONG IOPort; + + tpnt->proc_dir = &proc_scsi_aralion; + flag = aralion_pci_bios_detect(&interrupt_level); + + if (!flag) { + printk("scsi: Ultima not found\n"); + return 0; + } + + memset(&DiskID,0,sizeof(DiskID)); + memset(&DiskRWInfo,0,sizeof(DiskRWInfo)); + memset(&DiskIdentifyData,0,sizeof(DiskIdentifyData)); + DiskCount = 0; + + for(i=0;ithis_id = (this_id & 0x1f); + + /* Print out a banner here in case we can't + get resources. */ + shpnt = scsi_register(tpnt, 0); + shpnt->irq = interrupt_level; + shpnt->io_port = BoardInfo[0].ControlRegister; + shpnt->n_io_port = 0x10; + // print_banner(shpnt); + + if (!interrupt_level) + { + printk("scsi: " + " Card Detected, but driver not loaded (no IRQ)\n"); + return 0; + } + else + { + /* Register the IRQ with the kernel */ + if (RequestAllIrq()) + return 0; + } + + for(i=0;i ",i,d1); + } + printk("\n"); + } + #endif + + inline DISKRWINFO *GetRWInfoPointer(DISKLIST *pDiskList) + { + return (DISKRWINFO *) &DiskRWInfo[pDiskList->BoardID][pDiskList->Channel][pDiskList->Drive]; + } + + void PutLBAvalue(ULONG IOPort1,ULONG lba,ULONG numsectors, + ULONG DriveSelect) + { + UCHAR Data[4]; + /////////////////////////////KHG-133s_Big//////////////////////////////// + if(lba >= 0x10000000){ + Data[0] = (lba & 0xff000000 ) >> 24; + Data[1] = 0; + Data[2] = 0; + outb(0,IOPort1 + BlockCountPort); + outb(Data[0],IOPort1 + BlockNumberPort); + outb(Data[1],IOPort1 + CylinderLowPort); + outb(Data[2],IOPort1 + CylinderHighPort); + Data[0] = (lba & 0x000000ff); + Data[1] = (lba & 0x0000ff00) >> 8; + Data[2] = (lba & 0x00ff0000) >> 16; + Data[3] = (DriveSelect << 4) | 0xe0; + outb(numsectors,IOPort1 + BlockCountPort); + outb(Data[0],IOPort1 + BlockNumberPort); + outb(Data[1],IOPort1 + CylinderLowPort); + outb(Data[2],IOPort1 + CylinderHighPort); + outb(Data[3],IOPort1 + DriveSelectPort); + } + else{ + Data[0] = (lba & 0x000000ff); + Data[1] = (lba & 0x0000ff00) >> 8; + Data[2] = (lba & 0x00ff0000) >> 16; + Data[3] = (lba & 0x0f000000) >> 24; + Data[3] = Data[3] | 0x40 | (DriveSelect << 4) | 0xa0; + + outb(numsectors,IOPort1 + BlockCountPort); + outb(Data[0],IOPort1 + BlockNumberPort); + outb(Data[1],IOPort1 + CylinderLowPort); + outb(Data[2],IOPort1 + CylinderHighPort); + outb(Data[3],IOPort1 + DriveSelectPort); + } + ///////////////////////////////////////////////////////////////////////// + } + + void DisableInterrupt(int BoardID) + { + USHORT Intena; + + // Intena = inw(BoardInfo[BoardID].ControlRegister + INTENA); + // Intena = Intena & 0xfe; + Intena = 0; + outw(Intena,BoardInfo[BoardID].ControlRegister + INTENA); + } + + void EnableInterrupt(int BoardID) + { + USHORT Intena; + + // Intena = inw(BoardInfo[BoardID].ControlRegister + INTENA); + // Intena = Intena | 0x01; + Intena = 0x03; //KHG + + // printk("EI : %d\n",BoardID); + outw(Intena,BoardInfo[BoardID].ControlRegister + INTENA); + // printk("EI2 : %d\n",BoardID); + } + + // int SetBoardInterruptFlag(int BoardID,int Channel,DWORD Status) + ULONG SetBoardInterruptFlag(int BoardID,int Channel,DWORD Status) + { + ////////////////////////////////////KHG-133s//////////////////////////////////// + ULONG TempStatus; + Channel = 0; + + if (BoardInfo[BoardID].InterruptFlag[Channel] & Status) { + TempStatus = BoardInfo[BoardID].InterruptFlag[Channel] & 0x00001111; + if(TempStatus & 0x00001100){ + BoardInfo[BoardID].InterruptFlag[Channel] |= 0x00001000; + return 0x00001000; + } + else if(TempStatus & 0x00000010){ + BoardInfo[BoardID].InterruptFlag[Channel] |= 0x00000100; + return 0x00000100; + } + else { + BoardInfo[BoardID].InterruptFlag[Channel] |= 0x00000010; + return 0x000000010; + } + } + else { + BoardInfo[BoardID].InterruptFlag[Channel] = (Status | ORDER_ONE); + return 0; + } + } + + ULONG SetScatterList( Scsi_Cmnd * SCpnt, + ULONG lba, + ULONG numsectors, + ULONG ReadWrite) + { + struct scatterlist *slp; + int i,j; + PPDT_TABLE pPDTTable; + DISKRWINFO *pRWInfo,*pRWInfo2; + int tid = SCpnt->target; + DWORD RaidStatus; + ULONG TempFlag; + + RaidStatus = RAID(tid); + + pRWInfo = (DISKRWINFO *) &DiskRWInfo[S_BOARD(tid,0)][S_CHAN(tid,0)][S_DRV(tid,0)]; + + pRWInfo->StartLba = lba; + pRWInfo->ListCount = 0; + pRWInfo->NumSectors = 0; + pPDTTable = pRWInfo->ScatterList; + if (SCpnt->use_sg) { + slp = (struct scatterlist *) SCpnt->request_buffer; + for(i=0;iuse_sg;i++,slp++) { + pPDTTable[i].address = virt_to_bus(slp->address); + pPDTTable[i].length = slp->length; + pPDTTable[i].EndOfChain = 0; + pRWInfo->NumSectors += slp->length; + } + pPDTTable[i - 1].EndOfChain = 0x80; + pRWInfo->ListCount = SCpnt->use_sg; + } + else { + pPDTTable[0].address = virt_to_bus(SCpnt->request_buffer); + pPDTTable[0].length = SCpnt->request_bufflen; + pPDTTable[0].EndOfChain = 0x80; + pRWInfo->NumSectors = SCpnt->request_bufflen; + pRWInfo->ListCount = 1; + } + + pRWInfo->NumSectors /= 512; + + pRWInfo->InterruptFlag = ReadWrite | ORDER_ONE; + SetBoardInterruptFlag(S_BOARD(tid,0),S_CHAN(tid,0),ReadWrite); + } + + void PrintPDT(PPDT_TABLE pPDTTable,int count) + { + int i; + + for(i=0;iBoardID; + Channel = pList->Channel; + Drive = pList->Drive; + + pRWInfo = (DISKRWINFO *) &DiskRWInfo[pList->BoardID][pList->Channel][pList->Drive]; + if (!(OrderFlag & pRWInfo->InterruptFlag)) { + return ; + } + + if(Channel == 0) + { + SelectFirstChannel(BoardID); + } + else + { + SelectSecondChannel(BoardID); + } + pPDTTable = BoardInfo[BoardID].PriScatterList; + IOPort1 = BoardInfo[BoardID].PrimaryIO; + DmaIO = BoardInfo[BoardID].PrimaryDmaIO; + memcpy(pPDTTable,pRWInfo->ScatterList,pRWInfo->ListCount * sizeof(PDT_TABLE)); + BoardInfo[BoardID].ListCount = pRWInfo->ListCount; + BoardInfo[BoardID].NumSectors = pRWInfo->NumSectors; + BoardInfo[BoardID].StartLba = pRWInfo->StartLba; + + AddressLow = virt_to_bus(pPDTTable) & 0x0000ffff; + AddressHi = (virt_to_bus(pPDTTable) & 0xffff0000) >> 16; + + outw(AddressLow,DmaIO + PDTLAR); + outw(AddressHi,DmaIO + PDTHAR); + + PutLBAvalue( + IOPort1, + BoardInfo[BoardID].StartLba, + BoardInfo[BoardID].NumSectors, + Drive); + } + + void SetIOInformation(int tid,USHORT DmaRW,DWORD OrderFlag) + { + DISKRWINFO *pRWInfo = GetRWInfoPointer(&DiskID[tid].DiskStatus); + if (pRWInfo->ListCount) { + SetIOPort(&DiskID[tid].DiskStatus,DmaRW,OrderFlag); + } + } + + + void SetIDECommand(DWORD Command, DWORD OrderFlag) + { + int i,j; + + for(i=0;i= 0x10000000) + Command=BigDiskCommand(Command); + outb(Command,BoardInfo[i].PrimaryIO + CommandPort); + } + /* + if (BoardInfo[i].InterruptFlag[1] & OrderFlag) { + if(BoardInfo[i].StartLba >= 0x10000000) + Command=BigDiskCommand(Command); + outb(Command,BoardInfo[i].SecondaryIO + CommandPort); + } + */ + } + } + + DWORD BigDiskCommand (DWORD cmnd) + { + switch(cmnd){ + case IDE_COMMAND_READ_DMA: + return IDE_COMMAND_READ_DMA_EXT; + case IDE_COMMAND_WRITE_DMA: + return IDE_COMMAND_WRITE_DMA_EXT; + } + // Added 2003/11/09 by Ashuaria Lee + #warning I dont know what to do... + return cmnd; + } + + void SetDMACommand(USHORT DmaRW,DWORD OrderFlag) + { + ULONG DmaIO; + int i,j,k; + + for(i=0;itarget,DMA_READ,ORDER_ONE); + RWStatus = READ_STATUS; + OrderStatus = ORDER_ONE; + SetIDECommand(IDE_COMMAND_READ_DMA,ORDER_ONE); + SetDMACommand(DMA_READ,ORDER_ONE); + return 0; + } + + static int WriteDMA( + Scsi_Cmnd * SCpnt, + ULONG lba, + ULONG numsectors) + { + int i; + unsigned long flags; + + if (numsectors == 0) { + my_done(DID_ABORT << 16); + return ERROR_INVALID_SECTORCOUNT; + } + SetScatterList(SCpnt,lba,numsectors,WRITE_STATUS); + SetIOInformation(SCpnt->target,DMA_WRITE,ORDER_ONE); + RWStatus = WRITE_STATUS; + OrderStatus = ORDER_ONE; + + SetIDECommand(IDE_COMMAND_WRITE_DMA,ORDER_ONE); + SetDMACommand(DMA_WRITE,ORDER_ONE); + + return 0; + } + + void GetUDMAMode(USHORT *mode,USHORT *Timing, + IDENTIFY_DATA * IdentifyData) + { + + if(IdentifyData->UDMASupport & 0x40){ + *mode = 0x46; // mode 6 + *Timing = 0xff22; // mode 6 + } + else if(IdentifyData->UDMASupport & 0x20){ + *mode = 0x45; // mode 5 + *Timing = 0xff33; // mode 5 + } + else if(IdentifyData->UDMASupport & 0x10){ + *mode = 0x44; // mode 4 + *Timing = 0xff44; // mode 4 + } + else if(IdentifyData->UDMASupport & 0x08){ + *mode = 0x43; // mode 3 + *Timing = 0xff55; // mode 3 + } + else if(IdentifyData->UDMASupport & 0x04){ + *mode = 0x42; // mode 2 + *Timing = 0xff66; // mode 2 + } + else if(IdentifyData->UDMASupport & 0x02){ + *mode = 0x41; // mode 1 + *Timing = 0xff77; // mode 1 + } + else if(IdentifyData->UDMASupport & 0x01){ + *mode = 0x40; // mode 0 + *Timing = 0xff88; // mode 0 + } + #ifdef _7878_ + *mode = 0x44; // mode 4 + *Timing = 0x7878; // safe mode + #endif + } + + void SetUDMAMode(int BoardID, int Channel, int Drive) + { + USHORT mode[3],Timing[3]; + ULONG IOPort1; + ULONG DmaIO; + char statusByte=0; + int i; + + if(Channel == 0) + { + SelectFirstChannel(BoardID); + } + else + { + SelectSecondChannel(BoardID); + } + IOPort1 = BoardInfo[BoardID].PrimaryIO; + DmaIO = BoardInfo[BoardID].PrimaryDmaIO; + + + if(HddConnected[BoardID][Channel][Drive]>0) + { + mode[0] = 0xffff; + Timing[0] = 0xffff; + GetUDMAMode(&mode[0],&Timing[0],&DiskIdentifyData[BoardID][Channel][Drive]); + // printk("udma mode value = %x\n",mode[0]); + if(mode[0] == 0xffff) + return; + outb(0xA0 + (Drive << 4),IOPort1 + DriveSelectPort); + for(i=0;i<10000;i++) + { + GetBaseStatus(IOPort1, statusByte); + udelay(100); + if(statusByte & IDE_STATUS_BUSY) + continue; + else + break; + } + outb(0xA0 + (Drive << 4),IOPort1 + DriveSelectPort); + outb(mode[0],IOPort1 + BlockCountPort); + outb(0x03,IOPort1 + ErrorPort); + outb(IDE_COMMAND_ENABLE_MEDIA_STATUS,IOPort1 + CommandPort); + for(i=0;i<10000;i++) + { + GetBaseStatus(IOPort1, statusByte); + udelay(100); + if(statusByte & IDE_STATUS_BUSY) + continue; + else + break; + } + if(statusByte == 0x50 || statusByte == 0x40) + { + HddSupportMode[BoardID][Channel][Drive] = (((mode[0] << 8) | 0xff) & Timing[0]); + // printk("SetUDMA: SupportMode = %0.4x\n", HddSupportMode[BoardID][Channel][Drive]); + } + } + mdelay(5); + for(i=0;i<10;i++) + { + GetBaseStatus(IOPort1, statusByte); + if(statusByte & IDE_STATUS_IDLE) + break; + else + mdelay(2); + } + } + + static int IdentifyDisk( + int BoardID, + int Channel, + int DriveSelect, + IDENTIFY_DATA * IdentifyData) + { + ULONG IOPort1,DmaIO,ControlRegister; + UCHAR statusByte; + USHORT *pIdentifyData; + int i, j; + int flag = 0; + + if(Channel == 0) + { + SelectFirstChannel(BoardID); + } + else + { + SelectSecondChannel(BoardID); + } + IOPort1 = BoardInfo[BoardID].PrimaryIO; + DmaIO = BoardInfo[BoardID].PrimaryDmaIO; + ControlRegister = BoardInfo[BoardID].ControlRegister; + outb(((DriveSelect << 4) | 0xA0), IOPort1 + DriveSelectPort); + + for (i=0;i<1000;i++) + { + udelay(10); + GetBaseStatus(IOPort1, statusByte); + if (!(statusByte & 0x80)) + break; + } + outb(((DriveSelect << 4) | 0xA0), IOPort1 + DriveSelectPort); + mdelay(50); + GetBaseStatus(IOPort1, statusByte); + outb(((DriveSelect << 4) | 0xA0), IOPort1 + DriveSelectPort); + mdelay(50); + GetBaseStatus(IOPort1, statusByte); + if(statusByte != 0x50) + { + outb(0x08, IOPort1 + CommandPort); //Device reset + for(i=0; i<3; i++) // KHG_20020731 + { + mdelay(100); + outb(((DriveSelect << 4) | 0xA0), IOPort1 + DriveSelectPort); + GetBaseStatus(IOPort1, statusByte); + if(statusByte != 0x50) + { + outb(0x04, IOPort1 + 0x0e); + mdelay(100); + outb(0x00, IOPort1 + 0x0e); + } + else + { + break; + } + } + } + mdelay(50); + statusByte = statusByte & 0xc9; + if (statusByte != IDE_STATUS_DRDY) + { + return 0; + } + + + label1: + for (j = 0; j < 2; j++) + { + WaitOnBusy(IOPort1, statusByte); + outb(IDE_COMMAND_IDENTIFY, IOPort1 + CommandPort); + + for (i = 0; i < 4; i++) + { + WaitForDrq(IOPort1, statusByte); + if (statusByte & IDE_STATUS_DRQ) + { + GetBaseStatus(IOPort1, statusByte); + break; + } + WaitOnBusy(IOPort1, statusByte); + } + if (i == 4 && j == 0) + { + return 0; + } + else + { + break; + } + } // end of for (j = 0; j < 2; j++) + + + if (statusByte & IDE_STATUS_ERROR) + { + return 0; + } + + WaitOnBusy(IOPort1, statusByte); + + + if (!(statusByte & IDE_STATUS_DRQ)) + { + return 0; + } + + pIdentifyData = (USHORT *) IdentifyData; + + outb(((DriveSelect << 4) | 0xA0), IOPort1 + DriveSelectPort); + mdelay(50); + GetBaseStatus(IOPort1, statusByte); + for (i = 0; i < 256; i++) + { + pIdentifyData[i] = inw(IOPort1 + DataPort); + } + { + char *p,c; + p = (char *) &(IdentifyData->VendorUnique1); + + for (i = 0; i < 26; i+=2) + { + c = p[i]; + p[i] = p[i+1]; + p[i+1] = c; + } + p = (char *) &(IdentifyData->ModelNumber); + + for (i = 0; i < 40; i+=2) + { + c = p[i]; + p[i] = p[i+1]; + p[i+1] = c; + } + } + + { + int mm = 0; + + for (i = 0; i < 0x1000; i++) + { + + GetStatus(IOPort1, statusByte); + + if ((statusByte & IDE_STATUS_DRQ) + || (statusByte & IDE_STATUS_BUSY) + || (statusByte & 1) ) + { + inw(IOPort1 + DataPort); + } + else + { + break; + } + } // end of for + } + return 1; + } + + char *ultima_info(struct Scsi_Host *ignore) + { + static char buffer[128]; + char *pt; + + strcpy(buffer, "Aralion Ultima ATA133 IDE RAID MultiCard Driver Version"); + if (strchr(VERSION, ':')) + { /* Assume VERSION is an RCS Revision string */ + strcat(buffer, strchr(VERSION, ':') + 1); + pt = strrchr(buffer, '$') - 1; + if (!pt) /* Stripped RCS Revision string? */ + pt = buffer + strlen(buffer) - 1; + if (*pt != ' ') + ++pt; + *pt = '\0'; + } + else + { /* Assume VERSION is a number */ + strcat(buffer, " " VERSION); + } + + return buffer; + } + + + int init_module(void) { + driver_template.module = &__this_module; + scsi_register_module(MODULE_SCSI_HA, &driver_template); + if (driver_template.present) { + return 0; + } + + scsi_unregister_module(MODULE_SCSI_HA, &driver_template); + return -1; + } + + void cleanup_module( void) { + scsi_unregister_module(MODULE_SCSI_HA, &driver_template); + } + + int ultima_proc_info(char *buffer, char **start, off_t offset, + int length, int hostno, int inout) + { + const char *info = ultima_info(NULL); + int len; + int pos; + int begin; + + if (inout) + return (-ENOSYS); + + begin = 0; + strcpy(buffer, info); + strcat(buffer, "\n"); + + pos = len = strlen(buffer); + + if (pos < offset) + { + len = 0; + begin = pos; + } + + *start = buffer + (offset - begin); /* Start of wanted data */ + len -= (offset - begin); + if (len > length) + len = length; + + return (len); + } + + static int aralion_arbitrate(void) + { + int status = 0; + ULONG timeout; + + printk("[ aralion_arbitrate ]\n"); + + return 0; + } + + static int aralion_select(int target) + { + int status; + ULONG timeout; + static int flag = 0; + + + printk("[ aralion_select - %d ]\n",target); + return 0; + } + + static void my_done(int error) + { + if (in_command) + { + in_command = 0; + // printk("my_done\n"); + if (test_and_clear_bit(IOCTL_LOCK,&LockValue) == 0) + printk("misc clear...\n"); + current_SC->result = error; + if (current_SC->scsi_done) { + current_SC->scsi_done(current_SC); + } + else + panic("scsi: current_SC->scsi_done() == NULL"); + } + else + { + panic("scsi: my_done() called outside of command\n"); + } + } + + int CheckScsiError(ULONG Channel,ULONG IOPort1,UCHAR statusByte) + { + ULONG lba; + UCHAR Data[4]; + UCHAR errorByte; + ULONG scsiStatus = 0; + + if (statusByte & 0x1) { + + errorByte = inb(IOPort1 + ErrorPort); + printk("error byte = %x",ErrorPort); + if (errorByte & IDE_ERROR_BAD_BLOCK) + scsiStatus = DID_PARITY; + else if (errorByte & IDE_ERROR_DATA_ERROR) + scsiStatus = DID_ERROR; + else if (errorByte & IDE_ERROR_ID_NOT_FOUND) + scsiStatus = DID_NO_CONNECT; + else if (errorByte & IDE_ERROR_COMMAND_ABORTED) + scsiStatus = DID_ABORT; + else if (errorByte & IDE_ERROR_ILLEGAL_LENGTH ) + scsiStatus = DID_ERROR; + + Data[3] = inb(IOPort1 + BlockNumberPort); + Data[2] = inb(IOPort1 + CylinderLowPort); + Data[1] = inb(IOPort1 + CylinderHighPort); + Data[0] = inb(IOPort1 + DriveSelectPort) & 0x0f; + + lba = (Data[0] << 24) + (Data[1] << 16) + + (Data[2] << 8) + Data[0]; + + LastErrorBlock = lba; + LastErrorCode = errorByte & 0x000f; + + printk("Error! Ch:%d, %02x , %0d\n",Channel, + (UCHAR) errorByte,lba); + return scsiStatus; + } + else + return 0; + } + + void CheckJobFinished(ULONG BoardID,ULONG Channel) + { + ULONG DmaIO; + USHORT Stat; + DWORD i = 0; + + if (Channel == 1) { + DmaIO = BoardInfo[BoardID].PrimaryDmaIO; + } + else + { + DmaIO = BoardInfo[BoardID].SecondaryDmaIO; + } + do { + Stat = inw(DmaIO + CONSR); + i++; + } while ((Stat & 0x01) && (i < 1000)); + if(i>100) + { + printk("CheckJobFinished Error\n"); + } + } + + void ClearAllIrq(void) + { + ULONG Channel; + UCHAR statusByte = 0; + UCHAR statusByte2 = 0; + ULONG IOPort1,IOPort2; + ULONG scsiStatus = 0; + int i; + + for(i=0;i\n"); + + if (!pIntID) { + spin_unlock_irqrestore(&io_request_lock, flags); + return ; + } + /* + if (gResetFlag) { + for (i=0;iresult; + ++internal_done_flag; + } + + int IsSplitter(char c) + { + if (c == ' ' || c == '-' || c == '_') + return 1; + else if (c >= '0' && c <= '9') + return 1; + + return 0; + } + + int ultima_queue(Scsi_Cmnd * SCpnt, void (*done) (Scsi_Cmnd *)) + { + char *buf; + int board,channel,drive; + ULONG result; + /* + printk("[c=%x : %s,I=%x]\n", + (UCHAR) SCpnt->cmnd[0], + GetCmdName((UCHAR) SCpnt->cmnd[0]), + SCpnt->target); + */ + if (in_command) { + printk("[ ultima_queue c=%x : %s,I=%x]\n", + (UCHAR) SCpnt->cmnd[0], + GetCmdName((UCHAR) SCpnt->cmnd[0]), + SCpnt->target); + panic("Error! in_command == 1\n"); + // Added 2003/11/09 by Ashuaria Lee + #warning I dont know what to do... + return -1; + } + while(test_and_set_bit(IOCTL_LOCK,&LockValue) != 0) { + // printk("QW "); + schedule(); + udelay(1); + } + while(in_ioctl) { + printk("in_ioctl = 1\n"); + udelay(1); + } + in_command = 1; + current_SC = SCpnt; + current_SC->scsi_done = done; + + current_SC->SCp.Status = 0; + current_SC->SCp.Message = 0; + current_SC->SCp.have_data_in = 0; + current_SC->SCp.sent_command = 0; + current_SC->SCp.phase = in_arbitration; + + if (SCpnt->target >= DiskCount || SCpnt->lun > 0) { + my_done(DID_ABORT << 16); + return 0; + } + + if (SCpnt->target >= DiskCount) { + my_done(DID_ABORT << 16); + return 0; + } + + board = DiskID[current_SC->target].DiskStatus.BoardID; + channel = DiskID[current_SC->target].DiskStatus.Channel; + drive = DiskID[current_SC->target].DiskStatus.Drive; + switch(current_SC->cmnd[0]) { + case TEST_UNIT_READY: + case REQUEST_SENSE : + my_done(0); + return 0; + + case MODE_SENSE : + buf = (char *) current_SC->buffer; + buf[2] = 0x0; + my_done(0); + break; + + case INQUIRY : + buf = (char *) current_SC->buffer; + { + PINQUIRYDATA inquiryData + = (PINQUIRYDATA) current_SC->buffer; + PIDENTIFY_DATA identifyData = + &DiskIdentifyData[board][channel][drive]; + int i; + + memset(buf,0,current_SC->bufflen); + + buf[4] = sizeof(INQUIRYDATA); + + // + // Standard IDE interface only supports disks. + inquiryData->DeviceType = DIRECT_ACCESS_DEVICE; + + // + // Fill in vendor identification fields. + { + unsigned char *p; + int i,j; + + for (i = 0; i < 24; i ++) { + inquiryData->VendorId[i] = 0; + } + p = (UCHAR *) identifyData->ModelNumber; + i = 0; + + while(!IsSplitter(p[i])) { + inquiryData->VendorId[i] = p[i++]; + } + inquiryData->VendorId[i] = 0; + + i++; + j = 0; + while (p[i] != ' ' && i < 24) + inquiryData->ProductId[j++] = p[i++]; + inquiryData->ProductId[j] = 0; + + } + // + // Initialize unused portion of product id. + for (i = 0; i < 4; i++) { + inquiryData->ProductId[12+i] = ' '; + } + + // + // Move firmware revision from IDENTIFY data to + // product revision in INQUIRY data. + for (i = 0; i < 4; i += 2) { + inquiryData->ProductRevisionLevel[i] = + ((UCHAR *)identifyData->FirmwareRevision)[i+1]; + inquiryData->ProductRevisionLevel[i+1] = + ((UCHAR *)identifyData->FirmwareRevision)[i]; + } + } + // printk("Inquiry Success!"); + my_done(0); + break; + case READ_6 : + case READ_10 : + case WRITE_6 : + case WRITE_10 : + { + ULONG numsectors,lba,i ; + + if (*current_SC->cmnd == READ_6 || *current_SC->cmnd == WRITE_6) { + numsectors = (u_long) current_SC->cmnd[4]; + lba = ((u_long) current_SC->cmnd[1] << 16) | + ((u_long) current_SC->cmnd[2] << 8) | + (u_long) current_SC->cmnd[3]; + lba &= 0x1FFFFF; + } + if (*current_SC->cmnd == READ_10 || *current_SC->cmnd == WRITE_10) { + numsectors = (u_long) current_SC->cmnd[8] | + ((u_long) current_SC->cmnd[7] << 8); + lba = ((u_long) current_SC->cmnd[2] << 24) | + ((u_long) current_SC->cmnd[3] << 16) | + ((u_long) current_SC->cmnd[4] << 8) | + (u_long) current_SC->cmnd[5]; + } + + memset(DiskRWInfo,0,sizeof(DiskRWInfo)); + for(i=0;itarget; + + if (*current_SC->cmnd == READ_6 || *current_SC->cmnd == READ_10) { + + // printk("R:[%03d,%08x]\n", numsectors,lba); + ReadDMA(current_SC,lba,numsectors); + } + else { + // printk("W:[%03d,%08x]\n", numsectors,lba); + WriteDMA(current_SC,lba,numsectors); + } + } + break; + + case READ_CAPACITY : + { + ULONG block,size; + IDENTIFY_DATA * IdentifyData; + + block = DiskID[current_SC->target].DiskStatus.Size; + buf = (char *) current_SC->buffer; + size = 512; + + *((ULONG *) buf) = htonl(block - 1); + *((ULONG *) (buf + 4)) = htonl(size); + } + + my_done(0); + break; + default: + my_done(0); + break; + + } + return 0; + } + + int ultima_command(Scsi_Cmnd * SCpnt) + { + ultima_queue(SCpnt, internal_done); + while (!internal_done_flag) + ; + internal_done_flag = 0; + return internal_done_errcode; + } + + + void print_info(Scsi_Cmnd * SCpnt) + { + ULONG imr; + ULONG irr; + ULONG isr; + + + if (!SCpnt || !SCpnt->host) + { + printk("scsi: Cannot provide detailed information\n"); + return; + } + + printk("%s\n", ultima_info(SCpnt->host)); + return ; + print_banner(SCpnt->host); + + printk("(%d), target = %d cmnd = 0x%02x pieces = %d size = %u\n", + SCpnt->SCp.phase, + SCpnt->target, + *(UCHAR *) SCpnt->cmnd, + SCpnt->use_sg, SCpnt->request_bufflen); + printk("sent_command = %d, have_data_in = %d, timeout = %d\n", + SCpnt->SCp.sent_command, + SCpnt->SCp.have_data_in, SCpnt->timeout); + } + + int ultima_handle(Scsi_Cmnd * SCpnt) + { + // Added 2003/11/09 by Ashuaria Lee + #warning I dont know what to do... + return 0; + } + + int ultima_abort(Scsi_Cmnd * SCpnt) + { + ULONG flags; + + if (!in_command) + { + return SCSI_ABORT_NOT_RUNNING; + } + ultima_cardreset(); + print_info(SCpnt); + current_SC->SCp.phase |= aborted; + current_SC->result = DID_ABORT << 16; + + /* Aborts are not done well. . . */ + if (in_command) + my_done(DID_ABORT << 16); + + return SCSI_ABORT_SUCCESS; + } + + int ultima_reset(Scsi_Cmnd * SCpnt, unsigned int ignored) + { + ultima_cardreset(); + return SCSI_RESET_WAKEUP; + } + + int ultima_1cardreset(int BoardID) + { + int i,k; + UCHAR statusByte,statusByte2; + + + SelectFirstChannel(BoardID); + mdelay(20); + outw(0x8000,BoardInfo[BoardID].PrimaryDmaIO + 0x0e); + mdelay(20); + outw(0x4000,BoardInfo[BoardID].PrimaryDmaIO + 0x0e); + mdelay(20); + outw(0x0,BoardInfo[BoardID].PrimaryDmaIO + 0x0e); + mdelay(20); + + SelectSecondChannel(BoardID); + outw(0x8000,BoardInfo[BoardID].PrimaryDmaIO + 0x0e); + mdelay(20); + outw(0x4000,BoardInfo[BoardID].PrimaryDmaIO + 0x0e); + mdelay(20); + outw(0x0,BoardInfo[BoardID].PrimaryDmaIO + 0x0e); + mdelay(20); + /* + for (i=0;i<200;i++) + { + SelectFirstChannel(BoardID); + mdelay(1); + outb(0xA0, BoardInfo[BoardID].PrimaryIO + DriveSelectPort); + mdelay(5); + GetBaseStatus(BoardInfo[BoardID].PrimaryIO, statusByte); + mdelay(5); + + SelectSecondChannel(BoardID); + mdelay(1); + outb(0xA0, BoardInfo[BoardID].PrimaryIO + DriveSelectPort); + mdelay(5); + GetBaseStatus(BoardInfo[BoardID].PrimaryIO, statusByte2); + mdelay(5); + + if (!(statusByte & 0x80) && !(statusByte2 & 0x80)) + break; + } + + for (i=0;i<500;i++) { + mdelay(1); + } + */ + for (i=0;i<200;i++) { + mdelay(20); + } + /* + if (HddConnected[BoardID][0][0]) + { + IdentifyDisk(BoardID, + 0, + 0, + &DiskIdentifyData[BoardID][0][0]); + } + if (HddConnected[BoardID][0][1]) + { + IdentifyDisk(BoardID, + 0, + 1, + &DiskIdentifyData[BoardID][0][1]); + } + if (HddConnected[BoardID][1][0]) + { + IdentifyDisk(BoardID, + 1, + 0, + &DiskIdentifyData[BoardID][1][0]); + } + if (HddConnected[BoardID][1][1]) + { + IdentifyDisk(BoardID, + 1, + 1, + &DiskIdentifyData[BoardID][1][1]); + } + */ + // Added 2003/11/09 by Ashuaria Lee + #warning I dont know what to do... + return 0; + } + + + int ultima_cardreset(void) + { + int i,j; + + RWStatus = RESET_STATUS; + + for(i=0;i> 4; + + info_array[0] = 16; + info_array[1] = 63; + + size = DiskID[target].DiskStatus.Size; + info_array[2] = size / (info_array[0] * info_array[1]); + + if (info_array[2] > 1024) { + info_array[0] = 0xff; + info_array[2] = + (ULONG) size / (info_array[0] * info_array[1]); + } + return 0; + } diff -Ncr linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/ultima.h linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/ultima.h *** linux-2.4.20-aralion-0.0/drivers/scsi/ultimaraid133/ultima.h 1970-01-01 09:00:00.000000000 +0900 --- linux-2.4.20-aralion-0.1/drivers/scsi/ultimaraid133/ultima.h 2003-11-26 16:30:31.000000000 +0900 *************** *** 0 **** --- 1,239 ---- + #ifndef _ULTIMA_H + #define _ULTIMA_H + #include + + #ifndef UCHAR + #define UCHAR unsigned char + #define USHORT unsigned short + #define ULONG unsigned long + #define DWORD unsigned long + #define BYTE unsigned char + #define WORD unsigned short + #endif + + #define ARALION_VENDOR 0x1538 + #define ULTIMA_DEVICE 0x0303 + + #define READ_STATUS 0x10000000 + #define WRITE_STATUS 0x20000000 + #define RESET_STATUS 0x40000000 + #define REBUILD_STATUS 0x80000000 + #define MIRRORWRITE_STATUS 0x01000000 + /* + #define ORDER_FIRST 0x00000001 + #define ORDER_LAST 0x00000010 + */ + + #define ORDER_ONE 0x00000001 + #define ORDER_TWO 0x00000010 + #define ORDER_THREE 0x00000100 + #define ORDER_FOUR 0x00001000 + + + #define DataPort 0x00 + #define ErrorPort 0x01 + #define BlockCountPort 0x02 + #define BlockNumberPort 0x03 + #define CylinderLowPort 0x04 + #define CylinderHighPort 0x05 + #define DriveSelectPort 0x06 + #define CommandPort 0x07 + #define AlternateStatusPort 0x0E + + #define FLASH_ADDRESS 0x02 + #define FLASH_COMMAND 0x04 + #define FLASH_STATUS 0x06 + + #define SCATTERLISTSIZE 4096 + + #define NODISK 0x00000000 + #define NORMALIDE 0x00000001 + #define STRIPING_2S 0x00000002 + #define STRIPING_4S 0x00000003 + #define MIRRORING 0x00000004 + #define STRIPMIRRORING_2S 0x00000005 + #define STRIPMIRRORING_4S 0x00000006 + #define JBOD 0x00000007 + //#define STRIPMIRRORING2 + + #define NOTAVAILABLE 0x0000ffff + #define ERROR_INVALID_SECTORCOUNT 0x00000001 + #define ERROR_DISK_NOTAVAILABLE 0x00000002 + #define ERROR_INVALID_CHANNEL 0x00000003 + + #define MAXBOARD 4 + + #define NORMALSTATUS 0x00000000 + #define DISKSWAPPED 0x00000001 + #define MIRRORDISABLED 0x00000002 + #define REBUILDING 0x00000010 + #define REBUILDED 0x00000020 + #define DISKNOTAVAILABLE 0x80000000 + + extern int ultima_detect( Scsi_Host_Template * ); + extern int ultima_release( struct Scsi_Host * tpnt); + extern int ultima_command( Scsi_Cmnd * ); + extern int ultima_queue( Scsi_Cmnd *, void (*done)(Scsi_Cmnd *) ); + extern int ultima_abort( Scsi_Cmnd * ); + extern int ultima_reset( Scsi_Cmnd *, unsigned int ); + extern int ultima_biosparam( Disk *, kdev_t, int * ); + extern int ultima_handle( Scsi_Cmnd * ); + extern char * ultima_info( struct Scsi_Host * ); + extern int ultima_cardreset( void ); + extern int ultima_proc_info( char *buffer, char **start, off_t offset, + int length, int hostno, int inout ); + + extern struct proc_dir_entry proc_scsi_aralion; + + #define ULTIMA_REVID "Aralion ATA133 IDE Raid Controller driver; Revision: LH1.00BCS" + + #define ULTIMA_DMA133 { \ + next: NULL, \ + module: NULL, \ + proc_dir: NULL, \ + proc_name: "Aralion", \ + proc_info: ultima_proc_info, \ + name: "Ultima RAID 133", \ + detect: ultima_detect, \ + release: ultima_release, \ + info : NULL, \ + ioctl: NULL, \ + command: NULL, \ + queuecommand: ultima_queue, \ + abort: ultima_abort, \ + reset: ultima_reset, \ + slave_attach: NULL, \ + bios_param: ultima_biosparam, \ + can_queue: 1, \ + this_id: 15, \ + present: 0, \ + sg_tablesize: 16, \ + cmd_per_lun: 0, /* cmds per lun */\ + use_clustering: DISABLE_CLUSTERING, \ + use_new_eh_code: 0}; + + typedef struct + { + char *buffer; + unsigned long bufferlen; + } IoctlParam; + + typedef struct + { + char signature[8]; + unsigned long IOPort1; + unsigned long irq; + } IrqID; + + typedef struct { + DWORD BoardID; + DWORD Channel; + DWORD Drive; + DWORD Size; + } DISKLIST; + + typedef struct { + DWORD RaidStatus; + DISKLIST DiskStatus; + } _DiskIDTable; + + typedef struct _PDT_TABLE { + ULONG address; + USHORT length; + UCHAR Reserved; + UCHAR EndOfChain; + } PDT_TABLE, *PPDT_TABLE; + + typedef struct + { + PDT_TABLE ScatterList[128]; + ULONG ListCount; + ULONG NumSectors; + ULONG StartLba; + ULONG InterruptFlag; + } DISKRWINFO; + + typedef struct _BOARDTABLE { + ULONG PrimaryIO; + ULONG SecondaryIO; + ULONG PrimaryDmaIO; + ULONG SecondaryDmaIO; + ULONG ControlRegister; + ULONG FlashMemory; + ULONG interrupt_level; + + PPDT_TABLE PriScatterList; + PPDT_TABLE SecScatterList; + + ULONG ListCount; + ULONG NumSectors; + ULONG StartLba; + ULONG InterruptFlag[2]; + } BOARDTABLE,*PBOARDsTABLE; + + typedef struct _V6BDISKINFO + { + UCHAR Mode; + UCHAR PhysicalDrive; + UCHAR Order; + }V6BDISKINFO,*PV6BDISK; + + typedef struct _V6InterfaceB + { + ULONG TagField; + USHORT Version; + UCHAR Reserved; + UCHAR StructSize; + USHORT RebuildBit; + UCHAR Mode; + UCHAR IsSafeMode; + ULONG Reserved1; + ULONG BaseHddSize[8]; + V6BDISKINFO DiskInfo[4][4]; + UCHAR Reserved2[5]; + UCHAR ProcInfo[4]; + UCHAR Reserved3[151]; + }V6INTERFACEB,*PV6INTERFACEB; + + #define GetStatus(BaseIoAddress, Status) Status = inb((BaseIoAddress) + AlternateStatusPort); + + #define GetBaseStatus(BaseIoAddress, Status) \ + Status = inb(BaseIoAddress + CommandPort); + + #define Delayed_Time(delay) { \ + ULONG j = jiffies + delay * HZ; \ + struct wait_queue *wait = NULL; \ + current->timeout = j; \ + interruptible_sleep_on(&wait); } + + #define WaitOnBusy(BaseIoAddress, Status) {ULONG i; \ + for (i=0; i<5; i++) { \ + GetStatus((BaseIoAddress), Status); \ + if (Status & IDE_STATUS_BUSY) { \ + udelay(1); \ + continue; \ + } else { \ + break; \ + } \ + } \ + } + + #define WaitForDrq(BaseIoAddress, Status) \ + { \ + ULONG i; \ + for (i=0; i<1000; i++) { \ + GetStatus(BaseIoAddress, Status); \ + if (Status & IDE_STATUS_BUSY) { \ + udelay(150); \ + } else if (Status & IDE_STATUS_DRQ) { \ + break; \ + } else { \ + udelay(200); \ + } \ + } \ + } + + #endif + #define SelectFirstChannel(BoardID) outb(0xA0,BoardInfo[BoardID].SecondaryIO+DriveSelectPort); + #define SelectSecondChannel(BoardID) outb(0xB0,BoardInfo[BoardID].SecondaryIO+DriveSelectPort); +