# $NetBSD: GENERIC,v 1.104.2.1 2009/02/19 20:23:46 snj Exp $ # # GENERIC machine description file # # This machine description file is used to generate the default NetBSD # kernel. The generic kernel does not include all options, subsystems # and device drivers, but should be useful for most applications. # # The machine description file can be customised for your specific # machine to reduce the kernel size and improve its performance. # # For further information on compiling NetBSD kernels, see the config(8) # man page. # # For further information on hardware support for this architecture, see # the intro(4) man page. For further information about kernel options # for this architecture, see the options(4) man page. For an explanation # of each device driver in this file see the section 4 man page for the # device. include "arch/sparc64/conf/std.sparc64" options INCLUDE_CONFIG_FILE # embed config file in kernel binary #ident "GENERIC-$Revision: 1.104.2.1 $" ident "FLAPJACK-LITE" maxusers 64 ## System kernel configuration. See options(4) for more detail. # Options for variants of the Sun SPARC architecure. # We currently support three architecture types; at least one is required. options SUN4U # sun4u - UltraSPARC #options BLINK # blink the system LED #### System options that are the same for all ports ## Root device configuration: change the ?'s if you are going to use a ## nonstandard root partition (other than where the kernel is booted from) ## and/or nonstandard root type (not ffs or nfs). Normally this can be ## automagically determined at boot time. config netbsd root on ? type ? ## UVM options. #options UVM_PAGE_TRKOWN #options UVMHIST #options UVMHIST_PRINT # Loud! ## System call tracing (see ktrace(1)). options KTRACE ## Collect statistics on kernel malloc's and free's. This does have a ## significant performance hit on slower machines, so it is intended for ## diagnostic use only. #options KMEMSTATS ## System V compatible IPC subsystem. (msgctl(2), semctl(2), and shmctl(2)) options SYSVMSG # System V message queues options SYSVSEM # System V semaphores options SYSVSHM # System V shared memory #options SHMMAXPGS=1024 # 1024 pages is the default options P1003_1B_SEMAPHORE # p1003.1b semaphore support ## Loadable kernel module support; still under development. #options LKM options USERCONF # userconf(4) support #options PIPE_SOCKETPAIR # smaller, but slower pipe(2) options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel # Enable experimental buffer queue strategy for better responsiveness under # high disk I/O load. Use it with caution - it's not proven to be stable yet. #options BUFQ_READPRIO #options BUFQ_PRIOCSCAN ## NFS boot options; tries DHCP/BOOTP then BOOTPARAM options NFS_BOOT_BOOTPARAM #options NFS_BOOT_BOOTP options NFS_BOOT_DHCP #### Debugging options ## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at ## serial console break or keyboard reset, where the PROM would normally ## intercept. DDB_HISTORY_SIZE adds up/down arrow command history. # we enable DDB in GENERIC for now. options DDB # kernel dynamic debugger options DDB_HISTORY_SIZE=100 # enable history editing in DDB options DDB_VERBOSE_HELP # enable verbose online help #options DDB_ONPANIC=1 # see also sysctl(8): `ddb.onpanic' ## You may also use gdb, on another computer connected to this machine over ## a serial port. # options KGDB # options KGDB_DEVNAME="\"sabtty1\"" # kgdb device name # options KGDB_DEVRATE=38400 # baud rate (defaults to 9600) ## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file), ## such that gdb(1) can be used on a kernel coredump. #makeoptions DEBUG="-g" ## Adds code to the kernel that does internal consistency checks, and will ## cause the kernel to panic if corruption of internal data structures ## is detected. options DIAGNOSTIC # extra kernel sanity checking ## Enable (possibly expensive) debugging code that may also display messages ## on the system console #options DEBUG #options LOCKDEBUG #options SYSCALL_DEBUG ## Make SCSI error messages more verbose when explaining their meanings. options SCSIVERBOSE options PCIVERBOSE options MIIVERBOSE # verbose PHY autoconfig messages #options PCI_CONFIG_DUMP # verbosely dump PCI config space ## `INSECURE' turns off the kernel security level (securelevel = 0 always). ## This allows writing to /dev/mem, loading kernel modules while multi-user, ## and other insecurities good only for development work. Do not use this ## option on a production machine. #options INSECURE ## `FDSCRIPTS' allows non-readable but executable scripts by providing a ## pre-opened opaque file to the script interpreter. `SETUIDSCRIPTS', ## which implies FDSCRIPTS, allows scripts to be set-user-id using the same ## opaque file mechanism. Perl calls this "secure setuid scripts." #options FDSCRIPTS #options SETUIDSCRIPTS ## Options for compatibility with previous releases foreign system binaries. ## In the cases of COMPAT_SUNOS and COMPAT_SVR4, you may need to set up ## additional user-level utilities or system configuration files. See ## compat_sunos(8) and compat_svr4(8). options COMPAT_43 # 4.3BSD system interfaces options COMPAT_09 # NetBSD 0.9 binary compatibility options COMPAT_10 # NetBSD 1.0 binary compatibility options COMPAT_11 # NetBSD 1.1 binary compatibility options COMPAT_12 # NetBSD 1.2 binary compatibility options COMPAT_13 # NetBSD 1.3 binary compatibility options COMPAT_14 # NetBSD 1.4 binary compatibility options COMPAT_15 # NetBSD 1.5 binary compatibility options COMPAT_16 # NetBSD 1.6 binary compatibility options COMPAT_20 # NetBSD 2.0 binary compatibility options COMPAT_30 # NetBSD 3.0 binary compatibility options COMPAT_40 # NetBSD 4.0 binary compatibility options COMPAT_SUNOS # SunOS 4.x binary compatibility options COMPAT_SVR4 # SunOS 5.x binary compatibility options COMPAT_SVR4_32 # SunOS 5.x 32-bit binary compatibility -- 64-bit only options COMPAT_NETBSD32 # NetBSD/sparc binary compatibility -- 64-bit only options EXEC_AOUT # execve(2) support for a.out binaries options EXEC_ELF32 # Exec module for SunOS 5.x binaries. #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. ## File systems. You probably need at least one of FFS or NFS. file-system FFS # Berkeley Fast Filesystem file-system NFS # Sun NFS-compatible filesystem client file-system KERNFS # kernel data-structure filesystem file-system NULLFS # NULL layered filesystem file-system OVERLAY # overlay file system file-system MFS # memory-based filesystem file-system FDESC # user file descriptor filesystem #file-system UMAPFS # uid/gid remapping filesystem #file-system LFS # Log-based filesystem (still experimental) file-system PORTAL # portal filesystem (still experimental) file-system PROCFS # /proc file-system CD9660 # ISO 9660 + Rock Ridge file system file-system UNION # union file system file-system MSDOSFS # MS-DOS FAT filesystem(s). file-system PTYFS # /dev/pts/N support #file-system SMBFS # experimental - CIFS; also needs nsmb (below) file-system TMPFS # Efficient memory file-system #file-system UDF # experimental - OSTA UDF CD/DVD file-system file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs) ## File system options. options NFSSERVER # Sun NFS-compatible filesystem server #options QUOTA # FFS quotas #options FFS_EI # FFS Endian Independent support options SOFTDEP # FFS soft updates support. options WAPBL # File system journaling support - Experimental #options FFS_NO_SNAPSHOT # No FFS snapshot support ## Network protocol support. In most environments, INET is required. options INET # IP (Internet Protocol) v4 options INET6 # IPV6 options IPSEC # IP security options IPSEC_ESP # IP security (encryption part; define w/IPSEC) options IPSEC_NAT_T # IPsec NAT traversal (NAT-T) #options IPSEC_DEBUG # debug for IP security options GATEWAY # packet forwarding ("router switch") options MROUTING # packet forwarding of multicast packets options PIM # Protocol Independent Multicast #options DIRECTED_BROADCAST # allow broadcasts through routers #options ISO,TPIP # OSI networking #options EON # OSI tunneling over IP options NETATALK # AppleTalk (over Ethernet) protocol options NTP # Network Time Protocol in-kernel support options PPS_SYNC # Add serial line synchronization for NTP options PFIL_HOOKS # Add pfil(9) hooks, intended for custom LKMs. options IPFILTER_LOG # Add ipmon(8) logging for ipfilter device options IPFILTER_LOOKUP # ippool(8) support #options IPFILTER_DEFAULT_BLOCK # block all packets by default options PPP_BSDCOMP # Add BSD compression to ppp device options PPP_DEFLATE # Add deflate (libz) compression to ppp device options PPP_FILTER # Add active filters for ppp (via bpf) #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG options ALTQ # Manipulate network interfaces' output queues #options ALTQ_BLUE # Stochastic Fair Blue #options ALTQ_CBQ # Class-Based Queueing #options ALTQ_CDNR # Diffserv Traffic Conditioner #options ALTQ_FIFOQ # First-In First-Out Queue #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) #options ALTQ_HFSC # Hierarchical Fair Service Curve #options ALTQ_LOCALQ # Local queueing discipline #options ALTQ_PRIQ # Priority Queueing options ALTQ_RED # Random Early Detection #options ALTQ_RIO # RED with IN/OUT #options ALTQ_WFQ # Weighted Fair Queueing #### Main bus and CPU .. all systems. mainbus0 at root cpu0 at mainbus0 #### Bus types found on SPARC systems. psycho* at mainbus0 # PCI-based systems pci* at psycho? #pci* at ppb? #ppb* at pci? # `APB' support. ebus* at pci? # ebus devices # XXX 'puc's aren't really bridges, but there's no better place for them here #puc* at pci? dev ? function ? # PCI "universal" comm. cards #### Standard system devices -- all required for a given architecture ## PROM console driver -- if all else fails pcons0 at mainbus0 # PROM console ## Auxiliary system registers -- We use the OBP for power management #auxio* at ebus? # auxio registers # We also need: #lpt* at ebus? # parallel port ## Mostek clock found on sbus on Ultra-1,2 systems ## and found on ebus on Ultra-5 and other systems. #clock* at ebus? ## DS1287 compatible clock found on ebus on Netra X1 and other systems. rtc* at ebus? ## Timer chip found on 4/300, sun4c, sun4m and (some) sun4u systems. #timer* at mainbus0 # sun4c #### Serial port configuration ## PCI machines have serial ports: ## Siemens SAB82532 controller: ttya and ttyb (`su'; sab) ## Part of NS PC87332VLJ Super I/O controller: kbd/mouse (`se'; com) ## Part of a PC87332VLJ com* at ebus? # `com' driver for `su' #### Disk controllers and disks #scsibus* at scsi? ## These entries find devices on all SCSI busses and assign ## unit numbers dynamically. #sd* at scsibus? target ? lun ? # SCSI disks #st* at scsibus? target ? lun ? # SCSI tapes #cd* at scsibus? target ? lun ? # SCSI CD-ROMs #ch* at scsibus? target ? lun ? # SCSI changer devices #ss* at scsibus? target ? lun ? # SCSI scanners #ses* at scsibus? target ? lun ? # SCSI SES/SAF-TE devices #uk* at scsibus? target ? lun ? # unknown SCSI # IDE and related devices # PCI IDE controllers - see pciide(4) for supported hardware. # The 0x0001 flag force the driver to use DMA, even if the driver doesn't know # how to set up DMA modes for this chip. This may work, or may cause # a machine hang with some controllers. #pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver aceride* at pci? dev ? function ? # Acer Lab IDE controllers # ATA (IDE) bus support atabus* at ata? atapibus* at atapi? # IDE drives # Flags are used only with controllers that support DMA operations # and mode settings (e.g. some pciide controllers) # The lowest order four bits (rightmost digit) of the flags define the PIO # mode to use, the next set of four bits the DMA mode and the third set the # UltraDMA mode. For each set of four bits, the 3 lower bits define the mode # to use, and the last bit must be 1 for this setting to be used. # For DMA and UDMA, 0xf (1111) means 'disable'. # 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'. # (0xc=1100, 0xa=1010, 0xf=1111) # 0x0000 means "use whatever the drive claims to support". ## Disable UDMA 4 which causes data corruption on the Acer Labs ## chipset on Sun Blade 100 and Netra X1 machines. wd* at atabus? drive ? flags 0x0000 cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown # # accept filters pseudo-device accf_data # "dataready" accept filter pseudo-device accf_http # "httpready" accept filter ## A disk-like interface to files. Can be used to create floppy, CD, ## miniroot images, etc. pseudo-device vnd #options VND_COMPRESSION # compressed vnd(4) ## Concatenated and striped disks; with this, you can create a software-based ## disk array similar to a "RAID 0" setup. See ccd(4). pseudo-device ccd 4 ## Cryptographic disk devices. See cgd(4). #pseudo-device cgd 4 ## RAIDframe disk driver: software RAID driver. See raid(4). pseudo-device raid 8 options RAID_AUTOCONFIG # auto-configuration of RAID components # Options to enable various other RAIDframe RAID types. # options RF_INCLUDE_EVENODD=1 # options RF_INCLUDE_RAID5_RS=1 # options RF_INCLUDE_PARITYLOGGING=1 # options RF_INCLUDE_CHAINDECLUSTER=1 # options RF_INCLUDE_INTERDECLUSTER=1 # options RF_INCLUDE_PARITY_DECLUSTERING=1 # options RF_INCLUDE_PARITY_DECLUSTERING_DS=1 ## Memory disk device, used on boot floppies with compressed ## kernel-plus-root-disk images. #pseudo-device md 1 #### Network interfaces # PCI network interfaces # UT marks untested. tlp* at pci? dev ? function ? # DECchip 21x4x and clones # MII/PHY support dmphy* at mii? phy ? # Davicom DM9101 PHYs #ukphy* at mii? phy ? # generic unknown PHYs # PCI USB controllers ohci* at pci? dev ? function ? # Open Host Controller # USB bus support usb* at ohci? # USB Hubs uhub* at usb? uhub* at uhub? port ? # USB HID device uhidev* at uhub? port ? configuration ? interface ? # USB Mice #ums* at uhidev? reportid ? #wsmouse* at ums? mux 0 # USB eGalax touch-panel #uep* at uhub? port ? #wsmouse* at uep? mux 0 # USB Keyboards #ukbd* at uhidev? reportid ? #wskbd* at ukbd? console ? mux 1 # USB serial adapter ucycom* at uhidev? reportid ? # USB Generic HID devices uhid* at uhidev? reportid ? # USB Printer ulpt* at uhub? port ? configuration ? interface ? # USB Modem umodem* at uhub? port ? configuration ? ucom* at umodem? # USB Mass Storage umass* at uhub? port ? configuration ? interface ? wd* at umass? # USB audio uaudio* at uhub? port ? configuration ? # USB MIDI umidi* at uhub? port ? configuration ? # USB IrDA # USB-IrDA bridge spec #uirda* at uhub? port ? configuration ? interface ? #irframe* at uirda? # SigmaTel STIr4200 USB/IrDA Bridge #ustir* at uhub? port ? #irframe* at ustir? # USB Ethernet adapters #aue* at uhub? port ? # ADMtek AN986 Pegasus based adapters #axe* at uhub? port ? # ASIX AX88172 based adapters #cdce* at uhub? port ? # CDC, Ethernet Networking Control Model #cue* at uhub? port ? # CATC USB-EL1201A based adapters #kue* at uhub? port ? # Kawasaki LSI KL5KUSB101B based adapters #udav* at uhub? port ? # Davicom DM9601 based adapters #url* at uhub? port ? # Realtek RTL8150L based adapters # USB 802.11 adapters #atu* at uhub? port ? # Atmel AT76C50XX based adapters #ral* at uhub? port ? # Ralink Technology RT25x0 802.11a/b/g #zyd* at uhub? port ? # Zydas ZD1211 # Prolific PL2301/PL2302 host-to-host adapter upl* at uhub? port ? # Serial adapters ubsa* at uhub? port ? # Belkin serial adapter ucom* at ubsa? portno ? uftdi* at uhub? port ? # FTDI FT8U100AX serial adapter ucom* at uftdi? portno ? umct* at uhub? port ? # MCT USB-RS232 serial adapter ucom* at umct? portno ? uplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter ucom* at uplcom? portno ? uvscom* at uhub? port ? # SUNTAC Slipper U VS-10U serial adapter ucom* at uvscom? portno ? # Diamond Multimedia Rio 500 #urio* at uhub? port ? # USB Handspring Visor #uvisor* at uhub? port ? #ucom* at uvisor? # Kyocera AIR-EDGE PHONE #ukyopon* at uhub? port ? #ucom* at ukyopon? portno ? # USB scanners #uscanner* at uhub? port ? # USB scanners that use SCSI emulation, e.g., HP5300 #usscanner* at uhub? port ? # Y@P firmware loader #uyap* at uhub? port ? # D-Link DSB-R100 USB radio udsbr* at uhub? port ? radio* at udsbr? # USB Generic driver ugen* at uhub? port ? ## Loopback network interface; required pseudo-device loop ## SLIP and CSLIP interfaces, for IP over a serial line. #pseudo-device sl ## PPP, the successor to SLIP. See pppd(8). pseudo-device ppp ## PPP over Ethernet (RFC 2516) pseudo-device pppoe ## Starmode Radio IP, a special hardware network device. #pseudo-device strip ## Network "tunnel" device, allowing protocol stacks to run in the userland. ## This is used by the third-party user-mode "ppp" program, and others. pseudo-device tun pseudo-device tap # virtual Ethernet ## Generic L3 over IP tunnel pseudo-device gre # generic L3 over IP tunnel ## Berkeley Packet Filter, required to run RARPD. A generic C-language ## interface that allows selective examining of incoming packets. pseudo-device bpfilter # Common Address Redundancy Protocol #pseudo-device carp ## IEEE 802.1q encapsulation pseudo-device vlan ## Simple inter-network traffic bridging pseudo-device bridge #options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too pseudo-device agr # IEEE 802.3ad link aggregation ## IP Filter, used in firewall and NAT applications. See ipnat(8) for ## one example of the use of the IP Filter. pseudo-device ipfilter ## for IPv6 pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) #pseudo-device faith # IPv[46] tcp relay translation i/f pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation #### Audio and video devices audio* at audiobus? midi* at midibus? #### Other device configuration lom* at ebus? # LOMlite lights out management # Netra X1 / T1 style environmental monitoring alipm* at pci? iic* at alipm? spdmem* at iic? addr 0x54 spdmem* at iic? addr 0x55 spdmem* at iic? addr 0x56 spdmem* at iic? addr 0x57 admtemp* at iic? addr 0x18 ### Other pseudo-devices pseudo-device crypto # /dev/crypto device pseudo-device swcrypto # software crypto implementation ## Pseudo ttys, required for network logins and programs like screen. pseudo-device pty # pseudo-ttys (for network, etc.) ## Random device, used to implement /dev/random (a source of random noise), ## and generate randomness for some kernel formulae. pseudo-device rnd #pseudo-device wsmux # mouse & keyboard multiplexor #pseudo-device wsfont pseudo-device clockctl # user control of clock subsystem pseudo-device ksyms # /dev/ksyms pseudo-device pf # PF packet filter pseudo-device pflog # PF log if pseudo-device fss 4 # file system snapshot device #pseudo-device bcsp # BlueCore Serial Protocol #pseudo-device btuart # Bluetooth HCI UART (H4) pseudo-device lockstat # lock profiling #options FILEASSOC # fileassoc(9) - required for Veriexec # Veriexec # # a pseudo device needed for veriexec #pseudo-device veriexec 1 # # Uncomment the fingerprint methods below that are desired. Note that # removing fingerprint methods will have almost no impact on the kernel # code size. # #options VERIFIED_EXEC_FP_RMD160 #options VERIFIED_EXEC_FP_SHA256 #options VERIFIED_EXEC_FP_SHA384 #options VERIFIED_EXEC_FP_SHA512 #options VERIFIED_EXEC_FP_SHA1 #options VERIFIED_EXEC_FP_MD5 # a pseudo device needed for SMBFS #pseudo-device nsmb # experimental - SMB requester # drvctl - needed to show device dictionary via drvctl(8) pseudo-device drvctl # Pass-to-Userspace TransporTER, required for puffs(4) and pud(4) pseudo-device putter #options PAX_MPROTECT=0 # PaX mprotect(2) restrictions # (for static binaries only for now)