aboutsummaryrefslogblamecommitdiff
path: root/release/texts/HARDWARE.TXT
blob: 8f7eaf02115abe2dffb693122c42d325f564b311 (plain) (tree)

























































                                                                         





                                                            










                                                                              


                                                                               


                                                                     
                                                                       


















                                                                            

                                                                           

















































                                                                              
                                                             





























                                                                               
 




































































                                                                               
                            











































































                                                                            
















                       
 

                                       

                                                                             
                     



                                                                       

                                                              





























                                                                               




























                                                                      
 


                                                                 
                   




                                                               
 

                                                                         







                                          
 




















                                                                          
                                                         





                                                                




                                                     




                                                                          

                                 
                                     


                              
                                       
                                     
                     







                                                               










                                                                 
                                                                      



                              

                                                                  





                                       

                                                                             
                                        

                                                            
                        


                                                                        


                                


                                                                      
                                                                          

                    
 

                                                            
                    

                                                                      



                                                     

                                         

                                                               








                                                                               

                                                                       
 
                                                                  




                     

                                                                 



                   
 
                                                          
              










                                

                                                            

                     







                                                                              
                               












                                                              
                                 













                                                                  
                                                                

                                                               

                                                   
                                                         


                                       

                                 

                      

                                                               






















                                               

                                         
















                                                                      
                         
 

                     










                                                                           


                                 

                                               

 



                                                                               
























                                        
                                               








                                      
                      
 

                                


                                   

                                           

        

                       

                            
                                        
 



































































































                                                                        
                               




















                                                                        




                                                               
Table of Contents
-----------------
0.  Document Conventions
1.  Default Configuration (GENERIC kernel)
2.  Using UserConfig to change FreeBSD kernel settings
3.  LINT - other possible configurations
4.  Supported Hardware

See TROUBLE.TXT for Q&A on known hardware problems.

=========================================================================

0.      Document Conventions
--      --------------------

We have `underlined' text which represents user input with `-' symbols
throughout this document to differentiate it from the machine output.

1.      Default (GENERIC) Configuration
--      -------------------------------

The following table contains a list of all of the devices that are
present in the GENERIC kernel.  This is the essential part of the 
operating system that is placed in your root partition during the 
installation process.  A compressed version of the GENERIC kernel is
also used on the installation floppy diskette and DOS boot image.

The table describes the various parameters used by the driver to
communicate with the hardware in your system.  There are four
parameters in the table, though not all are used by each and every
device:

   Port   The starting I/O port used by the device, shown in hexadecimal.

   IOMem  The lowest (or starting) memory address used by the device,
          also shown in hexadecimal.

   IRQ    The interrupt the device uses to alert the driver to an event,
          given in decimal.

   DRQ    The DMA (direct memory access) channel the device uses to move
          data to and from main memory, also given in decimal.

If an entry in the table has `n/a' for a value then it means that the
parameter in question does not apply to that device.  A value of `dyn'
means that the correct value should be determined automatically by the
kernel when the system boots and that you don't need to worry about
it.

If an entry is marked with an *, it means that support is currently
not available for it but should be back as soon as someone converts
the driver to work within the new 4.0 framework.

FreeBSD GENERIC kernel:

        Port    IRQ     DRQ     IOMem   Description
        ----    ---     ---     -----   ---------------------------------
fdc0    3f0     6       2       n/a     Floppy disk controller
ata0	170	14	n/a	n/a	ATA/ATAPI controller
ata1	170	15	n/a	n/a	ATA/ATAPI controller
atadisk0 n/a	n/a	n/a	n/a	ATA disk drives
atapicd0 n/a	n/a	n/a	n/a	ATAPI CDROM drives
atapifd0 n/a	n/a	n/a	n/a	ATAPI floppy drives
atapist0 n/a	n/a	n/a	n/a	ATAPI tape drives

adv0    n/a     n/a     n/a     n/a     AdvanSys Narrow SCSI controllers
adw0    n/a     n/a     n/a     n/a     AdvanSys Wide SCSI controllers
amd0    n/a     n/a     n/a     n/a     AMD 53C974 (Tekram DC390(T))
ncr0    n/a     n/a     n/a     n/a     NCR PCI SCSI controller
bt0     330     dyn     dyn     dyn     Buslogic SCSI controller
aha0    330     dyn     5       dyn     Adaptec 154x/1535 SCSI controller
ahb0    dyn     dyn     dyn     dyn     Adaptec 174x SCSI controller
ahc0    dyn     dyn     dyn     dyn     Adaptec 274x/284x/294x SCSI controller
aic0    340     11      dyn     dyn     Adaptec 152x/AIC-6360/AIC-6260 SCSI
                                        controller
