GENERIC revision 1.141
1# $NetBSD: GENERIC,v 1.141 2008/08/10 15:31:22 tls Exp $ 2# 3# GENERIC machine description file 4# 5# This machine description file is used to generate the default NetBSD 6# kernel. The generic kernel does not include all options, subsystems 7# and device drivers, but should be useful for most applications. 8# 9# The machine description file can be customised for your specific 10# machine to reduce the kernel size and improve its performance. 11# 12# For further information on compiling NetBSD kernels, see the config(8) 13# man page. 14# 15# For further information on hardware support for this architecture, see 16# the intro(4) man page. For further information about kernel options 17# for this architecture, see the options(4) man page. For an explanation 18# of each device driver in this file see the section 4 man page for the 19# device. 20 21include "arch/x68k/conf/std.x68k" 22 23options INCLUDE_CONFIG_FILE # embed config file in kernel binary 24 25#ident "GENERIC-$Revision: 1.141 $" 26 27maxusers 8 28 29## System kernel configuration. See options(4) for more detail. 30 31 32## Options for variants of the m68k MPU 33## you must have at least the correct one; REQUIRED 34options M68030 35options M68040 36options M68060 37## If you want an optimized kernel for a specific processor, use either: 38#makeoptions CMACHFLAGS="-m68030" 39#makeoptions CMACHFLAGS="-m68040 -Wa,-m68030 -Wa,-m68851" 40#makeoptions CMACHFLAGS="-m68060 -Wa,-m68030 -Wa,-m68851" 41 42 43#### System options specific to the x68k port 44 45options EXTENDED_MEMORY # support for >16MB memory 46options FPU_EMULATE # software fpu emulation for MC68030 47options FPSP # floating point emulation for MC68040 48options M060SP # int/fp emulation for MC68060 49#options JUPITER # support for "Jupiter-X" accelerator 50#options MAPPEDCOPY # use page mapping for large copyin/copyout 51#options ZSCONSOLE,ZSCN_SPEED="9600" # use serial console 52 53 54#### System options that are the same for all ports 55 56## Root device configuration: change the ?'s if you are going to use a 57## nonstandard root partition (other than where the kernel is booted from) 58## and/or nonstandard root type (not ffs or nfs). Normally this can be 59## automagically determined at boot time. 60 61config netbsd root on ? type ? 62#config netbsd root on sd0 type ffs 63 64## RTC is offset from GMT; -540 means JST-9 65options RTC_OFFSET=-540 # hardware clock is this many mins. west of GMT 66 67## System call tracing (see ktrace(1)). 68options KTRACE 69 70## Collect statistics on kernel malloc's and free's. This does have a 71## significant performance hit on slower machines, so it is intended for 72## diagnostic use only. 73#options KMEMSTATS 74 75## System V compatible IPC subsystem. (msgctl(2), semctl(2), and shmctl(2)) 76options SYSVMSG # System V message queues 77options SYSVSEM # System V semaphores 78options SYSVSHM # System V shared memory 79options P1003_1B_SEMAPHORE # p1003.1b semaphore support 80 81## Loadable kernel module support 82#options LKM 83 84options USERCONF # userconf(4) support 85#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 86options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel 87 88# Enable experimental buffer queue strategy for better responsiveness under 89# high disk I/O load. Use it with caution - it's not proven to be stable yet. 90#options BUFQ_READPRIO 91#options BUFQ_PRIOCSCAN 92 93## NFS boot options; not supported currently: needs nfsboot program 94#options NFS_BOOT_BOOTPARAM 95#options NFS_BOOT_BOOTP 96#options NFS_BOOT_DHCP 97 98#### Debugging options 99 100## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at 101## serial console break or keyboard reset, where the PROM would normally 102## intercept. DDB_HISTORY_SIZE adds up/down arrow command history. 103#options DDB # kernel dynamic debugger 104#options DDB_HISTORY_SIZE=100 # enable history editing in DDB 105#options DDB_ONPANIC=1 # see also sysctl(8): `ddb.onpanic' 106#options PANICBUTTON # interrupt switch invokes DDB 107 108## You may also use gdb, on another computer connected to this machine over 109## a serial port. Both KGDB_DEV and KGDB_DEVRATE should be specified; 110## KGDB_DEV is a dev_t encoded device number of the serial port to use. 111## KGDB is not supported for now. 112#options KGDB # support for kernel gdb 113#options KGDB_DEV=0xc00 # kgdb device number 114#options KGDB_DEVRATE=9600 # baud rate 115 116## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file), 117## such that gdb(1) can be used on a kernel coredump. 118 119#makeoptions DEBUG="-g" 120 121## Adds code to the kernel that does internal consistency checks, and will 122## cause the kernel to panic if corruption of internal data structures 123## is detected. 124#options DIAGNOSTIC # extra kernel sanity checking 125 126## Enable (possibly expensive) debugging code that may also display messages 127## on the system console 128#options DEBUG 129 130## These options enable verbose messages for several subsystems. 131## Warning, these may compile large string tables into the kernel! 132#options SCSIVERBOSE # human readable SCSI error messages 133#options USBVERBOSE # verbose USB device autoconfig messages 134 135## `INSECURE' turns off the kernel security level (securelevel = 0 always). 136## This allows writing to /dev/mem, loading kernel modules while multi-user, 137## and other insecurities good only for development work. Do not use this 138## option on a production machine. 139#options INSECURE 140 141## `FDSCRIPTS' allows non-readable but executable scripts by providing a 142## pre-opened opaque file to the script interpreter. `SETUIDSCRIPTS', 143## which implies FDSCRIPTS, allows scripts to be set-user-id using the same 144## opaque file mechanism. Perl calls this "secure setuid scripts." 145 146#options FDSCRIPTS 147#options SETUIDSCRIPTS 148 149## Options for compatibility with previous releases foreign system binaries. 150 151options COMPAT_43 # 4.3BSD system interfaces 152options COMPAT_09 # NetBSD 0.9 binary compatibility 153options COMPAT_10 # NetBSD 1.0 binary compatibility 154options COMPAT_11 # NetBSD 1.1 binary compatibility 155options COMPAT_12 # NetBSD 1.2 binary compatibility 156options COMPAT_13 # NetBSD 1.3 binary compatibility 157options COMPAT_14 # NetBSD 1.4 binary compatibility 158options COMPAT_15 # NetBSD 1.5 binary compatibility 159options COMPAT_16 # NetBSD 1.6 binary compatibility 160options COMPAT_20 # NetBSD 2.0 binary compatibility 161options COMPAT_30 # NetBSD 3.0 compatibility. 162options COMPAT_40 # NetBSD 4.0 compatibility. 163options COMPAT_AOUT_M68K # compatibility with NetBSD/m68k a.out 164#options COMPAT_M68K4K # NetBSD/m68k4k binaries 165#options COMPAT_SUNOS # SunOS 4.x binary compatibility; broken 166#options COMPAT_SVR4 # SVR4 binary compatibility; broken 167#options COMPAT_LINUX # Linux/m68k binary compatibility 168#options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. 169options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. 170 171## File systems. 172file-system FFS # Berkeley Fast Filesystem 173file-system NFS # Sun NFS-compatible filesystem client 174file-system KERNFS # kernel data-structure filesystem 175#file-system NULLFS # NULL layered filesystem (buggy) 176#file-system OVERLAY # overlay file system 177file-system MFS # memory-based filesystem 178#file-system FDESC # user file descriptor filesystem 179file-system UMAPFS # uid/gid remapping filesystem 180#file-system LFS # Log-structured filesystem (experimental) 181#file-system PORTAL # portal filesystem (experimental) 182file-system PROCFS # /proc 183file-system CD9660 # ISO 9660 + Rock Ridge file system 184#file-system UNION # union file system (a little buggy) 185file-system MSDOSFS # MS-DOS FAT filesystem(s). 186#file-system ADOSFS # AmigaDOS filesystem 187file-system PTYFS # /dev/pts/N support 188#file-system TMPFS # Efficient memory file-system 189#file-system UDF # experimental - OSTA UDF CD/DVD file-system 190 191## File system options. 192options NFSSERVER # Sun NFS-compatible filesystem server 193#options QUOTA # FFS quotas 194#options FFS_EI # FFS Endian Independent support 195options SOFTDEP # FFS soft updates support. 196options WAPBL # File system journaling support - Experimental 197#options UFS_DIRHASH # UFS Large Directory Hashing - Experimental 198options FFS_NO_SNAPSHOT # No FFS snapshot support 199 200## Network protocol support. In most environments, INET is required. 201options INET # IP (Internet Protocol) v4 202options INET6 # IPV6 203#options IPSEC # IP security 204#options IPSEC_ESP # IP security (encryption part; define w/IPSEC) 205#options IPSEC_NAT_T # IPsec NAT traversal (NAT-T) 206#options IPSEC_DEBUG # debug for IP security 207#options GATEWAY # packet forwarding ("router switch") 208#options MROUTING # packet forwarding of multicast packets 209#options PIM # Protocol Independent Multicast 210#options DIRECTED_BROADCAST # allow broadcasts through routers 211#options ISO,TPIP # OSI networking 212#options EON # OSI tunneling over IP 213#options NETATALK # AppleTalk (over Ethernet) protocol 214#options NTP # Network Time Protocol in-kernel support 215#options PPS_SYNC # Add serial line synchronization for NTP 216options PFIL_HOOKS # Add pfil(9) hooks, intended for custom LKMs. 217#options IPFILTER_LOG # Add ipmon(8) logging for ipfilter device 218#options IPFILTER_LOOKUP # ippool(8) support 219#options IPFILTER_DEFAULT_BLOCK # block all packets by default 220#options PPP_BSDCOMP # Add BSD compression to ppp device 221#options PPP_DEFLATE # Add deflate (libz) compression to ppp device 222#options PPP_FILTER # Add active filters for ppp (via bpf) 223#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 224 225#options ALTQ # Manipulate network interfaces' output queues 226#options ALTQ_BLUE # Stochastic Fair Blue 227#options ALTQ_CBQ # Class-Based Queueing 228#options ALTQ_CDNR # Diffserv Traffic Conditioner 229#options ALTQ_FIFOQ # First-In First-Out Queue 230#options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) 231#options ALTQ_HFSC # Hierarchical Fair Service Curve 232#options ALTQ_LOCALQ # Local queueing discipline 233#options ALTQ_PRIQ # Priority Queueing 234#options ALTQ_RED # Random Early Detection 235#options ALTQ_RIO # RED with IN/OUT 236#options ALTQ_WFQ # Weighted Fair Queueing 237 238 239#### Device configurations 240 241## Fundamental devices; see also std.x68k 242dmac0 at intio0 addr 0xe84000 # DMA controller 243xel0 at intio0 244opm0 at intio0 addr 0xe90000 # OPM: required for fdc 245 246## Display devices and console 247grfbus0 at mainbus0 # bitmapped displays 248grf0 at grfbus0 addr 0 # multiplane graphics 249grf1 at grfbus0 addr 1 # flexible graphics 250 251kbd0 at mfp0 # standard keyboard 252ite0 at grf0 grfaddr 0 # internal terminal emulator 253options ITE_KERNEL_ATTR=4 # bold for kernel messages 254 # see /sys/arch/x68k/dev/itevar.h 255pseudo-device pow 2 # software power switch 256 257## floppy disks 258fdc0 at intio0 addr 0xe94000 intr 96 dma 0 dmaintr 100 # floppy controller 259fd* at fdc0 unit ? # builtin floppy drives 260 261## SCSI devices 262scsirom0 at intio0 addr 0xfc0000 # Built-in SCSI BIOS 263scsirom1 at intio0 addr 0xea0020 # External SCSI BIOS 264spc0 at scsirom0 # genuin SCSI 265spc1 at scsirom1 # genuin SCSI 266scsibus* at spc? 267mha0 at scsirom1 # Mankai MK-HA1 (Mach-2) 268scsibus* at mha0 269 270sd* at scsibus? target ? lun ? # SCSI disks 271cd* at scsibus? target ? lun ? # SCSI CD-ROMs 272#st* at scsibus? target ? lun ? # SCSI tapes 273#ss* at scsibus? target ? lun ? # SCSI scanners 274#ch* at scsibus? target ? lun ? # SCSI changer devices 275#uk* at scsibus? target ? lun ? # SCSI unknown devices 276 277## Ports 278zsc0 at intio0 addr 0xe98000 intr 112 279zstty0 at zsc0 channel 0 # built-in RS-232C 280ms0 at zsc0 channel 1 # standard mouse 281#zsc1 at intio0 addr 0xeafc00 intr 113 282#zstty2 at zsc1 channel 0 283#zstty3 at zsc1 channel 1 284#zsc2 at intio0 addr 0xeafc10 intr 114 285#zstty4 at zsc2 channel 0 286#zstty5 at zsc2 channel 1 287par0 at intio0 addr 0xe8c000 # Builtin printer port 288 289pseudo-device sram # battery-backuped static RAM 290pseudo-device bell # OPM bell 291 292xcom0 at mainbus0 # NS16550 fast serial 293xcom1 at mainbus0 294 295## Audio device 296vs0 at intio0 addr 0xe92000 dma 3 dmaintr 106 297audio* at vs? 298 299## Network interfaces 300ne* at intio0 addr 0xece300 intr 249 # Nereid Ethernet 301ne* at intio0 addr 0xeceb00 intr 248 # Nereid Ethernet 302neptune0 at intio0 addr 0xece000 intr 249 # Neptune-X 303neptune1 at intio0 addr 0xece400 intr 249 # Neptune-X at alt. addr. 304ne* at neptune? addr 0x300 # NE2000 or clone 305 306## Bank memory disk 307bmd* at intio0 addr 0xece3f0 # Nereid 308bmd* at intio0 addr 0xecebf0 # Nereid 309 310## MII/PHY support for USB ethernet 311#acphy* at mii? phy ? 312 313## USB Controller and Devices; Experimental 314 315# Nereid USB controllers 316#slhci0 at intio0 addr 0xece380 intr 251 317#slhci1 at intio0 addr 0xeceb80 intr 250 318#options SLHCI_DEBUG 319 320# USB bus support 321#usb* at slhci? 322 323# USB Hubs 324#uhub* at usb? 325#uhub* at uhub? port ? 326 327# USB HID device 328#uhidev* at uhub? port ? configuration ? interface ? 329 330# USB Mice; not supported wscons yet 331#ums* at uhidev? reportid ? 332#wsmouse* at ums? mux 0 333 334# USB Keyboards; not supported wscons yet 335#ukbd* at uhidev? reportid ? 336#wskbd* at ukbd? console ? mux 1 337 338# USB serial adapter 339#ucycom* at uhidev? reportid ? 340 341# USB Generic HID devices 342#uhid* at uhidev? reportid ? 343 344# USB Printer 345#ulpt* at uhub? port ? configuration ? interface ? 346 347# USB Modem 348#umodem* at uhub? port ? configuration ? 349#ucom* at umodem? 350 351# USB Mass Storage; wd not supported 352#umass* at uhub? port ? configuration ? interface ? 353#atapibus* at umass? channel ? 354#scsibus* at umass? channel ? 355#wd* at umass? 356 357# USB audio 358#uaudio* at uhub? port ? configuration ? 359 360# USB MIDI 361#umidi* at uhub? port ? configuration ? 362 363# USB IrDA 364# USB-IrDA bridge spec 365#uirda* at uhub? port ? configuration ? interface ? 366#irframe* at uirda? 367 368# SigmaTel STIr4200 USB/IrDA Bridge 369#ustir* at uhub? port ? 370#irframe* at ustir? 371 372# USB Ethernet adapters 373#aue* at uhub? port ? # ADMtek AN986 Pegasus based adapters 374#axe* at uhub? port ? # ASIX AX88172 based adapters 375#cue* at uhub? port ? # CATC USB-EL1201A based adapters 376#kue* at uhub? port ? # Kawasaki LSI KL5KUSB101B based adapters 377#url* at uhub? port ? # Realtek RTL8150L based adapters 378#udav* at uhub? port ? # Davicom DM9601 based adapters 379 380# Prolific PL2301/PL2302 host-to-host adapter 381#upl* at uhub? port ? 382 383# Serial adapters 384#uftdi* at uhub? port ? # FTDI FT8U100AX serial adapter 385#ucom* at uftdi? portno ? 386 387#umct* at uhub? port ? # MCT USB-RS232 serial adapter 388#ucom* at umct? portno ? 389 390#uplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter 391#ucom* at uplcom? portno ? 392 393#uvscom* at uhub? port ? # SUNTAC Slipper U VS-10U serial adapter 394#ucom* at uvscom? portno ? 395 396# Diamond Multimedia Rio 500 397#urio* at uhub? port ? 398 399# USB Handspring Visor 400#uvisor* at uhub? port ? 401#ucom* at uvisor? 402 403# Kyocera AIR-EDGE PHONE 404#ukyopon* at uhub? port ? 405#ucom* at ukyopon? portno ? 406 407# USB scanners 408#uscanner* at uhub? port ? 409 410# USB scanners that use SCSI emulation, e.g., HP5300 411#usscanner* at uhub? port ? 412#scsibus* at usscanner? channel ? 413 414# Y@P firmware loader 415#uyap* at uhub? port ? 416 417# D-Link DSB-R100 USB radio 418#udsbr* at uhub? port ? 419#radio* at udsbr? 420 421# USB Generic driver 422#ugen* at uhub? port ? 423 424 425#### Pseudo devices 426 427# 428# accept filters 429pseudo-device accf_data # "dataready" accept filter 430pseudo-device accf_http # "httpready" accept filter 431 432## A disk-like interface to files. Can be used to create floppy, CD, 433## miniroot images, etc. 434 435pseudo-device vnd 436#options VND_COMPRESSION # compressed vnd(4) 437 438## Concatenated and striped disks; with this, you can create a software-based 439## disk array similar to a "RAID 0" setup. See ccd(4). 440 441#pseudo-device ccd 4 442 443## Cryptographic disk devices. See cgd(4). 444 445#pseudo-device cgd 4 446 447## RAIDframe disk driver: software RAID driver. See raid(4). 448 449pseudo-device raid 8 450options RAID_AUTOCONFIG # auto-configuration of RAID components 451# Options to enable various other RAIDframe RAID types. 452# options RF_INCLUDE_EVENODD=1 453# options RF_INCLUDE_RAID5_RS=1 454# options RF_INCLUDE_PARITYLOGGING=1 455# options RF_INCLUDE_CHAINDECLUSTER=1 456# options RF_INCLUDE_INTERDECLUSTER=1 457# options RF_INCLUDE_PARITY_DECLUSTERING=1 458# options RF_INCLUDE_PARITY_DECLUSTERING_DS=1 459 460 461## Memory disk device, used on boot floppies with compressed 462## kernel-plus-root-disk images. 463 464#pseudo-device md 1 465 466## Loopback network interface; required 467pseudo-device loop 468 469## SLIP and CSLIP interfaces, for IP over a serial line. 470pseudo-device sl 471 472## PPP, the successor to SLIP. See pppd(8). 473pseudo-device ppp 474 475## PPP over Ethernet (RFC 2516) 476pseudo-device pppoe 477 478## Network "tunnel" device, allowing protocol stacks to run in the userland. 479## This is used by the third-party user-mode "ppp" program, and others. 480#pseudo-device tun 481#pseudo-device tap # virtual Ethernet 482 483## Generic L3 over IP tunnel 484#pseudo-device gre # generic L3 over IP tunnel 485 486## Berkeley Packet Filter, required to run RARPD. A generic C-language 487## interface that allows selective examining of incoming packets. 488pseudo-device bpfilter 489 490#pseudo-device carp # Common Address Redundancy Protocol 491 492## IP Filter, used in firewall and NAT applications. See ipnat(8) for 493## one example of the use of the IP Filter. 494#pseudo-device ipfilter 495 496## for IPv6 497pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) 498#pseudo-device faith # IPv[46] tcp relay translation i/f 499pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 500 501## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4). 502pseudo-device vlan 503 504## Simple inter-network traffic bridging 505pseudo-device bridge 506#options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too 507pseudo-device agr # IEEE 802.3ad link aggregation 508 509#### Other device configuration 510 511## Pseudo ttys, required for network logins and programs like screen. 512 513pseudo-device pty # pseudo-terminals 514 515## Random device, used to implement /dev/random (a source of random noise), 516## and generate randomness for some kernel formulae. 517 518pseudo-device rnd 519 520pseudo-device clockctl # user control of clock subsystem 521pseudo-device ksyms # /dev/ksyms 522#pseudo-device pf # PF packet filter 523#pseudo-device pflog # PF log if 524pseudo-device fss 4 # file system snapshot device 525 526# Veriexec 527# 528# a pseudo device needed for veriexec 529#pseudo-device veriexec 1 530# 531# Uncomment the fingerprint methods below that are desired. Note that 532# removing fingerprint methods will have almost no impact on the kernel 533# code size. 534# 535#options VERIFIED_EXEC_FP_RMD160 536#options VERIFIED_EXEC_FP_SHA256 537#options VERIFIED_EXEC_FP_SHA384 538#options VERIFIED_EXEC_FP_SHA512 539#options VERIFIED_EXEC_FP_SHA1 540#options VERIFIED_EXEC_FP_MD5 541