summaryrefslogtreecommitdiff
path: root/distrib/notes/i386/hardware
blob: 27488e1c7e92f07cd9d4af0cd59952973e4bb130 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
OpenBSD/MACHINE OSREV works across a broad range of standard PC's and
clones, with a wide variety of processors and I/O bus architectures.  It
can be expected to install and run with minimal difficulties on most
current products.  The cases where problems may be encountered are
typically older proprietary PC's, Laptops or specialized server boxes
that rely on a custom BIOS to paper over implementation differences.

OpenBSD does not currently support multiple processors (SMP), but will
run using one processor on a multi-processor system board.

The minimal configuration to install the system is 6M or 8M of RAM and
perhaps 60M of disk space.  A custom kernel might be able to run
with only 4MB, though we do not know of anyone running with a system
quite this minimal today.  To install the entire system requires
much more disk space, and to run X or compile the system, more RAM
is recommended.  (8M of RAM will actually allow you to run X and/or
compile but it won't be speedy.  Note that until you have around 16M
of RAM, getting more RAM is more important than getting a faster CPU.)
 
Supported hardware {:-include-:}:
	Processors
		All CPU chips compatible with the Intel 80386 (i386)
		architecture:
			386/486 (SX/DX/DX2/DX4)
			Intel Pentium/Pentium-MMX
			Intel Pentium Pro/II/III/Celeron/Xeon
			Intel Pentium IV
			AMD 6x86
			AMD K5/K6/K6-2/K6-3
			AMD Athlon/Duron
			Cyrix MediaGX/M1/M2
			VIA Cyrix III
			Rise mP6
			IDT WinChip
			NexGen 586
			Transmeta TMS3200, TMS5400, TMS5600
		Everything that is a clone of the 386 or up should work
		fine. The only CPU that is known to work poorly (due to
		flawed motherboards designs) is the Cyrix 386DLC.
	Buses
		All standard ISA, EISA, VLB, and PCI bus based machines,
		including:
			Intel 450GX/KX based machines
			Intel 450NX based machines
			ServerWorks chipset-based machines
			(We just had to mention those last three, since
			 they are the hardest to support))
		Both 16-bit PCMCIA Cards and newer 32-bit CardBus
		support
		Universal Serial Bus (USB)
		The MCA bus found in various IBM PS/2 machines is not
		supported.
	Bus Interfaces
		Standard PCI-PCI bridges, including PCI expansion
		backplanes
		YENTA-compatible PCI-CardBus bridges
	Entropy Sources
		Interrupt latency collection from many devices
		INtel 82802 random number generator found on i810, i815,
		i820, i840, i850 and i860 based systems.
	Disk Controllers
		Floppy controllers.
		ISA MFM, ESDI, IDE, and RLL hard disk controllers.
	PCI IDE Controllers
		Acer Labs M5229
		Advanced Micro Devices 756, 766
		CMD Tech PCI0640, PCI0643, PCI0646, PCI0648, and PCI0649
		Contaq Microsytems/Cypress CY82C693
		HighPoint HPT366, HPT370
		Intel PIIX, PIIX3, and PIIX4
		Intel 82801 (ICH/ICH0/ICH2)
		OPTi 82C568, 82D568, and 82C621
		Promise PDC20246, PDC20262, PDC20265/7
		Silicon Integrated Systems 5513 (5597/5598)
		VIA Technologies VT82C586[A], VT82C596, VT82C686
		(Other PCI IDE-compliant controllers should work, but
		 those not listed above may not be capable of DMA modes)
	SCSI Host Adapters
		Adaptec AHA-1540, AHA-154xA, AHA-154xB, AHA-1542C,
			AHA-1542CF, AHA-1542CP, AHA-1640
		Adaptec AHA-174x
		Adaptec AIC-6260 and AIC-6360 based boards, including:
			the Adaptec AHA-152x and the SoundBlaster SCSI
			host adapter.  (Note that you cannot boot from
			these boards if they do not have a boot ROM;
			only the AHA-152x and motherboards using this chip
			are likely to be bootable, consequently.)
		Adaptec AIC-7770-based boards, including the Adaptec
			AHA-274x and AHA-284x families)
		Adaptec AHA-[23]94x[W] cards and some on-board PCI designs
			using the AIC7870 and AIC7880 chips.
		Adaptec AHA-[23]94xU[2W] cards and some on-board PCI designs
			using the AIC789[01], AIC7895, AIC789[67] chips
		Adaptec AIC-780[29] chips and products like the
			AHA-29160 based upon it which do 160MB/sec SCSI.
		AdvanSys 'U', 'UW', 'U2W' and 'U160' PCI SCSI
			controllers including the ABP940U[AW],
			ASB3940U[AW]-00, ASB3940U2W-00 and ASB3950U160
		AMD Am53c974 PCscsi-PCI SCSI controllers, including:
			Tekram DC-390
		Buslogic BT-54x (Adaptec AHA-154x clones)
		BusLogic 445, 74x, 9xx  (But not the new "FlashPoint" series
			of BusLogic SCSI adapters)
		Initio INIC-940 and INIC-950 based PCI SCSI host
			adapters, including the Initio INI-9090U and
			Initio INI-9100U/UW, and the Iwill 2935UW
		QLogic PCI SCSI controllers
		Seagate/Future Domain ISA SCSI adapter cards, including:
			ST01/02
			Future Domain TMC-885
			Future Domain TMC-950
		Symbios Logic (NCR) 53C8xx, 53C1010, and 53C1510D-based
			PCI SCSI host adapters (including generic/no
			name cards, old ASUS cards, the DTC-3130 series,
			Diamond Fireport series, etc.)
		Tekram DC-300B and DC-320E (Adaptec AHA-154x clones)
		Ultrastor 14f, 24f, and 34f
		WD-7000 SCSI host adapters
	RAID and Cache Controllers
		3ware Escalade 3W-5x00, 3W-6x00
		Adaptec FSA-based RAID controllers, including:
			Adaptec AAC-2622, AAC-364, AAC-3642
			Dell PERC 2/Si, PERC 2/QC, PERC 3/Si, PERC 3/Di,
				PERC 3/QC
			HP NetRAID-4M
		American Megatrends Inc. MegaRAID controllers
		Compaq Smart ARRAY PCI/EISA adapters, including:
			Compaq Integrated Array
			Compaq IAES
			Compaq IDA, IDA-2
			Compaq RAID LC2
			Compaq Smart Array 221, 3100ES, 3200, 4200,
				4250ES, 431
			Compaq SMART, SMART-2/E, SMART-2/P, SMART-2DH,
				SMART-2SL
		DPT SmartCache and SmartRaid III/IV PCI/EISA adapters 
		ICP-Vortex GDT 6XXXR[DNPS] series
	CD-ROM and DVD-ROM Drives
		Mitsumi CD-ROM drives [*] [+]
			[Note: The Mitsumi driver device probe is known 
			to cause trouble with several devices!]
		Most SCSI CD-ROM, CD-R, CD-RW, and DVD drives
		Most ATAPI CD-ROM, CD-R, CD-RW, and DVD drives
	Tape Drives
		Most SCSI tape drives
		Most SCSI tape changers
		QIC-02 and QIC-36 format (Archive- and Wangtek-
	MDA, CGA, VGA, SVGA, and HGC Display Adapters.  (Note that not
		all of the display adapters OpenBSD/i386 can work with
		are supported by X.  See the XFree86 FAQ for more
		information.)
	Serial Ports
		8250/16450-based ports
		16550-based ports
		ST16660-base ports
		XR16850-based ports (only in the pccom driver)
		AST-style 4-port serial boards [*]
		BOCA 8-port serial cards [*] 
		Cyclades Cyclom-{4, 8, 16}Y serial boards [*]
		IBM PC-RT 4-port serial boards [*]
	Parallel Ports
		Any standard parallel port
	Communication Controllers
		Universal Serial Bus host controllers, including:
			USB Universal Host Controller
			USB Open Host Controller
		PCI `universal' communication cards, providing serial
		and parallel ports, including:
			Dolphin Peripherals 4014 (dual parallel) and
				4035 (dual serial)
			SIIG Cyber 2P1S (dual parallel, single serial)
				and 2S1P (dual serial, single parallel)
			SIIG Cyber 4S (quad serial)
			SIIG Cyber I/O (single parallel, single serial)
			SIIG Cyber Parallel, Parallel Dual, Serial,
				Serial Dual
			VScom PCI-800 (8 port serial, probably OEM)
			AT&T/Lucent Venus Modem (found on IBM 33L4618
				card, Actiontec 56K, and others)
			US Robotics 3CP5609 PCI (modem)
			Lava Computers 2SP-PCI (parallel port)
			Lava Computers 2SP-PCI and Quattro-PCI (dual
				serial)
			NEC PK-UG-X008 (serial)
			NEC PK-UG-X001 K56flex PCI (modem)
			Koutech IOFLEX-2S (dual serial)
	Ethernet Adapters
		3Com 3c501
		3Com 3c503
		3Com 3c505 [*]
		3Com 3c507
		3Com 3c509, 3c579, and 3c59x
		3Com 3c515 [*] [+]
		3Com 3c9xx Etherlink XL adapters, including
			3Com 3c900/3c900B PCI adapters
			3Com 3c905/3c905B/3c905C PCI adapters
			3Com 3c980/3c980C server adapters
			3Com 3cSOHO apapter
			3Com 3c900B-FL and 3c900B-FL/FX fiber optic
				adapters
			3Com 3c555/3c556/3c556B MiniPCI adapters
			Dell on-board 3c920
			Dell Precision on-board 3c905B
			Dell OptiPlex GX1 on-board 3c918
			Dell Latitude laptop docking station embedded
				3c905
		Adaptec "Starfire" AIC-6915 based PCI adapters,
			including
			Adaptec Single32 ANA-69011
			Adaptec Single64 ANA-62011 and ANA-62020
			Adaptec Duo64 ANA-62022
			Adaptec Quartet64 ANA-62044
		ADMtek AL981 ("Comet") and AN983 ("Centaur-P") based PCI
		adapters, including:
			Accton EN2242 MiniPCI
			Linksys LNE100TX v4.x
			Mototech ME316
		ADMtek AN986-based USB adapters, including:
			Billionton Systems USB100
			Corega FEther USB-TX
			D-Link DSB-650TX
			LinkSys USB100TX
			Melco Inc. LU-ATX
			SMC 2202USB
			Kingston KNU101TX
		AMD LANCE and PCnet-based ISA Ethernet adapters, including:
			Novell NE1500T
			Novell NE2100
			Kingston 21xx
		AMD PCnet-based PCI Ethernet adapters, including:
			BOCALANcard/PCI
		        AT&T StarLAN 10, EN100, and StarLAN Fiber
		ASIX 88140A/88141 PCI Ethernet adapters, including:
			CNet Pro110B
			Alfa Inc. GFC2204
		CATC USB-EL1210A-based USB adapters, including:
			CATC Netmate and Netmate II
			Belkin F5U011/F5U111
		Davicom DM9100, DM9102, and DM9102A based PCI adapters,
		including:
			Jaton XpressNet
		Digital DC21x4x-based PCI Ethernet adapters, including:
			Older SMC PCI EtherPower 10, 10/100 (models
				8432, 9332, and 9334)
			Older LinkSys 10, 10/100 (newer models are
				supported by other drivers)
			Znyx ZX3xx
			Cogent EM100FX and EM440TX
			Digital PCI DE435, EISA DE425, DE450, DE500
			Asante
		Intel EtherExpress 16
		Intel EtherExpross PRO/10 ISA
		Intel i8255x-based (except the i82556) PCI adapters,
		including:
			Intel EtherExpress PRO/10+
			Intel EtherExpress PRO/100, PRO/100B, and PRO/100+
			Intel EtherExpress PRO/100+ "Management Adapter"
			Intel EtherExpress PRO/100 Dual Port
		Kawasaki LSI KL5KUSB101B-based USB adapters, including:
			3Com 3c19250
			3Com 3c460 HomeConnect
			ADS Technologies USB-10T
			Aox USB101
			ATen UC10T
			Corega USB-T
			D-Link DSB-650
			Entegra NET-USB-E45
			Kawasaki USB101
			LinkSys USB10T
			Netger EA101
			Peracom USB
			SMC 2102/2104USB
			I/O Data USB-ET/T
		Lite-On PNIC/PNIC-II-based adapters, including:
			Kingston KNE110TX
			LinkSys LNE100TX
			Matrox Networks FastNIC 10/100
			Netgear FA310TX
		Macronix 98713/713A/715/715A/725/727/732-based adapters,
		including:
			Accton EN1217
			Addtron AEF-320TX/AEF-330TX
			CNet PRO120A/PRO120B
			Complex RL-100TX
			NDC Communications SOHOware SFA110A
			SVEC PN102-TX Fast Ethernet card
		National Semiconductor DP83815-based PCI adapters,
		including:
			Netgear FA311/FA312
		Novell NE1000, NE2000
		RealTek 8129, RealTek 8139 Ethernet adapters, including:
			Accton MPX 5030/5038
			Allied Telesyn AT2550
			D-Link DFE530+TX, DFE538TX
			Encore ENL832-TX 10/100 M PCI
			Genius GF100TXR
			KTX-9130TX 10/100 Fast Ethernet
			Longshine LCS-8038TX-R
			NDC NE100TX-E
			Netronix EA-1210 Net Ether 10/100
			Nortel BayStack 21
			OvisLink LEF-8129TX, LEF-8139TX
			SMC EZ Card 10/100 PCI 1211-TX
		SiS 900 and SiS 7016-based PCI adapters, including:
			Mototech ME313
			NetSurf NS-KFE30D
		SMC/WD 8003, 8013, and the SMC "Elite16" ISA boards
		SMC/WD 8216 (the SMC "Elite16 Ultra" ISA boards)  [X SEE BELOW]
		SMC EtherEZ PNP
		SMC EtherPower II (EPIC 10/100)
		Sundance ST201-based PCI adapters, including:
			D-Link DFE-550TX
		Texas Instruments ThunderLAN PCI Ethernet adapters, including:
			Compaq Netelligent PCI Adapters
			Compaq NetFlex 3/P
			Compaq Deskpro integrated adapter
			Compaq Prosignia integrated adapter
			Olicom OC2135, OC2183, OC2325, OC2326
			Racore 8165 and 8148
			TI ThunderLAN adapters
		VIA Rhine/RhineII Ethernet adapters, including:
			Addtron AEF-360TX
			Hawking PN102TX
			D-Link DFE530TX
		Winbond W89C840F Ethernet adapters, including:
			Trendware TE100-PCIE
			Compex RL100-ATX 10/100baseTX
		Xircom 16-bit PCMCIA adapters, including:
			Xircom CE3
			Xircom Realport
	Wireless Ethernet Adapters
		Aironet 802.11DS PCMCIA and PCI
		RayLink Aviator 2.4/Pro 802.11FH PCMCIA
		WaveLAN IEEE 802.11DS
		Addtron AWP-100 802.11DS PCMCIA
	Gigabit Ethernet Adapters
		Alteon Tigon I/II PCI Gigabit Ethernet boards
			3Com 3c985 and 3c985B
			Alteon ACEnic V (fiber and copper)
			Digital EtherWORKS 1000SX
			Farallon PN9000SX
			Netgear GA620 and GA620T
			SGI Tigon
		Intel i82452-based adapters, including:
			Intel Pro/1000 Gigabit Server adapter
		SysKonnect SK-9841/9842/9843/9844 Gigabit Ethernet
			adapters
	ATM Adapters
		Efficient Networks EN-155 and Adaptec ANA-590X ATM
		interfaces
	FDDI Adapters
		Digital DEFEA EISA and PCI FDDI adapters
	Wan Adapters
		Lan Media Corporation SSI (T1)/HSSI/DS1/DS3 WAN
		interfaces
	Cryptography Accelerators
		Broadcom Bluesteelnet uBsec 5501, 5601, 5805
		Hi/Fn 7751-based boards, including:
			GTGI PowerCrypt Encryption Accelerator
			NetSec 7751
			HiFn reference board
			Invertex AEON
	PC Cards (PCMCIA and Carbus)
		ATA cards, including:
			ATA/IDE card drives
			ATA/IDE CD-ROM adapters
			CF/ATA flash cards and disk drives
		Ethernet adapters, including:
			3Com EtherLink and EtherLink XL-based LAN PC
			cards, including:
				3Com 3c556, 3c562
				3Com 3c574TX, 3c[CX]FE574BT
				3Com 3c589, 3c589[BCDE]
				3Com 3c575TX, 3c[CX]FE575[BC]T CardBus
				3Com 3c[CX]FEM656, 3c[CX]656[BC] CardBus
			Intel/DEC 21443 "Tulip" clones, including:
				ADMtex AN985 Centaur-C CardBus
				IBM EtherJet 10/100 CardBus
				SMC EZ CardBus 10/100
				Xircom X3201 CardBus adapters, including
				RealPort models
			Intel i8255x-based, including:
				Intel PRO/100 CardBus II
			NE2000-based, including:
				Accton EN2216
				AmbiCom AMB8002T
				D-Link DE-650, DE-660
				Genius ME 3000II SE
				Hawking PN650TX
				IC-Card
				Kingston KNE-PC2
				Linksys PCMPC100, EC2T Combo
				NDC Instant-Link
				Netgear FA410TX
				Network Everywhere NP10T
				New Media LiveWire 10/100
			SMC 91Cxx-based, including:
				Megahertz XJEM1144, CC10BT
				SMC EtherEZ 8020BT
			Xircom, including:
				Xircom CreditCard CE2
		PCMCIA controllers, including:
			Intel i82365 and compatibles
		SCSI host adapters, including:
			Adaptec SlimSCSI APA-14[56]0
		Serial ports, including:
			Most modems, digital cellular modems, and serial
			cards should work
		Wireless Ethernet adapters:
			See above
	Universal Serial Bus (USB) Devices
		USB Audio
		USB Diamond Multimedia Rio MP3 players
		USB Ethernet adapters, see above
		USB Generic Human Interface Devices (catch-all)
		USB Handspring Visor
		USB Hubs
		USB Keyboards
		USB Mass Storage devices, i.e., USB floppy drives and
			USB memory stick controllers
		USB Mice
		USB Modems
		USB Printers
		USB Scanners
		USB-USB cables
		USB Y@p phone
	Pointing Devices
		"Logitech"-style bus mice [*] [+]
		"Microsoft"-style bus mice [*] [+]
		"PS/2"-style mice [*] [+]
		Serial mice (uses serial port driver)
			compatible) tape drives [*] [+]
	Sound Devices
		C-Media CMI8[37]38 [*] [+]
		Cirrus Logic CrystalClear CS4280, CS4281 [*] [+]
		Ensoniq AudioPCI [*] [+]
		ESS Tech ES188[78], ES888 [*] [+]
		ESS Solo-1 PCI AudioDrive [*] [+]
		ESS Maestro 1, 2 and 2E and clones, NOT Maestro 3 [*] [+]
		Forte Media FM801 audio [*] [+]
		Gravis Ultrasound and Ultrasound Max [*] [+]
		Intel i810/i820 and 440MX AC'97 [*] [+]
		NeoMagic 256AV/ZX [*] [+]
		SoundBlaster ISA cards and 100% compatibles [*] [+]
		SoundBlaster PCI128 [*] [+]
		VIA VT82C686A SouthBridge integrated AC'97 audio [*] [+]
		Yamaha OPL3-SA3 [*] [+]
		Yamaha DS-XG [*] [+]
		[The following drivers are not extensively tested:]
		Personal Sound System [*] [+]
		ProAudio Spectrum [*] [+]
		S3 SonicVibes [*] [+]
		Windows Sound System [*] [+]
	Miscellaneous Devices
		APM power management,
		Brooktree 8[47][89] based frame grabber and TV tuner cards, 
		including: [*] [+]
			Hauppage Wincast TV
			STB TV PCI Television Tuner
			Miro PC TV
			Intel Smart Video Recorder III
			IMS TV Turbo
			AVer Media TV/FM
	Many kinds of ISA Plug-and-Play cards
		Nearly all SB-style audio cards
		Nearly all joystick ports
		Nearly all Yamaha-style audio cards
		Nearly all NE2000-style Ethernet cards
		Nearly all SMC-style Ethernet cards
		Most serial port or modem cards
		3c509 cards in PnP mode
		NE2100 Etherent cards

Drivers for hardware marked with "[*]" are NOT included on the
distribution floppies.  Except as noted above, all other drivers are
present on install floppy.  Also, at the present time, the
distributed kernels support only one SCSI host adapter per machine.
OpenBSD normally allows more, though, so if you have more than one, you
can use all of them by compiling a custom kernel once OpenBSD is
installed.

Support for devices marked with "[+]" IS included in the "generic" kernels,
although it is not in the kernel on the installation floppy.


Hardware the we do NOT currently support, but get many questions
about:
	The "Micro Channel" MCA bus used in many IBM PS/2 models
	NCR 5380-based and 53400-based SCSI host adapters
	QIC-40 and QIC-80 tape drives (these are the tape drives
		that connect to the floppy disk controller)
	Multiprocessor motherboards (though they will run fine using
		one processor only)
	Sony and Panasonic proprietary CD-ROM interfaces
	Parallel-port ZIP drives (SCSI and ATAPI ZIP drives work fine)
	Intel i82556 (EtherExpress PRO/100A) and i82596 (EtherExpress
		PRO/10 PCI) Ethernet adapters
	Hewlett-Packard PC-LAN+ (HP27xxx) Ethernet adapters
	SoundBlaster Live! (EMU10k1) sound devices
	Aureal Vortex sound cards
	Winmodems
	Infrared devices, such as commonly found on laptops
	Firewire
	3c990 Hardware Crypto Accelerators (3Com will not make specs
		public)
	Mylex and Intel RAID controllers
	PCMCIA:
		Memory cards
		Most multifunction cards

We are planning future support for many of these devices.

To be detected by the distributed kernels, some devices must
be configured with specific settings.  Here's their list:

Device		Name	Port	IRQ	DRQ	Misc
------		----	----	---	---	----
Serial ports	pccom0	0x3f8	4		[8250/16450/16550/clones]
		pccom1	0x2f8	3		[8250/16450/16550/clones]
		pccom2	0x3e8	5		[8250/16450/16550/clones]
		ast0	0x1a0	5		[AST 4-port serial card]
		cy0		12		iomem 0xd4000 [Cyclom
						serial card]

Parallel ports	lpt0	0x378	7		[interrupt-driven or polling]
		lpt1	0x278			[polling only]
		lpt2	0x3bc			[polling only]

MFM/ESDI/IDE/RLL hard disk controllers
		wdc0	0x1f0	14		[supports two disks or atapi]
		wdc1	0x170	15		[supports two disks or atapi]

Floppy controller
		fdc0	0x3f0	6	2	[supports two disks]

AHA-154x, AHA-174x (in compatibility mode), or BT-54x SCSI host adapters
		aha0	0x330	any	any
		aha1	0x334	any	any

BT445, BT74x, or BT9xx SCSI host adapters
		bt0	0x330	any	any
		bt1	0x334	any	any

Ultrastor 14f, 24f (if it works), or 34f SCSI host adapters
		uha0	0x330	any	any
		uha1	0x334	any	any

AHA-152x, AIC-6260- or AIC-6360-based SCSI host adapters
		aic0	0x340	11	any

Seagate ST0[12], Future Domain TMC-8xx based SCSI controllers 
		sea0		5		iomem 0xc8000

WD7000 and TMC-7000 SCSI host adapters
		wds0	0x350	15	6
		wds1	0x358	11	5

SCSI disks	sd0	first SCSI disk (by SCSI id)
		sd1	second SCSI disk (by SCSI id)
		sd2	third SCSI disk (by SCSI id)
		sd3	fourth SCSI disk (by SCSI id)

SCSI tapes	st0	first SCSI tape (by SCSI id)
		st1	second SCSI tape (by SCSI id)

SCSI CD-ROMs	cd0	first SCSI CD-ROM (by SCSI id)
		cd1	second SCSI CD-ROM (by SCSI id)

SMC/WD 8003, 8013, Elite16, and Elite16 Ultra Ethernet boards
		we0	0x280	9		iomem 0xd0000
		we1	0x300	10		iomem 0xcc000

Novell NE1000, or NE2000 Ethernet boards
		ne0	0x240	9		iomem 0xd8000
		ne1	0x300	10
		ne2	0x280	9

3COM 3c501 Ethernet boards
		el0	0x300	9

3COM 3c503 Ethernet boards
		ec0	0x250	9		iomem 0xd8000

3COM 3c505/Etherlink+ Ethernet boards
		eg0	0x310	5

AT&T StarLAN 10, EN100, or StarLAN Fiber, or 3COM 3c507 Ethernet boards
		ie0	0x360	7		iomem 0xd0000

EtherExpress boards
		ie1	0x300	10

IsoLan, NE2100, and DEPCA
		le0	0x360	15	6

Intel EtherExpress PRO/10
		ex0	0x320	5

PCI ethernet boards need to have an interrupt, either assigned in your
PCI BIOS, or autoconfigured.

Hardware not listed in the above table doesn't need any specific
configuration.


SPECIAL CARE FOR SMC ULTRA ELITE
--------------------------------


Note for SMC Elite Ultra ethernet card users:  The Elite Ultra is very
sensitive to how its I/O port is treated.  Mistreating it can cause
a number of effects -- everything from the card not responding when the
kernel probes, or the soft configuration being corrupted or wiped completely.

By default, the kernel ships with device we1 configured for the 'default'
Elite Ultra locations, comprising of port 0x300, irq 10, and memory location
0xcc000.  This matches a hard coded jumper on the board as well a common
soft config setting.

Unfortunately, the kernel's autoconfiguration process (specifically, some
of the devices it probes for) cause conflicts with the SMC Elite Ultra, and
very often cause it to lose its configuration and fail its own probe.
If this happens, you must boot the computer into DOS, and run the EzSetup
program from SMC (if you do not have a copy on the floppy
accompanying your board, the complete URL to download the program is 
ftp://ftp.smc.com/pub/nics/ethernet/elite_ultra/gez122.exe).  This program
will allow you to reconfigure and recover a card that has lost its
configuration with a minimum of hassle.

In order to avoid blowing away the card, one *must* use the run-time kernel
configuration system when booting the Install kernel.  This is done by
giving the -c flag to the initial boot request.  Following the loading of
the kernel, the user is presented with a

UKC>

prompt.  At this prompt, a variety of commands may be issued, but the
relevant one to getting the SMC Elite Ultra running is 'disable'.  The
wt0, el0, and ie1 devices all need to be disabled.  This is done by typing
'disable' followed by the name of the device, i.e., 'disable wt0', and
pressing return.

If, for some reason, your Elite Ultra is not configured at the 'default'
location the kernel is expecting it, you may also use the 'change' command
in the UKC system to modify where the kernel will look for it.  Typing
'change we1' will allow you to modify those settings.  Note that running the
card at an i/o port of anything other then 0x300 at this point is not
recommended, and is beyond the scope of this document-- by doing so you
risk other device probes wreaking the havoc we are trying to avoid.

When all three extra devices are disabled and any changes made, the
'quit' command will exit the UKC.  The kernel should then boot, and find
your Elite Ultra on device we1.

SPECIAL CARE FOR PCI BIOS
 
As all BIOS implementations and subsystems this one has bugs too.
Sometimes specifications are unclear about interfaces and/or
data validation.
These all cause our driver for PCI BIOS to misbehave in more or
less fatal ways, such as panics on pcibios0 configuration or
pci device attachments, or unconfigured pci devices due to
irq and/or I/O address misconfiguration.

Fast workaround

Boot by giving the -c flag to the initial boot request.
Following the loading of the kernel, the user is presented with a

UKC>

Then type the following commands:

UKC> change bios0
165 bios0 at mainbus0 bus -1 flags 0x0
change [n] y
bus [-1] ? <enter>
flags [0] ? 3
165 bios0 changed
165 bios0 at mainbus0 bus -1 flags 0x3
UKC> quit

This will disable the pcibios0 attachment.
Sometimes, especially when hangs occur on particular pci device
attachments, moving pci cards into a different slot helps.

Fixing for good

Try to gather dmesg output from the failing configuration, for
example by using serial console (see boot(8)) and send it to
mickey@openbsd.org along with descriptions of your hardware setup.
Dig in the code and fix problems.