isp0    dyn     dyn     dyn     dyn     QLogic 10X0, 1240 Ultra SCSI, 1080/1280
					Ultra2 SCSI, 12160 Ultra3 SCSI, 2X00
					Fibre Channel SCSI controller
dpt0    dyn    	dyn     n/a     n/a     DPT RAID SCSI controllers
amr0    dyn	dyn	n/a	n/a	AMI MegaRAID controllers
mlx0    dyn	dyn	n/a	dyn	Mylex DAC960 RAID controllers
twe0	dyn	dyn	n/a	n/a	3ware Escalade RAID controllers

wt0     300     5       1       dyn     Wangtek and Archive QIC-02/QIC-36

psm0    60      12      n/a     n/a     PS/2 Mouse

mcd0    300     10      n/a     n/a     Mitsumi CD-ROM
matcd0  230     n/a     n/a     n/a     Matsushita/Panasonic CD-ROM
scd0    230     n/a     n/a     n/a     Sony CD-ROM

sio0    3f8     4       n/a     n/a     Serial Port 0 (COM1)
sio1    2f8     3       n/a     n/a     Serial Port 1 (COM2)

ppc0    dyn     7       n/a     n/a     Printer ports

dc0     n/a     n/a     n/a     n/a     DEC/Intel 21143 cards and workalikes
de0     n/a     n/a     n/a     n/a     DEC DC21x40 PCI based cards
                                        (including 21140 100bT cards)
ed0     280     10      dyn     d8000   WD & SMC 80xx; Novell NE1000 &
                                        NE2000; 3Com 3C503; HP PC Lan+
ep0     300     10      dyn     dyn     3Com 3C509, 3C529, 3C556, 3C562D,
                                        3C563D, 3C572, 3C574X, 3C579, 3C589
ex0     dyn     dyn     dyn     n/a     Intel EtherExpress Pro/10 cards
fe0     300     dyn     n/a     n/a     Allied-Telesyn AT1700, RE2000 and
                                        Fujitsu FMV-180 series cards.
fxp0    dyn     dyn     n/a     dyn     Intel EtherExpress Pro/100B and
					Intel PRO/100+ Management Adapter
ie0     300     10      dyn     d0000   AT&T StarLAN 10 and EN100;
                                        3Com 3C507; NI5210; 
                                        Intel EtherExpress (8/16,16[TP]) cards
le0     300     5       dyn     d0000   Digital Equipment EtherWorks
                                        2 and EtherWorks 3
lnc0    280     10      n/a     dyn     Lance/PCnet cards
                                        (Isolan, Novell NE2100, NE32-VL,
					 some PCnet-PCI cards)
rl0     dyn     dyn     n/a     dyn     RealTek 8129/8139 fast ethernet
sf0     dyn     dyn     n/a     dyn     Adaptec AIC-6915 fast ethernet
sis0    dyn     dyn     n/a     dyn     SiS 900/SiS 7016 fast ethernet
sn0     0x300   10      n/a     n/a	SMC 91xx ethernet
ste0    dyn     dyn     n/a     dyn     Sundance ST201 fast ethernet
tl0     dyn     dyn     n/a     dyn     TI TNET100 'ThunderLAN' cards.
tx0     dyn     dyn     n/a     dyn     SMC 9432 'Epic' fast ethernet
wb0     dyn     dyn     n/a     dyn     Winbond W89C840F PCI based cards.
vr0     dyn     dyn     n/a     dyn     VIA VT3043/VT86C100A PCI based cards.
vx0     dyn     dyn     n/a     dyn     3Com 3c59x ((Fast) Etherlink III)
xl0     dyn     dyn     n/a     dyn     3Com 3c900, 3c905, 3c905B, 3c905C,
                                        3c980, 3cSOHO100 ((Fast) Etherlink XL)
cs0     0x300   dyn     n/a     n/a     Crystal Semiconductor CS89x0-based
                                        cards.
--- End of table ---


If the hardware in your computer is not set to the same settings as
those shown in the table and the item in conflict is not marked 'dyn',
you will have to either reconfigure your hardware or use UserConfig
to reconfigure the kernel to match the way your hardware is currently set
(see the next section).

If the settings do not match, the kernel may be unable to locate
or reliably access the devices in your system.


2.      Using UserConfig to change FreeBSD kernel settings
--      --------------------------------------------------

The FreeBSD kernel on the install floppy contains drivers for every
piece of hardware that could conceivably be used to install the rest
of the system with.  Unfortunately, PC hardware being what it is, some
of these devices can be difficult to detect accurately, and for some,
the process of detecting another can cause irreversible confusion.

