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