1 <!-- $FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/common/config.sgml,v 1.1.2.2 2001/09/06 23:18:26 bmah Exp $ -->
2 <!-- $DragonFly: src/release/doc/en_US.ISO8859-1/hardware/common/Attic/config.sgml,v 1.2 2003/06/17 04:27:19 dillon Exp $ -->
6 <title>Boot-time Kernel Configuration</title>
8 <para>This section describes the boot-time configuration of the
13 <title>Default Configuration</title>
15 <para>The following table contains a list of all of the devices
16 that are present in the <filename>GENERIC</filename> kernel. This
17 is the essential part of the operating system that is placed in
18 your root partition during the installation process. A compressed
19 version of the <filename>GENERIC</filename> kernel is also used on
20 the installation floppy diskette and DOS boot image.</para>
22 <para>The table describes the various parameters used by the
23 driver to communicate with the hardware in your system. There are
24 four parameters in the table, though not all are used by each and
27 <informaltable frame=none>
28 <tgroup cols=2 align=left>
29 <colspec colwidth="*">
30 <colspec colwidth="5*">
34 <entry>The starting I/O port used by the device, shown in hexadecimal.</entry>
38 <entry>The interrupt the device uses to alert the driver to an event,
39 given in decimal.</entry>
43 <entry>The DMA (direct memory access) channel the device uses to move
44 data to and from main memory, also given in decimal.</entry>
48 <entry>The lowest (or starting) memory address used by the device,
49 also shown in hexadecimal.</entry>
55 If an entry in the table has `n/a' for a value then it means that
56 the parameter in question does not apply to that device. A value
57 of `dyn' means that the correct value should be determined
58 automatically by the kernel when the system boots and that you
59 don't need to worry about it.</para>
61 <para>If an entry is marked with an *, it means that support is
62 currently not available for it but should be back as soon as
63 someone converts the driver to work within the new (post-4.0)
67 <informaltable frame=none>
68 <tgroup cols=6 align=left>
69 <colspec colwidth="*">
70 <colspec colwidth="*">
71 <colspec colwidth="*">
72 <colspec colwidth="*">
73 <colspec colwidth="*">
74 <colspec colwidth="5*">
82 <entry>Description</entry>
92 <entry>Floppy disk controller</entry>
101 <entry>ATA/ATAPI controller</entry>
110 <entry>ATA/ATAPI controller</entry>
114 <entry>atadisk0</entry>
119 <entry>ATA disk drives</entry>
123 <entry>atapicd0</entry>
128 <entry>ATAPI CDROM drives</entry>
132 <entry>atapifd0</entry>
137 <entry>ATAPI floppy drives</entry>
141 <entry>atapist0</entry>
146 <entry>ATAPI tape drives</entry>
155 <entry>AdvanSys Narrow SCSI controllers</entry>
164 <entry>AdvanSys Wide SCSI controllers</entry>
173 <entry>AMD 53C974 (Tekram DC390(T))</entry>
182 <entry>NCR PCI SCSI controller</entry>
191 <entry>Buslogic SCSI controller</entry>
200 <entry>Adaptec 154x/1535 SCSI controller</entry>
209 <entry>Adaptec 174x SCSI controller</entry>
218 <entry>Adaptec 274x/284x/294x SCSI controller</entry>
227 <entry>Adaptec 152x/AIC-6360/AIC-6260 SCSI controller</entry>
236 <entry>QLogic 10X0, 1240 Ultra SCSI, 1080/1280 Ultra2 SCSI, 12160 Ultra3 SCSI, 2X00 Fibre Channel SCSI controller</entry>
245 <entry>DPT RAID SCSI controllers</entry>
254 <entry>AMI MegaRAID controllers</entry>
263 <entry>Mylex DAC960 RAID controllers</entry>
272 <entry>3ware Escalade RAID controllers</entry>
281 <entry>DPT SmartRaid V, VI, and Adaptec SCSI RAID</entry>
290 <entry>Mylex AcceleRAID/eXtremeRAID</entry>
299 <entry>Adaptec FSA family PCI SCSI RAID</entry>
308 <entry>NCR 53C500 based PC-Card SCSI</entry>
317 <entry>Workbit Ninja SCSI-3 based PC-Card SCSI</entry>
326 <entry>TMC 18C30/50 based ISA/PC-Card SCSI</entry>
335 <entry>Wangtek and Archive QIC-02/QIC-36</entry>
344 <entry>PS/2 Mouse</entry>
353 <entry>Mitsumi CD-ROM</entry>
357 <entry>matcd0</entry>
362 <entry>Matsushita/Panasonic CD-ROM</entry>
371 <entry>Sony CD-ROM</entry>
380 <entry>Serial Port 0 (COM1)</entry>
389 <entry>Serial Port 1 (COM2)</entry>
398 <entry>Printer ports</entry>
407 <entry>DEC/Intel 21143 cards and workalikes</entry>
416 <entry>DEC DC21x40 PCI based cards (including 21140 100bT cards)</entry>
425 <entry>WD & SMC 80xx; Novell NE1000 & NE2000; 3Com 3C503; HP PC Lan+</entry>
434 <entry>3Com 3C509, 3C529, 3C556, 3C562D, 3C563D, 3C572, 3C574X, 3C579, 3C589</entry>
443 <entry>Intel EtherExpress Pro/10 cards</entry>
452 <entry>Allied-Telesyn AT1700, RE2000 and Fujitsu FMV-180 series cards.</entry>
461 <entry>Intel EtherExpress Pro/100B and Intel PRO/100+ Management Adapter</entry>
470 <entry>AT&T StarLAN 10 and EN100; 3Com 3C507; NI5210; Intel EtherExpress (8/16,16[TP]) cards</entry>
479 <entry>Digital Equipment EtherWorks 2 and EtherWorks 3</entry>
488 <entry>Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, some PCnet-PCI cards)</entry>
497 <entry>AMD PCnet/FAST, PCnet/FAST+, PCnet/FAST III, PCnet/PRO, PCnet/Home, and HomePNA cards</entry>
506 <entry>RealTek 8129/8139 fast ethernet</entry>
515 <entry>Adaptec AIC-6915 fast ethernet</entry>
524 <entry>SiS 900/SiS 7016 fast ethernet</entry>
533 <entry>SMC 91xx ethernet</entry>
542 <entry>Sundance ST201 fast ethernet</entry>
551 <entry>TI TNET100 'ThunderLAN' cards.</entry>
560 <entry>SMC 9432 'Epic' fast ethernet</entry>
569 <entry>Winbond W89C840F PCI based cards.</entry>
578 <entry>VIA VT3043/VT86C100A PCI based cards.</entry>
587 <entry>3Com 3c59x ((Fast) Etherlink III)</entry>
596 <entry>Xircom CreditCard adapters (16 bit)</entry>
605 <entry>3Com 3c900, 3c905, 3c905B, 3c905C, 3c980, 3cSOHO100 ((Fast) Etherlink XL)</entry>
614 <entry>Crystal Semiconductor CS89x0-based cards.</entry>
622 <para>If the hardware in your computer is not set to the same
623 settings as those shown in the table and the item in conflict is
624 not marked 'dyn', you will have to either reconfigure your
625 hardware or use UserConfig to reconfigure the kernel to match the
626 way your hardware is currently set (see the next section).</para>
628 <para>If the settings do not match, the kernel may be unable to
629 locate or reliably access the devices in your system.</para>
634 <title>Using UserConfig to change FreeBSD kernel settings</title>
637 <para>The markup for this section leaves a lot to be desired.</para>
640 <para>The FreeBSD kernel on the install floppy contains drivers
641 for every piece of hardware that could conceivably be used to
642 install the rest of the system with. Unfortunately, PC hardware
643 being what it is, some of these devices can be difficult to detect
644 accurately, and for some, the process of detecting another can
645 cause irreversible confusion.</para>
647 <para>To make this process easier, FreeBSD provides UserConfig.
648 With this tool the user can configure and disable device drivers
649 before the kernel is loaded, avoiding potential conflicts, and
650 eliminating the need to reconfigure hardware to suit the default
651 driver settings.</para>
653 <para>Once FreeBSD is installed, it will remember the changes made using
654 UserConfig, so that they only need be made once.</para>
656 <para>It is important to disable drivers that are not relevant to
657 a system in order to minimize the possibility of interference,
658 which can cause problems that are difficult to track down.</para>
660 <para>UserConfig features a command line interface for users with
661 serial consoles or a need to type commands, and a full screen
662 <quote>visual</quote> interface, which provides point-and-shoot
663 configuration functionality.</para>
665 <para>Here is a sample UserConfig screen shot in
666 <quote>visual</quote> mode:</para>
668 <screen>---Active Drivers---------------------------10 Conflicts------Dev---IRQ--Port--
669 Storage : (Collapsed)
671 NE1000,NE2000,3C503,WD/SMC80xx Ethernet adapters CONF ed0 5 0x280
672 NE1000,NE2000,3C503,WD/SMC80xx Ethernet adapters CONF ed1 5 0x300
673 Communications : (Collapsed)
676 ---Inactive Drivers-------------------------------------------Dev--------------
678 Network : (Collapsed)
684 ---Parameters-for-device-ed0---------------------------------------------------
685 Port address : 0x280 Memory address : 0xd8000
686 IRQ number : 5 Memory size : 0x2000
688 -------------------------------------------------------------------------------
689 IO Port address (Hexadecimal, 0x1-0x2000)
690 [TAB] Change fields [Q] Save device parameters</screen>
692 <para>The screen is divided into four sections:
695 <para>Active Drivers. Listed here are the device drivers
696 that are currently enabled, and their basic
700 <para>Inactive Drivers. These drivers are present, but are
704 <para>Parameter edit field. This area is used for editing
705 driver parameters.</para>
708 <para>Help area. Keystroke help is displayed here.</para>
713 <para>One of the Active and Inactive lists is always in use, and
714 the current entry in the list will be shown with a highlight bar.
715 If there are more entries in a list than can be shown, it will
716 scroll. The bar can be moved up and down using the cursor keys,
717 and moved between lists with the TAB key.</para>
719 <para>Drivers in the Active list may be marked
720 <literal>CONF</literal>. This indicates that one or more of their
721 parameters conflicts with another device, and indicates a
722 potential for problems. The total number of conflicts is
723 displayed at the top of the screen.</para>
725 <para>As a general rule, conflicts should be avoided, either by
726 disabling conflicting devices that are not present in the system,
727 or by altering their configuration so that they match the
728 installed hardware.</para>
730 <para>In the list areas, drivers are grouped by their basic
731 function. Groups can be <literal>Collapsed</literal> to simplify
732 the display (this is the default state for all groups). If a
733 group is collapsed, it will be shown with
734 <literal>Collapsed</literal> in the list, as above. To Expand a
735 Collapsed group, position the highlight bar over the group heading
736 and press Enter. To Collapse it again, repeat the process.</para>
738 <para>When a device driver in the Active list is highlighted, its
739 full parameters are displayed in the Parameter edit area. Note
740 that not all drivers use all possible parameters, and some
741 hardware supported by drivers may not use all the parameters the
742 driver supports.</para>
744 <para>To disable a driver, go to the Active list, Expand the group
745 it is in, highlight the driver and press Del. The driver will
746 move to its group in the Inactive list. (If the group is
747 collapsed or off the screen, you may not see the driver in its new
750 <para>To enable a driver, go to the Inactive list, Expand the
751 group it is in, highlight the driver and press Enter. The
752 highlight will move to the Active list, and the driver you have
753 just enabled will be highlighted, ready to be configured.</para>
755 <para>To configure a driver, go to the Active list, Expand the
756 group it is in, highlight the driver and press Enter. The cursor
757 will move to the Parameter edit area, and the device's parameters
758 may be edited.</para>
760 <para>While editing parameters, the TAB and cursor keys can be
761 used to move between fields. Most numeric values (except IRQ) are
762 entered in hexadecimal, as indicated by the '0x' at the beginning
763 of the field. The allowable values for a given field are show in
764 the Key Help area when the field is active.</para>
766 <para>To finish configuring a driver, press 'Q'.</para>
768 <para>Note that PCI, Microchannel and EISA devices can be probed
769 reliably, therefore they are not shown in the table above nor can
770 their settings be changed using UserConfig.</para>