To make this process easier, FreeBSD provides UserConfig.  With this
tool the user can configure and disable device drivers before
the kernel is loaded, avoiding potential conflicts, and eliminating
the need to reconfigure hardware to suit the default driver settings.

Once FreeBSD is installed, it will remember the changes made using
UserConfig, so that they only need be made once.

It is important to disable drivers that are not relevant to a system
in order to minimize the possibility of interference, which can cause
problems that are difficult to track down.

UserConfig features a command line interface for users with serial
consoles or a need to type commands, and a full screen 'visual'
interface, which provides point-and-shoot configuration functionality.

Here is a sample UserConfig screen shot in 'visual' mode:

---Active Drivers---------------------------10 Conflicts------Dev---IRQ--Port--
 Storage :  (Collapsed)
 Network :
  NE1000,NE2000,3C503,WD/SMC80xx Ethernet adapters    CONF  ed0       5  0x280
  NE1000,NE2000,3C503,WD/SMC80xx Ethernet adapters    CONF  ed1       5  0x300 
 Communications : (Collapsed)
 Input : (Collapsed)
 Multimedia :
---Inactive Drivers-------------------------------------------Dev--------------
 Storage :
 Network : (Collapsed)
 Communications :
 Input :
 Multimedia :


---Parameters-for-device-ed0---------------------------------------------------
 Port address : 0x280      Memory address : 0xd8000
 IRQ number   : 5          Memory size    : 0x2000
 Flags        : 0x0000
-------------------------------------------------------------------------------
  IO Port address (Hexadecimal, 0x1-0x2000)
  [TAB]   Change fields           [Q]   Save device parameters


  The screen is divided into four sections :

 - Active Drivers.  Listed here are the device drivers that are currently
   enabled, and their basic parameters.
 - Inactive Drivers.  These drivers are present, but are disabled.
 - Parameter edit field.  This area is used for editing driver parameters.
 - Help area.  Keystroke help is displayed here.

One of the Active and Inactive lists is always in use, and the current
entry in the list will be shown with a highlight bar.  If there are
more entries in a list than can be shown, it will scroll.  The bar can
be moved up and down using the cursor keys, and moved between lists
with the TAB key.

Drivers in the Active list may be marked "CONF".  This indicates that
one or more of their parameters conflicts with another device, and
indicates a potential for problems.  The total number of conflicts is
displayed at the top of the screen.

As a general rule, conflicts should be avoided, either by disabling
conflicting devices that are not present in the system, or by altering
their configuration so that they match the installed hardware.

In the list areas, drivers are grouped by their basic function.
Groups can be 'Collapsed' to simplify the display (this is the default
state for all groups).  If a group is collapsed, it will be shown with
'(Collapsed)' in the list, as above.  To Expand a Collapsed group,
position the highlight bar over the group heading and press Enter.  To
Collapse it again, repeat the process.

When a device driver in the Active list is highlighted, its full
parameters are displayed in the Parameter edit area.  Note that not
all drivers use all possible parameters, and some hardware supported
by drivers may not use all the parameters the driver supports.

To disable a driver, go to the Active list, Expand the group it is in,
highlight the driver and press Del.  The driver will move to its group
in the Inactive list.  (If the group is collapsed or off the screen,
you may not see the driver in its new location.)

To enable a driver, go to the Inactive list, Expand the group it is
in, highlight the driver and press Enter.  The highlight will move to
the Active list, and the driver you have just enabled will be
highlighted, ready to be configured.

To configure a driver, go to the Active list, Expand the group it is
in, highlight the driver and press Enter.  The cursor will move to the
Parameter edit area, and the device's parameters may be edited.

While editing parameters, the TAB and cursor keys can be used to move
between fields.  Most numeric values (except IRQ) are entered in
hexadecimal, as indicated by the '0x' at the beginning of the field.
The allowable values for a given field are show in the Key Help area
when the field is active.

To finish configuring a driver, press 'Q'.

Note that PCI, Microchannel and EISA devices can be probed reliably,
therefore they are not shown in the table above nor can their settings
be changed using UserConfig.


3.      LINT - other possible configurations
--      ------------------------------------

The following drivers are not in the GENERIC kernel but remain
available to those who do not mind compiling a custom kernel (see
section 6 of FreeBSD.FAQ).  The LINT configuration file
(/sys/i386/conf/LINT) also contains prototype entries for just about
every device supported by FreeBSD and is a good general reference.

