12365e64fSRodney W. Grimes# 22365e64fSRodney W. Grimes# LINT -- config file for checking all the sources, tries to pull in 32365e64fSRodney W. Grimes# as much of the source tree as it can. 42365e64fSRodney W. Grimes# 5ca83dc2dSJordan K. Hubbard# $Id: LINT,v 1.149 1995/03/02 04:06:07 jkh Exp $ 62365e64fSRodney W. Grimes# 73aa06999SGarrett Wollman# NB: You probably don't want to try running a kernel built from this 83aa06999SGarrett Wollman# file. Instead, you should start from GENERIC, and add options from 93aa06999SGarrett Wollman# this file as required. 102365e64fSRodney W. Grimes# 112365e64fSRodney W. Grimes 126a8d6623SGarrett Wollman# 136a8d6623SGarrett Wollman# This directive is mandatory; it defines the architecture to be 146a8d6623SGarrett Wollman# configured for; in this case, the 386 family. You must also specify 156a8d6623SGarrett Wollman# at least one CPU (the one you intend to run on); deleting the 166a8d6623SGarrett Wollman# specification for CPUs you don't need to use may make parts of the 176a8d6623SGarrett Wollman# system run faster 186a8d6623SGarrett Wollman# 192365e64fSRodney W. Grimesmachine "i386" 20f87a3269SRodney W. Grimescpu "I386_CPU" 21f87a3269SRodney W. Grimescpu "I486_CPU" 22ca83dc2dSJordan K. Hubbardcpu "I586_CPU" # aka Pentium(tm) 232365e64fSRodney W. Grimes 246a8d6623SGarrett Wollman# 256a8d6623SGarrett Wollman# This is the ``identification'' of the kernel. Usually this should 266a8d6623SGarrett Wollman# be the same as the name of your kernel. 276a8d6623SGarrett Wollman# 286a8d6623SGarrett Wollmanident LINT 296a8d6623SGarrett Wollman 306a8d6623SGarrett Wollman# 316a8d6623SGarrett Wollman# The `maxusers' parameter controls the static sizing of a number of 326a8d6623SGarrett Wollman# internal system tables by a complicated formula defined in param.c. 336a8d6623SGarrett Wollman# 346a8d6623SGarrett Wollmanmaxusers 10 356a8d6623SGarrett Wollman 366a8d6623SGarrett Wollman# 37663afbc3SScott Mace# Under some circumstances it is necessary to make the default max 38663afbc3SScott Mace# number of proccesses per user and open files per user more than the 39663afbc3SScott Mace# defaults on bootup. (an example is a large news server in which 40663afbc3SScott Mace# the uid, news, can sometimes need > 100 simultaneous processes running) 41663afbc3SScott Maceoptions "CHILD_MAX=128" 42663afbc3SScott Maceoptions "OPEN_MAX=128" 43663afbc3SScott Mace 44663afbc3SScott Mace# 456a8d6623SGarrett Wollman# A math emulator is mandatory if you wish to run on hardware which 466a8d6623SGarrett Wollman# does not have a floating-point processor. Pick either the original, 476a8d6623SGarrett Wollman# bogus (but freely-distributable) math emulator, or a much more 486a8d6623SGarrett Wollman# fully-featured but GPL-licensed emulator taken from Linux. 496a8d6623SGarrett Wollman# 506a8d6623SGarrett Wollmanoptions MATH_EMULATE #Support for x87 emulation 51cfecaf32SGary Clark II#options GPL_MATH_EMULATE #Support for x87 emualtion via 52cfecaf32SGary Clark II #new math emulator 53cfecaf32SGary Clark II 546a8d6623SGarrett Wollman# 556a8d6623SGarrett Wollman# This directive defines a number of things: 566a8d6623SGarrett Wollman# - The compiled kernel is to be called `kernel' 576a8d6623SGarrett Wollman# - The root filesystem might be on partition wd0a 586a8d6623SGarrett Wollman# - The kernel can swap on wd0b and sd0b, defaulting to the former 596a8d6623SGarrett Wollman# - Crash dumps will be written to wd0b, if possible 606a8d6623SGarrett Wollman# 61d5e4441dSDavid Greenmanconfig kernel root on wd0 swap on wd0 and sd0 dumps on wd0 622365e64fSRodney W. Grimes 636a8d6623SGarrett Wollman 646a8d6623SGarrett Wollman##################################################################### 656a8d6623SGarrett Wollman# COMPATIBILITY OPTIONS 66690f540cSAndrey A. Chernov 676a8d6623SGarrett Wollman# 686a8d6623SGarrett Wollman# Implement system calls compatible with 4.3BSD and older versions of 696a8d6623SGarrett Wollman# FreeBSD. 706a8d6623SGarrett Wollman# 716a8d6623SGarrett Wollmanoptions "COMPAT_43" 726a8d6623SGarrett Wollman 736a8d6623SGarrett Wollman# 746a8d6623SGarrett Wollman# Allow user-mode programs to manipulat their local descriptor tables. 756a8d6623SGarrett Wollman# This option is required for the WINE Windows(tm) emulator, and is 766a8d6623SGarrett Wollman# not used by anything else (that we know of). 776a8d6623SGarrett Wollman# 786a8d6623SGarrett Wollmanoptions USER_LDT #allow user-level control of i386 ldt 796a8d6623SGarrett Wollman 806a8d6623SGarrett Wollman# 816a8d6623SGarrett Wollman# These three options provide support for System V Interface 826a8d6623SGarrett Wollman# Definition-style interprocess communication, in the form of shared 836a8d6623SGarrett Wollman# memory, semaphores, and message queues, respectively. 846a8d6623SGarrett Wollman# 856a8d6623SGarrett Wollmanoptions SYSVSHM 866a8d6623SGarrett Wollmanoptions SYSVSEM 876a8d6623SGarrett Wollmanoptions SYSVMSG 886a8d6623SGarrett Wollman 896a8d6623SGarrett Wollman 906a8d6623SGarrett Wollman##################################################################### 916a8d6623SGarrett Wollman# DEBUGGING OPTIONS 926a8d6623SGarrett Wollman 936a8d6623SGarrett Wollman# 94b5d89ca8SBruce Evans# Enable the kernel debugger. 956a8d6623SGarrett Wollman# 96b5d89ca8SBruce Evansoptions DDB 97b5d89ca8SBruce Evans 98b5d89ca8SBruce Evans# 99b5d89ca8SBruce Evans# Enable dumping of the kernel image to swap for panics. This is not 100b5d89ca8SBruce Evans# the default because writing to misconfigured swap may wipe out file 101b5d89ca8SBruce Evans# systems. 102b5d89ca8SBruce Evans# 103b5d89ca8SBruce Evansoptions DODUMP 1046a8d6623SGarrett Wollman 1056a8d6623SGarrett Wollman# 1066a8d6623SGarrett Wollman# KTRACE enables the system-call tracing facility ktrace(2). 1076a8d6623SGarrett Wollman# 1082365e64fSRodney W. Grimesoptions KTRACE #kernel tracing 10921c64a07SAndrey A. Chernov 1106a8d6623SGarrett Wollman# 1116a8d6623SGarrett Wollman# The DIAGNOSTIC option is used in a number of source files to enable 1126a8d6623SGarrett Wollman# extra sanity checking of internal structures. This support is not 1136a8d6623SGarrett Wollman# enabled by default because of the extra time it would take to check 1146a8d6623SGarrett Wollman# for these conditions, which can only occur as a result of 1156a8d6623SGarrett Wollman# programming errors. 1166a8d6623SGarrett Wollman# 1170dc7d907SPoul-Henning Kampoptions DIAGNOSTIC 118da59a31cSDavid Greenman 1190dd1eea1SJordan K. Hubbard# 1200dd1eea1SJordan K. Hubbard# Allow ordinary users to take the console - this is useful for X. 1210dd1eea1SJordan K. Hubbardoptions UCONSOLE 1220dd1eea1SJordan K. Hubbard 1236a8d6623SGarrett Wollman 1246a8d6623SGarrett Wollman##################################################################### 1256a8d6623SGarrett Wollman# NETWORKING OPTIONS 12670c0b54cSAndrey A. Chernov 1276a8d6623SGarrett Wollman# 1286a8d6623SGarrett Wollman# Protocol families: 1296a8d6623SGarrett Wollman# Only the INET (Internet) family is officially supported in FreeBSD. 1306a8d6623SGarrett Wollman# Source code for the NS (Xerox Network Service), ISO (OSI), and 1316a8d6623SGarrett Wollman# CCITT (X.25) families is provided for amusement value, although we 1326a8d6623SGarrett Wollman# try to ensure that it actually compiles. 1336a8d6623SGarrett Wollman# 1346a8d6623SGarrett Wollmanoptions INET #Internet communications protocols 1356a8d6623SGarrett Wollmanoptions ISO 1366a8d6623SGarrett Wollmanoptions CCITT #X.25 network layer 1376a8d6623SGarrett Wollmanoptions NS #Xerox NS communications protocols 138d29895dcSGarrett Wollmanoptions TPIP #ISO TP class 4 over IP 139d29895dcSGarrett Wollmanoptions TPCONS #ISO TP class 0 over X.25 14063a74862SSteven Wallace 1416a8d6623SGarrett Wollman# 1426a8d6623SGarrett Wollman# Network interfaces: 1436a8d6623SGarrett Wollman# The `loop' pseudo-device is mandatory when networking is enabled. 1446a8d6623SGarrett Wollman# The `ether' pseudo-device provides generic code to handle 1456a8d6623SGarrett Wollman# Ethernets; it is mandatory when a Ethernet device driver is 1466a8d6623SGarrett Wollman# configured. 14783401efaSGarrett Wollman# The `sppp' pseudo-device serves a similar role for certain types 14883401efaSGarrett Wollman# of synchronous PPP links (like `cx'). 1496a8d6623SGarrett Wollman# The `sl' pseudo-device implements the Serial Line IP (SLIP) service. 1506a8d6623SGarrett Wollman# The `ppp' pseudo-device implements the Point-to-Point Protocol. 151d29895dcSGarrett Wollman# The `bpfilter' pseudo-device enables the Berkeley Packet Filter. Be 152d29895dcSGarrett Wollman# aware of the legal and administrative consequences of enabling this 153d29895dcSGarrett Wollman# option. The number of devices determines the maximum number of 154d29895dcSGarrett Wollman# simultaneous BPF clients programs runnable. 15559d8d13fSGarrett Wollman# The `disc' pseudo-device implements a minimal network interface, 15659d8d13fSGarrett Wollman# which throws away all packets sent and never receives any. It is 15759d8d13fSGarrett Wollman# included for testing purposes. 158b60d4a5dSAtsushi Murai# The `tun' pseudo-device implements the User Process PPP (iijppp) 1596a8d6623SGarrett Wollman# 1606a8d6623SGarrett Wollmanpseudo-device ether #Generic Ethernet 16183401efaSGarrett Wollmanpseudo-device sppp #Generic Synchronous PPP 1626a8d6623SGarrett Wollmanpseudo-device loop #Network loopback device 1636a8d6623SGarrett Wollmanpseudo-device sl 2 #Serial Line IP 1646a8d6623SGarrett Wollmanpseudo-device ppp 2 #Point-to-point protocol 165d29895dcSGarrett Wollmanpseudo-device bpfilter 4 #Berkeley packet filter 16659d8d13fSGarrett Wollmanpseudo-device disc #Discard device 1672d3f9865SAtsushi Muraipseudo-device tun 1 #Tunnel driver(user process ppp) 168d29895dcSGarrett Wollman 1696a8d6623SGarrett Wollmanoptions NSIP #XNS over IP 1706a8d6623SGarrett Wollmanoptions EON #ISO CLNP over IP 1716a8d6623SGarrett Wollmanoptions LLC #X.25 link layer for Ethernets 1726a8d6623SGarrett Wollmanoptions HDLC #X.25 link layer for serial lines 1736a8d6623SGarrett Wollman 1746a8d6623SGarrett Wollman# 1756a8d6623SGarrett Wollman# Internet family options: 1766a8d6623SGarrett Wollman# 1776a8d6623SGarrett Wollman# TCP_COMPAT_42 causes the TCP code to emulate certain bugs present in 1786a8d6623SGarrett Wollman# 4.2BSD. This option should not be used unless you have a 4.2BSD 1796a8d6623SGarrett Wollman# machine and TCP connections fail. 1806a8d6623SGarrett Wollman# 1816a8d6623SGarrett Wollman# GATEWAY allows the machine to forward packets, and also configures 1826a8d6623SGarrett Wollman# larger static sizes of a number of system tables. 1836a8d6623SGarrett Wollman# 1846a8d6623SGarrett Wollman# MROUTING enables the kernel multicast packet forwarder, which works 1856a8d6623SGarrett Wollman# with mrouted(8). 1866a8d6623SGarrett Wollman# 187d29895dcSGarrett Wollman# IPFIREWALL enables support for IP firewall construction, in 188d29895dcSGarrett Wollman# conjunction with the `ipfw' program. IPFIREWALL_VERBOSE does 189d29895dcSGarrett Wollman# the obvious thing. 190d29895dcSGarrett Wollman# 191d29895dcSGarrett Wollman# ARP_PROXYALL enables global proxy ARP. Beware! This can burn 192d29895dcSGarrett Wollman# your house down! See netinet/if_ether.c for the gory details. 193d29895dcSGarrett Wollman# (Eventually there will be a better management interface.) 1946a8d6623SGarrett Wollman# 1956a8d6623SGarrett Wollmanoptions "TCP_COMPAT_42" #emulate 4.2BSD TCP bugs 1966a8d6623SGarrett Wollmanoptions GATEWAY #internetwork gateway 197e3178a06SJordan K. Hubbardoptions MROUTING # Multicast routing 198d29895dcSGarrett Wollmanoptions IPFIREWALL #firewall 199d29895dcSGarrett Wollmanoptions IPFIREWALL_VERBOSE #print information about 200d29895dcSGarrett Wollman # dropped packets 201d29895dcSGarrett Wollmanoptions ARP_PROXYALL # global proxy ARP 2026a8d6623SGarrett Wollman 2036a8d6623SGarrett Wollman 2046a8d6623SGarrett Wollman##################################################################### 2056a8d6623SGarrett Wollman# FILESYSTEM OPTIONS 206e3178a06SJordan K. Hubbard 2072365e64fSRodney W. Grimes# 2086a8d6623SGarrett Wollman# Only the root, /usr, and /tmp filesystems need be statically 2096a8d6623SGarrett Wollman# compiled; everything else will be automatically loaded at mount 2106a8d6623SGarrett Wollman# time. (Exception: the UFS family---FFS, MFS, and LFS---cannot 2116a8d6623SGarrett Wollman# currently be demand-loaded.) Some people still prefer to statically 2126a8d6623SGarrett Wollman# compile other filesystems as well. 2136a8d6623SGarrett Wollman# 2146a8d6623SGarrett Wollman# NB: The LFS, PORTAL, and UNION filesystems are known to be buggy, 2156a8d6623SGarrett Wollman# and WILL panic your system if you attempt to do anything with them. 2166a8d6623SGarrett Wollman# They are included here as an incentive for some enterprising soul to 2176a8d6623SGarrett Wollman# sit down and fix them. 2182365e64fSRodney W. Grimes# 219f1a9c715SDavid Greenman 2206a8d6623SGarrett Wollman# One of these is mandatory: 2216a8d6623SGarrett Wollmanoptions FFS #Fast filesystem 2226a8d6623SGarrett Wollmanoptions NFS #Network File System 2236a8d6623SGarrett Wollman 2246a8d6623SGarrett Wollman# The rest are optional: 225f1a9c715SDavid Greenmanoptions "CD9660" #ISO 9660 filesystem 226f1a9c715SDavid Greenmanoptions FDESC #File descriptor filesystem 227f1a9c715SDavid Greenmanoptions KERNFS #Kernel filesystem 228f1a9c715SDavid Greenmanoptions LFS #Log filesystem 229f1a9c715SDavid Greenmanoptions MFS #Memory File System 2303f9a6982SDoug Rabsonoptions MSDOSFS #MS DOS File System 231f1a9c715SDavid Greenmanoptions NULLFS #NULL filesystem 232f1a9c715SDavid Greenmanoptions PORTAL #Portal filesystem 233f1a9c715SDavid Greenmanoptions PROCFS #Process filesystem 234f1a9c715SDavid Greenmanoptions UMAPFS #UID map filesystem 235f1a9c715SDavid Greenmanoptions UNION #Union filesystem 236f1a9c715SDavid Greenman 2376a8d6623SGarrett Wollman# 2386a8d6623SGarrett Wollman# Disk quotas are supported when this option is enabled. If you 2396a8d6623SGarrett Wollman# change the value of this option, you must do a `make clean' in your 2406a8d6623SGarrett Wollman# kernel compile directory in order to get a working kernel. 2416a8d6623SGarrett Wollman# 2422365e64fSRodney W. Grimesoptions QUOTA #enable disk quotas 2436a8d6623SGarrett Wollman 2446a8d6623SGarrett Wollman 2456a8d6623SGarrett Wollman##################################################################### 2466a8d6623SGarrett Wollman# SCSI DEVICE CONFIGURATION 2476a8d6623SGarrett Wollman 2486a8d6623SGarrett Wollman# 2496a8d6623SGarrett Wollman# The SCSI subsystem consists of the `base' SCSI code, a number of 250ebc1a0e2SPeter Dufault# high-level SCSI device `type' drivers, and the low-level host-adapter 2516a8d6623SGarrett Wollman# device drivers. The host adapters are listed in the ISA and PCI 2526a8d6623SGarrett Wollman# device configuration sections below. 2536a8d6623SGarrett Wollman# 254ebc1a0e2SPeter Dufault# Beginning with FreeBSD 2.1 you can wire down your SCSI devices so 255ebc1a0e2SPeter Dufault# that a given bus, target, and LUN always come on line as the same 256ebc1a0e2SPeter Dufault# device unit. In earlier versions the unit numbers were assigned 257ebc1a0e2SPeter Dufault# in the order that the devices were probed on the SCSI bus. This 258ebc1a0e2SPeter Dufault# means that if you removed a disk drive, you may have had to rewrite 259ebc1a0e2SPeter Dufault# your /etc/fstab file, and also that you had to be careful when adding 260ebc1a0e2SPeter Dufault# a new disk as it may have been probed earlier and moved your device 261ebc1a0e2SPeter Dufault# configuration around. 262ebc1a0e2SPeter Dufault 263ebc1a0e2SPeter Dufault# This old behavior is maintained as the default behavior. The unit 264ebc1a0e2SPeter Dufault# assignment begins with the first non-wired down unit for a device 265ebc1a0e2SPeter Dufault# type. For example, if you wire a disk as "sd3" then the first 266ebc1a0e2SPeter Dufault# non-wired disk will be assigned sd4. 267ebc1a0e2SPeter Dufault 268ebc1a0e2SPeter Dufault# The syntax for wiring down devices is: 269ebc1a0e2SPeter Dufault 270ebc1a0e2SPeter Dufault# disk sd0 at scbus0 target 0 unit 0 271ebc1a0e2SPeter Dufault# disk sd1 at scbus0 target 1 272ebc1a0e2SPeter Dufault# disk sd2 at scbus0 target 3 273ebc1a0e2SPeter Dufault# tape st1 at scbus0 target 6 274ebc1a0e2SPeter Dufault# device cd0 at scbus? 275ebc1a0e2SPeter Dufault 276ebc1a0e2SPeter Dufault# "units" (SCSI logical unit number) that are not specified are 277ebc1a0e2SPeter Dufault# treated as if specified as LUN 0. 278ebc1a0e2SPeter Dufault 279ebc1a0e2SPeter Dufault# All SCSI devices allocate as many units as are required. 280ebc1a0e2SPeter Dufault 281ebc1a0e2SPeter Dufault# The "unknown" device (uk? in pre-2.1) is now part of the base SCSI 282ebc1a0e2SPeter Dufault# configuration and doesn't have to be explicitly configured. 283ebc1a0e2SPeter Dufault 2846a8d6623SGarrett Wollmancontroller scbus0 #base SCSI code 2856a8d6623SGarrett Wollmandevice ch0 #SCSI media changers 2866a8d6623SGarrett Wollmandevice sd0 #SCSI disks 2876a8d6623SGarrett Wollmandevice st0 #SCSI tapes 2886a8d6623SGarrett Wollmandevice cd0 #SCSI CD-ROMs 2896a8d6623SGarrett Wollman 2906a8d6623SGarrett Wollman 2916a8d6623SGarrett Wollman##################################################################### 2926a8d6623SGarrett Wollman# MISCELLANEOUS DEVICES AND OPTIONS 2936a8d6623SGarrett Wollman 2942365e64fSRodney W. Grimes# 2956a8d6623SGarrett Wollman# Of these, only the `log' device is truly mandatory. The `pty' 2966a8d6623SGarrett Wollman# device usually turns out to be ``effectively mandatory'', as it is 2976a8d6623SGarrett Wollman# required for `telnetd', `rlogind', `screen', `emacs', and `xterm', 2986a8d6623SGarrett Wollman# among others. 2996a8d6623SGarrett Wollman# 3009da6a15aSJordan K. Hubbardpseudo-device pty 16 #Pseudo ttys - can go as high as 64 3016a8d6623SGarrett Wollmanpseudo-device speaker #Play IBM BASIC-style noises out your speaker 3026a8d6623SGarrett Wollmanpseudo-device log #Kernel syslog interface (/dev/klog) 3036a8d6623SGarrett Wollmanpseudo-device gzip #Exec gzipped a.out's 304784cf072SPoul-Henning Kamppseudo-device vn #Vnode driver (turns a file into a device) 3054cba4555SUgen J.S. Antsilevichpseudo-device snp 3 #Snoop device - to look at pty/vty/etc.. 3069ba0e7c3SBruce Evans 3076a8d6623SGarrett Wollman 3086a8d6623SGarrett Wollman##################################################################### 3096a8d6623SGarrett Wollman# HARDWARE DEVICE CONFIGURATION 3106a8d6623SGarrett Wollman 3116a8d6623SGarrett Wollman# ISA and EISA devices: 3126a8d6623SGarrett Wollman# Currently there is no separate support for EISA. There should be. 3136a8d6623SGarrett Wollman# Micro Channel is not supported at all. 3146a8d6623SGarrett Wollman 3156a8d6623SGarrett Wollman# 3166a8d6623SGarrett Wollman# Mandatory ISA devices: isa, sc, npx 3176a8d6623SGarrett Wollman# 3182365e64fSRodney W. Grimescontroller isa0 3192365e64fSRodney W. Grimes 3206a8d6623SGarrett Wollman# 3216a8d6623SGarrett Wollman# Options for `isa': 3226a8d6623SGarrett Wollman# 3239ba0e7c3SBruce Evans# ALLOW_CONFLICT_DRQ suppresses the DMA conflict checks. This option is 324ca83dc2dSJordan K. Hubbard# included so that people with sound cards that support multiple emulations 325ca83dc2dSJordan K. Hubbard# can setup different sound drivers on the same DMA channel. There are no 326ca83dc2dSJordan K. Hubbard# other known uses for this option. 3279ba0e7c3SBruce Evans# 3286a8d6623SGarrett Wollman# ALLOW_CONFLICT_IOADDR suppresses the I/O address conflict checks, so 3296a8d6623SGarrett Wollman# that the PS/2 mouse driver doesn't conflict with the console driver. 3306a8d6623SGarrett Wollman# 3316a8d6623SGarrett Wollman# ALLOW_CONFLICT_IRQ suppresses the interrupt line conflict checks, so 3326a8d6623SGarrett Wollman# that multiple devices can share the same IRQ, provided that the 3336a8d6623SGarrett Wollman# hardware supports it (it usually doesn't). 3346a8d6623SGarrett Wollman# 3359ba0e7c3SBruce Evans# ALLOW_CONFLICT_MEMADDR suppresses the memory address conflict checks. 3369ba0e7c3SBruce Evans# This option is not known to be good for anything. 3379ba0e7c3SBruce Evans# 3389ba0e7c3SBruce Evans# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A 3399ba0e7c3SBruce Evans# interrupt controller. This saves about 1.25 usec for each interrupt. 3409ba0e7c3SBruce Evans# No problems are known to be caused by this option. 3419ba0e7c3SBruce Evans# 3429ba0e7c3SBruce Evans# AUTO_EOI_2 enables the `automatic EOI' feature for the slave 8259A 3439ba0e7c3SBruce Evans# interrupt controller. This saves about 1.25 usec for each interrupt. 3449ba0e7c3SBruce Evans# Automatic EOI is documented not to work for for the slave with the 3459ba0e7c3SBruce Evans# original i8259A, but it works for some clones and some integrated 3469ba0e7c3SBruce Evans# versions. 3479ba0e7c3SBruce Evans# 3486a8d6623SGarrett Wollman# BOUNCE_BUFFERS provides support for ISA DMA on machines with more 3496a8d6623SGarrett Wollman# than 16 megabytes of memory. It doesn't hurt on other machines. 3506a8d6623SGarrett Wollman# Some broken EISA and VLB hardware may need this, too. 3513339606dSAndreas Schulz# 3529ba0e7c3SBruce Evans# DUMMY_NOPS disables extra delays for some bus operations. The delays 3539ba0e7c3SBruce Evans# are mostly for older systems and aren't used consistently. Probably 3549ba0e7c3SBruce Evans# works OK on most EISA bus machines. 3553339606dSAndreas Schulz# 3563339606dSAndreas Schulz# TUNE_1542 enables the automatic ISA bus speed selection for the 3573339606dSAndreas Schulz# Adaptec 1542 boards. Does not work for all boards, use it with caution. 3583339606dSAndreas Schulz# 3599ba0e7c3SBruce Evans#options ALLOW_CONFLICT_DRQ 3606a8d6623SGarrett Wollman#options ALLOW_CONFLICT_IOADDR 3616a8d6623SGarrett Wollman#options ALLOW_CONFLICT_IRQ 3629ba0e7c3SBruce Evans#options ALLOW_CONFLICT_MEMADDR 3639ba0e7c3SBruce Evansoptions "AUTO_EOI_1" 3649ba0e7c3SBruce Evans#options "AUTO_EOI_2" 3656a8d6623SGarrett Wollmanoptions BOUNCE_BUFFERS 3663339606dSAndreas Schulz#options DUMMY_NOPS 3673339606dSAndreas Schulz#options TUNE_1542 3683af6b652SDavid Greenman 3694530be52SJordan K. Hubbard# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver 3704530be52SJordan K. Hubbard#device vt0 at isa? port "IO_KBD" tty irq 1 vector pcrint 3714530be52SJordan K. Hubbard#options "PCVT_FREEBSD=210" # pcvt running on FreeBSD 2.1 3724530be52SJordan K. Hubbard 3734530be52SJordan K. Hubbard# The syscons console driver (sco color console compatible) - default. 3746a8d6623SGarrett Wollmandevice sc0 at isa? port "IO_KBD" tty irq 1 vector scintr 3752ac8be82SAndreas Schulz 3766a8d6623SGarrett Wollman# 3776a8d6623SGarrett Wollman# Options for `sc': 3786a8d6623SGarrett Wollman# 3796a8d6623SGarrett Wollman# HARDFONTS allows the driver to load an ISO-8859-1 font to replace 3806a8d6623SGarrett Wollman# the default font in your display adapter's memory. 3816a8d6623SGarrett Wollman# 3826a8d6623SGarrett Wollmanoptions HARDFONTS 38389d8fc79SAndrey A. Chernov# 38489d8fc79SAndrey A. Chernov# MAXCONS is maximum number of virtual consoles, no more than 16 38598886235SAndrey A. Chernov# default value: 12 38689d8fc79SAndrey A. Chernov# 38789d8fc79SAndrey A. Chernovoptions "MAXCONS=16" 38832128f4cSDavid Greenman 3892365e64fSRodney W. Grimesdevice npx0 at isa? port "IO_NPX" irq 13 vector npxintr 3906a8d6623SGarrett Wollman 3916a8d6623SGarrett Wollman# 3926a8d6623SGarrett Wollman# Optional ISA and EISA devices: 3936a8d6623SGarrett Wollman# 3946a8d6623SGarrett Wollman 3956a8d6623SGarrett Wollman# 396e05407d8SPoul-Henning Kamp# SCSI host adapters: `aha', `ahb', `aic', `bt', `nca' 3976a8d6623SGarrett Wollman# 3986a8d6623SGarrett Wollman# aha: Adaptec 154x 3996a8d6623SGarrett Wollman# ahb: Adaptec 174x 4000d2d94f6SGarrett Wollman# ahc: Adaptec 274x 4016a8d6623SGarrett Wollman# aic: Adaptec 152x and sound cards using the Adaptec AIC-6360 (slow!) 4026a8d6623SGarrett Wollman# bt: Most Buslogic controllers 403e05407d8SPoul-Henning Kamp# nca: ProAudioSpectrum cards using the NCR 5380 or Trantor T130 4046a8d6623SGarrett Wollman# uha: UltraStore 14F and 34F 4053c43212aSSøren Schmidt# sea: Seagate ST01/02 8 bit controller (slow!) 4063691d2b9SJordan K. Hubbard# wds: Western Digital WD7000 controller (no scatter/gather!). 4076a8d6623SGarrett Wollman# 4086a8d6623SGarrett Wollman# Note that the order is important in order for Buslogic cards to be 4096a8d6623SGarrett Wollman# probed correctly. 4106a8d6623SGarrett Wollman# 4116a8d6623SGarrett Wollman 4126a8d6623SGarrett Wollmancontroller bt0 at isa? port "IO_BT0" bio irq ? vector btintr 4130d2d94f6SGarrett Wollmancontroller ahc0 at isa? bio irq ? vector ahcintr # port??? iomem? 4146a8d6623SGarrett Wollmancontroller ahb0 at isa? bio irq ? vector ahbintr 4156a8d6623SGarrett Wollmancontroller aha0 at isa? port "IO_AHA0" bio irq ? drq 5 vector ahaintr 4166a8d6623SGarrett Wollmancontroller uha0 at isa? port "IO_UHA0" bio irq ? drq 5 vector uhaintr 4176a8d6623SGarrett Wollman 4186a8d6623SGarrett Wollmancontroller aic0 at isa? port 0x340 bio irq 11 vector aicintr 419e05407d8SPoul-Henning Kampcontroller nca0 at isa? port 0x1f88 bio irq 10 vector ncaintr 420e05407d8SPoul-Henning Kampcontroller nca1 at isa? port 0x1f84 421e05407d8SPoul-Henning Kampcontroller nca2 at isa? port 0x1f8c 422e05407d8SPoul-Henning Kampcontroller nca3 at isa? port 0x1e88 423e05407d8SPoul-Henning Kampcontroller nca4 at isa? port 0x350 bio irq 5 vector ncaintr 42445b4c36fSJordan K. Hubbard 4253c43212aSSøren Schmidtcontroller sea0 at isa? bio irq 5 iomem 0xdc000 iosiz 0x2000 vector seaintr 4263691d2b9SJordan K. Hubbardcontroller wds0 at isa? port 0x350 bio irq 15 drq 6 vector wdsintr 4273c43212aSSøren Schmidt 4286a8d6623SGarrett Wollman# 4296a8d6623SGarrett Wollman# ST-506, ESDI, and IDE hard disks: `wdc' and `wd' 4306a8d6623SGarrett Wollman# 4316a8d6623SGarrett Wollman# NB: ``Enhanced IDE'' is NOT supported at this time. 4326a8d6623SGarrett Wollman# 4332620c42eSNate Williamscontroller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr 4342620c42eSNate Williamsdisk wd0 at wdc0 drive 0 4352620c42eSNate Williamsdisk wd1 at wdc0 drive 1 4362620c42eSNate Williamscontroller wdc1 at isa? port "IO_WD2" bio irq 15 vector wdintr 4372620c42eSNate Williamsdisk wd2 at wdc1 drive 0 4382620c42eSNate Williamsdisk wd3 at wdc1 drive 1 4392365e64fSRodney W. Grimes 4406a8d6623SGarrett Wollman# 4416a8d6623SGarrett Wollman# Standard floppy disk controllers and floppy tapes: `fdc', `fd', and `ft' 4426a8d6623SGarrett Wollman# 4436a8d6623SGarrett Wollmancontroller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr 4446a8d6623SGarrett Wollmandisk fd0 at fdc0 drive 0 4456a8d6623SGarrett Wollmandisk fd1 at fdc0 drive 1 4466a8d6623SGarrett Wollmantape ft0 at fdc0 drive 2 4476a8d6623SGarrett Wollman 4486a8d6623SGarrett Wollman# 449d29895dcSGarrett Wollman# Options for `fd': 45095b926abSJoerg Wunsch# 451d29895dcSGarrett Wollman# FDSEEKWAIT selects a non-default head-settle time (i.e., the time to 452d29895dcSGarrett Wollman# wait after a seek is performed). The default value (1/32 s) is 453d29895dcSGarrett Wollman# usually sufficient. The units are inverse seconds, so a value of 16 454d29895dcSGarrett Wollman# here means to wait 1/16th of a second; you should choose a power of 455d29895dcSGarrett Wollman# two. 45695b926abSJoerg Wunsch# 457d29895dcSGarrett Wollmanoptions FDSEEKWAIT="16" 45895b926abSJoerg Wunsch 45995b926abSJoerg Wunsch# 4602f6df264SJordan K. Hubbard# Other standard PC hardware: `lpt', `mse', `psm', `sio', etc. 4616a8d6623SGarrett Wollman# 4626a8d6623SGarrett Wollman# lpt: printer port 4636a8d6623SGarrett Wollman# mse: Logitech and ATI InPort bus mouse ports 4646a8d6623SGarrett Wollman# psm: PS/2 mouse port (needs ALLOW_CONFLICT_IOADDR, above) 4656a8d6623SGarrett Wollman# sio: serial ports (see sio(4)) 466cfc9f621SJordan K. Hubbard# cy: Cyclades high-speed serial driver (ALPHA QUALITY!) 467cdf25f37SJordan K. Hubbard# gp: National Instruments AT-GPIB and AT-GPIB/TNT board 4682f6df264SJordan K. Hubbard# gsc: Genius GS-4500 hand scanner. 469673f8dc3SJean-Marc Zucconi# joy: joystick 4706a8d6623SGarrett Wollman 4716a8d6623SGarrett Wollmandevice lpt0 at isa? port "IO_LPT3" tty irq 7 vector lptintr 4726a8d6623SGarrett Wollmandevice mse0 at isa? port 0x23c tty irq 5 vector mseintr 4736a8d6623SGarrett Wollmandevice psm0 at isa? port "IO_KBD" tty irq 12 vector psmintr 4746a8d6623SGarrett Wollmandevice sio0 at isa? port "IO_COM1" tty irq 4 vector siointr 475cdf25f37SJordan K. Hubbarddevice gp0 at isa? port 0x2c0 tty 4762f6df264SJordan K. Hubbarddevice gsc0 at isa? port "IO_GSC1" tty drq 3 477673f8dc3SJean-Marc Zucconidevice joy0 at isa? port "IO_GAME" 478cfc9f621SJordan K. Hubbarddevice cy0 at isa? tty irq 10 iomem 0xd4000 vector cyintr 4796a8d6623SGarrett Wollman 4806a8d6623SGarrett Wollman# Options for sio: 4819ba0e7c3SBruce Evansoptions COMCONSOLE #prefer serial console to video console 4829ba0e7c3SBruce Evansoptions COM_MULTIPORT #code for some cards with shared IRQs 4836a8d6623SGarrett Wollmanoptions DSI_SOFT_MODEM #code for DSI Softmodems 4846a8d6623SGarrett Wollman 4856a8d6623SGarrett Wollman# 48683401efaSGarrett Wollman# Network interfaces: `cx', `ed', `el', `ep', `ie', `is', `le', `lnc' 4876a8d6623SGarrett Wollman# 48883401efaSGarrett Wollman# cx: Cronyx/Sigma multiport sync/async (with Cisco or PPP framing) 4896a8d6623SGarrett Wollman# ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503 4906a8d6623SGarrett Wollman# el: 3Com 3C501 (slow!) 4916a8d6623SGarrett Wollman# ep: 3Com 3C509 (buggy) 4926a8d6623SGarrett Wollman# ie: AT&T StarLAN 10 and EN100; 3Com 3C507; unknown NI5210 4936a8d6623SGarrett Wollman# le: Digital Equipment EtherWorks 2 and EtherWorks 3 (DEPCA, DE100, 4946a8d6623SGarrett Wollman# DE101, DE200, DE201, DE202, DE203, DE204, DE205, DE422) 49594187a78SPaul Richards# lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL) 496648c711bSPoul-Henning Kamp# ze: IBM/National Semiconductor PCMCIA ethernet controller. 497648c711bSPoul-Henning Kamp# zp: 3Com PCMCIA Etherlink III (It does not require shared memory for 498648c711bSPoul-Henning Kamp# send/receive operation, but it needs 'iomem' to read/write the 499648c711bSPoul-Henning Kamp# attribute memory) 5006a8d6623SGarrett Wollman# 5016a8d6623SGarrett Wollman 50283401efaSGarrett Wollmandevice cx0 at isa? port 0x240 net irq 15 drq 7 vector cxintr 5036a8d6623SGarrett Wollmandevice ed0 at isa? port 0x280 net irq 5 iomem 0xd8000 vector edintr 5046a8d6623SGarrett Wollmandevice ie0 at isa? port 0x360 net irq 7 iomem 0xd0000 vector ieintr 50594187a78SPaul Richardsdevice lnc0 at isa? port 0x280 net irq 10 drq 0 vector lncintr 5066a8d6623SGarrett Wollmandevice ep0 at isa? port 0x300 net irq 10 vector epintr 5076a8d6623SGarrett Wollmandevice el0 at isa? port 0x300 net irq 9 vector elintr 5086a8d6623SGarrett Wollmandevice le0 at isa? port 0x300 net irq 5 iomem 0xd0000 vector le_intr 509ada9d061SJordan K. Hubbarddevice ze0 at isa? port 0x300 net irq 5 iomem 0xd8000 vector zeintr 510648c711bSPoul-Henning Kampdevice zp0 at isa? port 0x300 net irq 10 iomem 0xd8000 vector zpintr 511648c711bSPoul-Henning Kamp 5126a8d6623SGarrett Wollman 5136f96f72bSJordan K. Hubbard# ISDN drivers - `isdn'. 5146f96f72bSJordan K. Hubbard# 5156f96f72bSJordan K. Hubbard# Uncomment one (and only one) of the following 4 drivers for the appropriate 5166f96f72bSJordan K. Hubbard# ISDN device you have. For more information on what's considered appropriate 5176f96f72bSJordan K. Hubbard# for your given set of circumstances, please read 5186f96f72bSJordan K. Hubbard# /usr/src/gnu/usr.sbin/docs/INSTALL. It's a bit sparse at present, but it's 519a46a6df7SJordan K. Hubbard# the best we have right now. The snic driver is also disabled at present, 520a46a6df7SJordan K. Hubbard# waiting for someone to upgrade the driver to 2.0 (it's in /sys/gnu/scsi/). 521a46a6df7SJordan K. Hubbard# 5226f96f72bSJordan K. Hubbarddevice nic0 at isa? port "IO_COM3" iomem 0xe0000 tty irq 9 vector nicintr 5236f96f72bSJordan K. Hubbarddevice nnic0 at isa? port 0x150 iomem 0xe0000 tty irq 12 vector nnicintr 524f1f04188SJordan K. Hubbard# This one is also temporarily ill - needs an isa_device structure!! 525f1f04188SJordan K. Hubbard#controller tel0 at isa? iomem 0xe0000 tty irq 9 vector telintr 5266f96f72bSJordan K. Hubbard 5276f96f72bSJordan K. Hubbard# These are non-optional for ISDN 5286f96f72bSJordan K. Hubbardpseudo-device isdn 5296f96f72bSJordan K. Hubbardpseudo-device ii 4 5306f96f72bSJordan K. Hubbardpseudo-device ity 4 5316f96f72bSJordan K. Hubbardpseudo-device itel 2 5326f96f72bSJordan K. Hubbardpseudo-device ispy 1 5336f96f72bSJordan K. Hubbard 5346f96f72bSJordan K. Hubbard 5356a8d6623SGarrett Wollman# 5366a8d6623SGarrett Wollman# Audio drivers: `snd', `pca' 5376a8d6623SGarrett Wollman# 538ca83dc2dSJordan K. Hubbard# snd: Voxware sound drivers for various cards 539ca83dc2dSJordan K. Hubbard# see /usr/src/sys/i386/isa/sound/sound.doc for details 5406a8d6623SGarrett Wollman# pca: PCM audio through your PC speaker 5416a8d6623SGarrett Wollman# 542ca83dc2dSJordan K. Hubbard 543ca83dc2dSJordan K. Hubbardoptions AUDIO_PAS 544ca83dc2dSJordan K. Hubbardoptions AUDIO_SB 545ca83dc2dSJordan K. Hubbardoptions AUDIO_ADLIB 546ca83dc2dSJordan K. Hubbardoptions AUDIO_GUS 547ca83dc2dSJordan K. Hubbardoptions AUDIO_MPU401 548ca83dc2dSJordan K. Hubbardoptions AUDIO_UART6850 549ca83dc2dSJordan K. Hubbardoptions AUDIO_PSS 550ca83dc2dSJordan K. Hubbardoptions AUDIO_GUS16 551ca83dc2dSJordan K. Hubbardoptions AUDIO_GUSMAX 552ca83dc2dSJordan K. Hubbardoptions AUDIO_MSS 553ca83dc2dSJordan K. Hubbardoptions AUDIO_SBPRO 554ca83dc2dSJordan K. Hubbardoptions AUDIO_SB16 555ca83dc2dSJordan K. Hubbardoptions AUDIO_YM3812 556ca83dc2dSJordan K. Hubbard 557ca83dc2dSJordan K. Hubbarddevice snd10 at isa? port 0x530 irq 10 drq 1 vector adintr 558cea06d47SAndrey A. Chernovdevice snd5 at isa? port 0x330 irq 6 vector mpuintr 55935686319SJordan K. Hubbarddevice snd4 at isa? port 0x220 irq 15 drq 6 vector gusintr 56062d15cccSSteven Wallacedevice snd3 at isa? port 0x388 irq 10 drq 6 vector pasintr 561dd442d34SJordan K. Hubbarddevice snd2 at isa? port 0x220 irq 7 drq 1 vector sbintr 56262d15cccSSteven Wallacedevice snd6 at isa? port 0x220 irq 7 drq 5 vector sbintr 563bc906632SAndrey A. Chernovdevice snd7 at isa? port 0x300 564cea06d47SAndrey A. Chernovdevice snd1 at isa? port 0x388 5650897a95dSAndrey A. Chernov 5660897a95dSAndrey A. Chernovdevice pca0 at isa? tty 5679ad380abSGarrett Wollman 5686a8d6623SGarrett Wollman# 5696a8d6623SGarrett Wollman# Miscellaneous hardware: `mcd', `wt', `ctx', `apm' 5706a8d6623SGarrett Wollman# 5716a8d6623SGarrett Wollman# mcd: Mitsumi CD-ROM 5722d859864SAndreas Schulz# scd: Sony CD-ROM 57305e1d9d4SJordan K. Hubbard# matcd: Matsushita/Panasonic CD-ROM 5746a8d6623SGarrett Wollman# wt: Wangtek and Archive QIC-02/QIC-36 tape drives 5756a8d6623SGarrett Wollman# ctx: Cortex-I frame grabber 5766a8d6623SGarrett Wollman# apm: Laptop Advanced Power Management (experimental) 5772cd01159SJordan K. Hubbard# spigot: The Creative Labs Video Spigot video-aquisition board 5786a8d6623SGarrett Wollman# 5792cd01159SJordan K. Hubbard# Notes on the spigot: 5802cd01159SJordan K. Hubbard# The video spigot is at 0xad6. This port address can not be changed. 5812cd01159SJordan K. Hubbard# The irq values may only be 10, 11, or 15 5822cd01159SJordan K. Hubbard# I/O memory is an 8kb region. Possible values are: 5832cd01159SJordan K. Hubbard# 0a0000, 0a2000, ..., 0fffff, f00000, f02000, ..., ffffff 5842cd01159SJordan K. Hubbard# Note that the start address must be on an even boundary. 5858819d6ecSPoul-Henning Kamp 5866a8d6623SGarrett Wollmandevice mcd0 at isa? port 0x300 bio irq 10 vector mcdintr 58705e1d9d4SJordan K. Hubbard# for the Sony CDU31/33A CDROM 5882d859864SAndreas Schulzdevice scd0 at isa? port 0x230 bio 58905e1d9d4SJordan K. Hubbard# for the soundblaster 16 multicd - up to 4 devices 59005e1d9d4SJordan K. Hubbardcontroller matcd0 at isa? port ? 59105e1d9d4SJordan K. Hubbard#controller matcd1 at isa? port ? 59205e1d9d4SJordan K. Hubbard#controller matcd2 at isa? port ? 59305e1d9d4SJordan K. Hubbard#controller matcd3 at isa? port ? 5946a8d6623SGarrett Wollmandevice wt0 at isa? port 0x300 bio irq 5 drq 1 vector wtintr 5956a8d6623SGarrett Wollmandevice ctx0 at isa? port 0x230 iomem 0xd0000 5962cd01159SJordan K. Hubbarddevice spigot0 at isa? port 0xad6 irq 15 iomem 0xee000 vector spigintr 5976a8d6623SGarrett Wollmandevice apm0 at isa? 5986a8d6623SGarrett Wollman 5996a8d6623SGarrett Wollman# 6006a8d6623SGarrett Wollman# PCI devices: 6016a8d6623SGarrett Wollman# 6026a8d6623SGarrett Wollman# The main PCI bus device is `pci'. It provides auto-detection and 6036a8d6623SGarrett Wollman# configuration support for all devices on the PCI bus, using either 6046a8d6623SGarrett Wollman# configuration mode defined in the PCI specification. 6056a8d6623SGarrett Wollman# 6066a8d6623SGarrett Wollman# The `ncr' device provides support for the NCR 53C810 and 53C825 6076a8d6623SGarrett Wollman# self-contained SCSI host adapters. 6086a8d6623SGarrett Wollman# 6096a8d6623SGarrett Wollman# The `de' device provides support for the Digital Equipment DC21040 6106a8d6623SGarrett Wollman# self-contained Ethernet adapter. 6116a8d6623SGarrett Wollman# 6129ec2a4b3SStefan Eßer# The PROBE_VERBOSE option enables a long listing of chip set registers 6139ec2a4b3SStefan Eßer# for supported PCI chip sets (currently only intel Saturn and Mercury). 6149ec2a4b3SStefan Eßer# 6156a8d6623SGarrett Wollmancontroller pci0 6166a8d6623SGarrett Wollmandevice ncr0 6176a8d6623SGarrett Wollmandevice de0 6189ec2a4b3SStefan Eßeroptions PROBE_VERBOSE 619