The device names and a short description of each are listed below.  The port
numbers, etc, are not meaningful here since you will need to compile a
custom kernel to gain access to these devices anyway and can thus
adjust the addresses to match the hardware in your computer in the process.
The LINT file contains prototype entries for all of the below which you
can easily cut-and-paste into your own file (or simply copy LINT and edit
it to taste):

ata:    Alternate high-performance driver for IDE controllers
ctx:    Cortex-I frame grabber
cx:     Cronyx/Sigma multiport sync/async
cy:     Cyclades high-speed serial driver
el:     3Com 3C501
fea:    DEC DEFEA EISA FDDI adapter
fpa:    DEC DEFPA PCI FDDI adapter
gp:     National Instruments AT-GPIB and AT-GPIB/TNT board
gsc:    Genius GS-4500 hand scanner
gus:    Gravis Ultrasound - Ultrasound, Ultrasound 16, Ultrasound MAX
gusxvi: Gravis Ultrasound 16-bit PCM
hea:    Efficient ENI-155p ATM PCI adapter
hfa:    FORE PCA-200E ATM PCI adapter
isic:	isdn4bsd Siemens ISDN Chipset driver
joy:    Joystick
labpc:  National Instrument's Lab-PC and Lab-PC+
meteor: Matrox Meteor frame-grabber card
bktr:   Brooktree Bt848 / Bt 878 based frame-grabber cards.
mpu:    Roland MPU-401 stand-alone card
mse:    Microsoft, Logitech, ATI bus mouse ports
mss:    Microsoft Sound System
opl:    Yamaha OPL-2 and OPL-3 FM - SB, SB Pro, SB 16, ProAudioSpectrum
pas:    ProAudioSpectrum PCM and MIDI
pca:    PCM audio ("/dev/audio") through your PC speaker
pcm:    PCM audio on most modern PCI/ISA audio codecs
psm:    PS/2 mouse port
rc:     RISCom/8 multiport card
sb:     SoundBlaster PCM - SoundBlaster, SB Pro, SB16, ProAudioSpectrum
sbmidi: SoundBlaster 16 MIDI interface
sbxvi:  SoundBlaster 16
si:     Specialix SI/XIO/SX (old and enhanced ISA, PCI, EISA) serial
sym:    Alternate high-performance driver for NCR/LSI Logic SCSI controllers
spigot: Creative Labs Video Spigot video-acquisition board
uart:   Stand-alone 6850 UART for MIDI
wds:    Western Digital WD7000 IDE

--- end of list ---


4.      Supported Hardware
--      ------------------

FreeBSD currently runs on a wide variety of ISA, VLB, EISA,
Microchannel and PCI bus based PC's, ranging from 386sx to Pentium
class machines (though the 386sx is not recommended).  Support for
generic IDE or ESDI drive configurations, various SCSI controller,
network and serial cards is also provided.

What follows is a list of all peripherals currently known to work with
FreeBSD.  Other configurations may also work, we have simply not as yet
received confirmation of this.


4.1.    Disk Controllers
----    ----------------

IDE
ATA controllers:
    Acerlabs Aladdin
    AMD 756
    CMD 646
    Cypress 82C693
    HighPoint HPT366
    Intel PIIX
    Intel PIIX3
    Intel PIIX4
    Intel ICH
    Promise Fasttrak-33
    Promise Fasttrak-66
    Promise Ultra-33
    Promise Ultra-66
    SiS 5591
    VIA 82C586
    VIA 82C686

WD1003 (any generic MFM/RLL - obsolete)
WD1007 (any generic ESDI - obsolete)
* Note: now that the wd driver has been replaced by the ata driver framework,
which does not have bad144 support, the true MFM/RLL/ESDI drives/adapters 
have become obsolete.

Adaptec 1535 ISA SCSI controllers
Adaptec 154x series ISA SCSI controllers
Adaptec 174x series EISA SCSI controller in standard and enhanced mode.
Adaptec 274X/284X/2920C/294x/2950/19160/29160/3940/3950/39160
        Narrow/Wide/Twin series EISA/VLB/PCI SCSI controllers.
Adaptec AIC7850, AIC7860, AIC7880, AIC789x, on-board SCSI controllers.
Adaptec 1510 series ISA SCSI controllers (not for bootable devices)
Adaptec 152x series ISA SCSI controllers
Adaptec AIC-6260 and AIC-6360 based boards, which includes the AHA-152x
and SoundBlaster SCSI cards.

AdvanSys SCSI controllers (all models).

BusLogic MultiMaster controllers:

[ Please note that BusLogic/Mylex "Flashpoint" adapters are NOT yet supported ]

BusLogic MultiMaster "W" Series Host Adapters:
    BT-948, BT-958, BT-958D
BusLogic MultiMaster "C" Series Host Adapters:
    BT-946C, BT-956C, BT-956CD, BT-445C, BT-747C, BT-757C, BT-757CD, BT-545C,
    BT-540CF
BusLogic MultiMaster "S" Series Host Adapters:
    BT-445S, BT-747S, BT-747D, BT-757S, BT-757D, BT-545S, BT-542D, BT-742A,
    BT-542B
BusLogic MultiMaster "A" Series Host Adapters:
    BT-742A, BT-542B

AMI FastDisk controllers that are true BusLogic MultiMaster clones are also
supported.

DPT SmartCACHE Plus, SmartCACHE III, SmartRAID III, SmartCACHE IV and
SmartRAID IV SCSI/RAID controllers are supported.  The DPT SmartRAID/CACHE V
is not yet supported.

AMI MegaRAID Express and Enterprise family RAID controllers:
    MegaRAID 418
    MegaRAID Enterprise 1200 (428)
    MegaRAID Enterprise 1300
    MegaRAID Enterprise 1400
    MegaRAID Enterprise 1500
    MegaRAID Elite 1500
    MegaRAID Express 200
    MegaRAID Express 300
    Dell PERC
    Dell PERC 2/SC
    Dell PERC 2/DC
Some HP NetRAID controllers are OEM versions of AMI designs, and
these are also supported.

Mylex DAC960 and DAC1100 RAID controllers with 2.x, 3.x, 4.x and 5.x 
firmware:
    DAC960P
    DAC960PD
    DAC960PDU
    DAC960PL
    DAC960PJ
    DAC960PG
    AcceleRAID 150
    AcceleRAID 250
    eXtremeRAID 1100
This list includes controllers sold by Digital/Compaq in Alpha systems
in the StorageWorks family, eg. KZPSC, KZPAC.  EISA adaptes are not 
supported.

3ware Escalade ATA RAID controllers.  All members of the 5000 and
6000 series are supported.

Qlogic Controllers:
    Qlogic 1020, 1040 SCSI and Ultra SCSI Host Adaptes
    Qlogic 1240 dual Ultra SCSI controllers
    Qlogic 1080 Ultra2 LVD and 1280 Dual Ultra2 LVD Controllers
    Qlogic 12160 Ultra3 LVD Controllers
    Qlogic 2100 and Qlogic 2200 Fibre Channel SCSI Controllers

SymBios (formerly NCR) 53C810, 53C810a, 53C815, 53C820, 53C825a, 53C860,
53C875, 53C875e, 53C875j, 53C885, 53C895 and 53C896 PCI SCSI controllers:
    ASUS SC-200
    Data Technology DTC3130 (all variants)
    DawiControl DC2976UW
    Diamond FirePort (all)
    NCR cards (all)
    Symbios cards (all)
    Tekram DC390W, 390U and 390F
    Tyan S1365

DTC 3290 EISA SCSI controller in 1542 emulation mode.

Tekram DC390 and DC390T controllers (maybe other cards based on the
AMD 53c974 as well).

With all supported SCSI controllers, full support is provided for
SCSI-I & SCSI-II peripherals, including hard disks, optical disks,
tape drives (including DAT and 8mm Exabyte), medium changers, processor
target devices and CDROM drives.  WORM devices that support CDROM commands
are supported for read-only access by the CDROM driver.  WORM/CD-R/CD-RW
writing support is provided by cdrecord, which is in the ports tree.

The following CD-ROM type systems are supported at this time:
(cd)    SCSI interface (also includes SoundBlaster SCSI)
(matcd) Matsushita/Panasonic (Creative SoundBlaster) proprietary
        interface (562/563 models)
(scd)   Sony proprietary interface (all models)
(acd)   ATAPI IDE interface

Unmaintained drivers, they might or might not work for your hardware:

(mcd)   Mitsumi proprietary CD-ROM interface (all models)

4.2.    Network cards
----    -------------

Adaptec Duralink PCI fast ethernet adapters based on the Adaptec
AIC-6915 fast ethernet controller chip, including the following:
    ANA-62011 64-bit single port 10/100baseTX adapter
    ANA-62022 64-bit dual port 10/100baseTX adapter
    ANA-62044 64-bit quad port 10/100baseTX adapter
    ANA-69011 32-bit single port 10/100baseTX adapter
    ANA-62020 64-bit single port 100baseFX adapter

Allied-Telesyn AT1700 and RE2000 cards

Alteon Networks PCI gigabit ethernet NICs based on the Tigon 1 and Tigon 2
chipsets, including the following:
    3Com 3c985-SX (Tigon 1 and 2)
    Alteon AceNIC (Tigon 1 and 2)
    Alteon AceNIC 1000baseT (Tigon 2)
    DEC/Compaq EtherWORKS 1000
    NEC Gigabit Ethernet
    Netgear GA620 (Tigon 2)
    Netgear GA620T (Tigon 2, 1000baseT)
    Silicon Graphics Gigabit Ethernet
    Farallon PN9000SX

AMD PCnet/PCI (79c970 & 53c974 or 79c974)

SMC Elite 16 WD8013 ethernet interface, and most other WD8003E,
WD8003EBT, WD8003W, WD8013W, WD8003S, WD8003SBT and WD8013EBT
based clones.  SMC Elite Ultra is also supported.

RealTek 8129/8139 fast ethernet NICs including the following:
    Accton "Cheetah" EN1027D (MPX 5030/5038; RealTek 8139 clone?)
    Allied Telesyn AT2550
    Allied Telesyn AT2500TX
    Genius GF100TXR (RTL8139)
    KTX-9130TX 10/100 Fast Ethernet
    NDC Communications NE100TX-E
    Netronix Inc. EA-1210 NetEther 10/100
    OvisLink LEF-8129TX
    OvisLink LEF-8139TX
    SMC EZ Card 10/100 PCI 1211-TX
    
Lite-On 82c168/82c169 PNIC fast ethernet NICs including the following:
    Kingston KNE110TX
    LinkSys EtherFast LNE100TX
    Matrox FastNIC 10/100
    NetGear FA310-TX Rev. D1

Macronix 98713, 98713A, 98715, 98715A and 98725 fast ethernet NICs
    Accton EN1217 (98715A)
    Adico AE310TX (98715A)
    CNet Pro120A (98713 or 98713A)
    CNet Pro120B (98715)
    NDC Communications SFA100A (98713A)
    SVEC PN102TX (98713)

Macronix/Lite-On PNIC II LC82C115 fast ethernet NICs including the following:
    LinkSys EtherFast LNE100TX Version 2

Winbond W89C840F fast ethernet NICs including the following:
    Trendware TE100-PCIE

VIA Technologies VT3043 "Rhine I" and VT86C100A "Rhine II" fast ethernet
NICs including the following:
    AOpen/Acer ALN-320
    D-Link DFE-530TX
    Hawking Technologies PN102TX

Silicon Integrated Systems SiS 900 and SiS 7016 PCI fast ethernet NICs

National Semiconductor DP83815 fast ethernet NICs including the following:
    NetGear FA311-TX
    NetGear FA312-TX

Sundance Technologies ST201 PCI fast ethernet NICs including
the following:
    D-Link DFE-550TX

SysKonnect SK-984x PCI gigabit ethernet cards including the following:
    SK-9841 1000baseLX single mode fiber, single port
    SK-9842 1000baseSX multimode fiber, single port
    SK-9843 1000baseLX single mode fiber, dual port
    SK-9844 1000baseSX multimode fiber, dual port
    SK-9821 1000baseT copper, single port
    SK-9822 1000baseT copper, dual port

Texas Instruments ThunderLAN PCI NICs, including the following:
    Compaq Netelligent 10, 10/100, 10/100 Proliant, 10/100 Dual-Port
    Compaq Netelligent 10/100 TX Embedded UTP, 10 T PCI UTP/Coax, 10/100 TX UTP
    Compaq NetFlex 3P, 3P Integrated, 3P w/ BNC
    Olicom OC-2135/2138, OC-2325, OC-2326 10/100 TX UTP
    Racore 8165 10/100baseTX
    Racore 8148 10baseT/100baseTX/100baseFX multi-personality

ADMtek Inc. AL981-based PCI fast ethernet NICs

ADMtek Inc. AN985-based PCI fast ethernet NICs including the following:
    LinkSys EtherFast LNE100TX v4.0/4.1

ADMtek Inc. AN986-based USB ethernet NICs including the following:
    Billionton USB100
    D-Link DSB-650TX
    LinkSys USB100TX
    Melco Inc. LU-ATX
    SMC 2202USB

CATC USB-EL1210A-based USB ethernet NICs including the following:
    Belkin F5U011
    Belkin F5U111
    CATC Netmate
    CATC Netmate II

Kawasaki LSI KL5KUSB101B-based USB ethernet NICs including
the following:
    3Com 3c19250
    ADS Technologies USB-10BT
    ATen UC10T
    Corega USB-T
    D-Link DSB-650
    Entrega NET-USB-E45
    LinkSys USB10T
    Netgear EA101
    Peracom USB Ethernet Adapter
    SMC 2102USB
    SMC 2104USB

ASIX Electronics AX88140A PCI NICs, including the following:
    Alfa Inc. GFC2204
    CNet Pro110B

DEC EtherWORKS III NICs (DE203, DE204, and DE205)
DEC EtherWORKS II NICs (DE200, DE201, DE202, and DE422)
DEC DC21040, DC21041, or DC21140 based NICs (SMC Etherpower 8432T, DE245, etc)
DEC FDDI (DEFPA/DEFEA) NICs

Davicom DM9100 and DM9102 PCI fast ethernet NICs, including the
following:
    Jaton Corporation XPressNet

Efficient ENI-155p ATM PCI

FORE PCA-200E ATM PCI

Fujitsu MB86960A/MB86965A

HP PC Lan+ cards (model numbers: 27247B and 27252A).

Intel EtherExpress (not recommended due to driver instability)
Intel EtherExpress Pro/10
Intel EtherExpress Pro/100B PCI Fast Ethernet
Intel PRO/100+ Management Adapter
Intel Gigabit Ethernet (PRO/1000)

Isolan AT 4141-0 (16 bit)
Isolink 4110     (8 bit)

Novell NE1000, NE2000, and NE2100 ethernet interface.
PCI network cards emulating the NE2000: RealTek 8029, NetVin 5000,
Winbond W89C940, Surecom NE-34, VIA VT86C926, etc.

3Com 3C501 cards

3Com 3C503 Etherlink II

3Com 3C507 Etherlink 16/TP

3Com 3C509, 3C529, 3C556, 3C562D, 3C563D, 3C572, 3C574X, 3C579, 
3C589/589B/589C/589D/589E/XE589ET/574TX/574B (PC-card/PCMCIA), 
3C590/592/595/900/905/905B/905C PCI 
and EISA (Fast) Etherlink III / (Fast) Etherlink XL

3Com 3c980/3c980B/3c980C Fast Etherlink XL server adapter

3Com 3cSOHO100-TX OfficeConnect adapter

3Com 3c450-TX HomeConnect adapter

Toshiba ethernet cards

NE2000 compatible PC-Card (PCMCIA) Ethernet/FastEthernet cards,
including the following:
    AR-P500 Ethernet card
    Accton EN2212/EN2216/UE2216(OEM)
    Allied Telesis CentreCOM LA100-PCM_V2
    AmbiCom 10BaseT card
    BayNetworks NETGEAR FA410TXC Fast Ethernet
    CNet BC40 adapter
    COREGA Ether PCC-T/EtherII PCC-T
    Compex Net-A adapter
    CyQ've ELA-010
    D-Link DE-650/660
    Danpex EN-6200P2
    IO DATA PCLATE
    IBM Creditcard Ethernet I/II
    IC-CARD Ethernet/IC-CARD+ Ethernet
    Linksys EC2T/PCMPC100
    Melco LPC-T
    NDC Ethernet Instant-Link
    National Semiconductor InfoMover NE4100
    Network Everywhere Ethernet 10BaseT PC Card
    Planex FNW-3600-T
    Socket LP-E
    Surecom EtherPerfect EP-427
    Telecom Device SuperSocket RE450T

Megahertz X-Jack Ethernet PC-Card CC-10BT


4.3.    USB
----    ---

A range of USB peripherals are supported.  Owing to the generic nature
of most USB devices, with some exceptions any device of a given class
will be supported even if not explicitly listed here.

USB keyboards.

USB mice.

USB printers and USB to parallel printer conversion cables.

USB hubs.

USB ethernet controllers.


USB Host Controllers:
    ALi Aladdin-V.
    AMD-756.
    CMD Tech 670 & 673.
    Intel 82371SB (PIIX3).
    Intel 82371AB and EB chipsets (PIIX4).
    NEC uPD 9210.
    OPTi 82C861 (FireLink).
    SiS 5571.
    VIA 83C572 USB.
    and any other UHCI or OHCI compliant motherboard chipset (no exceptions
    known).


PCI plug-in USB host controllers:
    ADS Electronics PCI plug-in card (2 ports).
    Entrega PCI plug-in card (4 ports).


Specific devices reported to be working (see for USB ethernet devices supported
above):

ActiveWire I/O Board.

Agiler Mouse 29UO.

Andromeda hub.

Apple iMac mouse.
Apple iMac keyboard.

ATen parallel printer adapter.

Belkin F5U002 parallel printer adapter.
Belkin Mouse.

BTC BTC7935 keyboard with mouse port.

Cherry G81-3504 keyboard.

Chic mouse.

Cypress mouse.

Entrega USB-to-parallel printer adapter.

Genius Niche mouse.

Iomega USB Zip 100Mb (primitive support still).

Kensington Mouse-in-a-Box.

Logitech M2452 keyboard.
Logitech wheel mouse (3 buttons).
Logitech PS/2 / USB mouse (3 buttons).

MacAlly mouse (3 buttons).
MacAlly self powered hub (4 ports).
MacAlly iKey keyboard.

Matshita CF-VFDU03 floppy drive.

Microsoft IntelliMouse (3 buttons).
Microsoft keyboard.

Microtech USB-SCSI-HD 50 USB to SCSI cable.

NEC hub.

Panasonic floppy drive.

Trust Ami Mouse (3 buttons).

Y-E Data floppy drive (720/1.44/2.88Mb).


4.4.    ISDN (European DSS1 [Q.921/Q.931] protocol)
----    -------------------------------------------

Asuscom ISDNlink 128K PnP

AVM A1
AVM Fritz!Card classic
AVM Fritz!Card PCI

Creatix ISDN-S0/8
Creatix ISDN-S0/16
Creatix ISDN-S0 PnP

Dr.Neuhaus Niccy 1008
Dr.Neuhaus Niccy 1016
Dr.Neuhaus Niccy GO@ (ISA PnP)

ELSA QuickStep 1000pro ISA
ELSA MicroLink ISDN/PCI (same as ELSA QuickStep 1000pro PCI)
ELSA PCC-16

Sagem Cybermod (ISA PnP)

Sedlbauer Win Speed

Siemens I-Surf 2.0

Teles S0/8
Teles S0/16
Teles S0/16.3 (the "c" Versions - like 16.3c - are unsupported !)
Teles S0/16.3 PnP


4.5.    Misc
----    ----

AST 4 port serial card using shared IRQ.

ARNET 8 port serial card using shared IRQ.
ARNET (now Digiboard) Sync 570/i high-speed serial.

Boca BB1004 4-Port serial card (Modems NOT supported)
Boca IOAT66 6-Port serial card (Modems supported)
Boca BB1008 8-Port serial card (Modems NOT supported)
Boca BB2016 16-Port serial card (Modems supported)

Cyclades Cyclom-y Serial Board.

STB 4 port card using shared IRQ.

SDL Communications Riscom/8 Serial Board.
SDL Communications RISCom/N2 and N2pci high-speed sync serial boards.

Specialix SI/XIO/SX multiport serial cards, with both the older
SIHOST2.x and the new "enhanced" (transputer based, aka JET) host cards.
ISA, EISA and PCI are supported.

Stallion multiport serial boards: EasyIO, EasyConnection 8/32 & 8/64,
ONboard 4/16 and Brumby.

HP4020, HP6020, Philips CDD2000/CDD2660 and Plasmon CD-R drives.

Bus mice

PS/2 mice

Standard PC Joystick

X-10 power controllers

GPIB and Transputer drivers.

Genius and Mustek hand scanners.

Lucent Technologies WaveLAN/IEEE 802.11 PCMCIA and ISA standard speed
(2Mbps) and turbo speed (6Mbps) wireless network adapters and workalikes
(NCR WaveLAN/IEEE 802.11, Cabletron RoamAbout 802.11 DS).  Note: the
ISA versions of these adapters are actually PCMCIA cards combined with
an ISA to PCMCIA bridge card, so both kinds of devices work with
the same driver.

Aironet 4500/4800 series 802.11 wireless adapters. The PCMCIA,      
PCI and ISA adapters are all supported. 

4.6.    Microchannel
----    ------------

Experimental support for Microchannel systems is new in FreeBSD 4.0

Drivers with support for Microchannel peripherals are:

aha:	Adaptec AHA-1640 SCSI controller
bt:	Buslogic BT-640A and Storage Dimensions SDC3211 SCSI controllers
ep:	3Com 3C529 network adapter


4.7.    Multimedia
----    ----------

Soundcards supported by newpcm:

Advance Asound 100, 110 and Logic ALS120

Crystal Semiconductor CS461x/462x/428x

ENSONIQ ES1370/1371 soundcards including the following:
    ENSONIQ AudioPCI64 ES1370/1371

ESS ES1868, ES1869, ES1879 and ES1888

Gravis UltraSound MAX/PnP

MSS/WSS Compatible DSPs

NeoMagic 256AV/ZX

OPTi 931/82C931

SoundBlaster, Soundblaster Pro, Soundblaster AWE-32, Soundblaster AWE-64

Trident 4DWave DX/NX

Matrox Meteor Video frame grabber
Creative Labs Video Spigot frame grabber
Cortex1 frame grabber
Various Frame grabbers based on Brooktree Bt848 and Bt878 chip.