Home | History | Annotate | Line # | Download | only in conf
      1 # $NetBSD: GENERIC,v 1.111 2024/06/30 05:59:14 rin 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 
     21 # Supports Sun2 (2/120, 2/170, 2/50, ...)
     22 # Supports root on: sd*, ... (FFS)
     23 
     24 include 	"arch/sun2/conf/std.sun2"
     25 
     26 #options 	MODULAR			# new style module(7) framework
     27 #options 	MODULAR_DEFAULT_AUTOLOAD
     28 
     29 options 	INSECURE		# allow modload(8) in multiuser mode
     30 
     31 #options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
     32 
     33 #ident 		"GENERIC-$Revision: 1.111 $"
     34 
     35 # Bootloader has size limit (~2MB). Kernel should be smaller than this
     36 # hard limit. Otherwise, it freezes before adding swap even with 7MB
     37 # memory. -fno-omit-frame-pointer is necessary for backtraces in DDB.
     38 options 	NO_KERNEL_RCSIDS
     39 makeoptions	COPTS="-Os -fno-inline-small-functions -fno-asynchronous-unwind-tables -fno-unwind-tables -fno-omit-frame-pointer"
     40 
     41 # Machines to be supported by this kernel
     42 #options 	FPU_EMULATE
     43 
     44 # Needs to be set per system.  i.e change these as you see fit
     45 maxusers	4
     46 
     47 # Standard system options
     48 options 	KTRACE		# system call tracing
     49 #options 	SYSVMSG		# System V message queues
     50 #options 	SYSVSEM		# System V semaphores
     51 #options 	SYSVSHM		# System V shared memory
     52 #options 	INSECURE	# disable kernel security level
     53 #options 	USERCONF	# userconf(4) support
     54 options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
     55 #options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
     56 
     57 # Alternate buffer queue strategies for better responsiveness under high
     58 # disk I/O load.
     59 #options 	BUFQ_READPRIO
     60 #options 	BUFQ_PRIOCSCAN
     61 
     62 # Which kernel debugger?  Uncomment either this:
     63 options 	DDB
     64 # ... or these for KGDB (gdb remote target)
     65 #makeoptions	DEBUG="-g"	# debugging symbols for gdb
     66 #options 	KGDB
     67 #options 	KGDB_DEV=0x0C00	# ttya=0C00 ttyb=0C01
     68 
     69 # Other debugging options
     70 #options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
     71 #options 	DEBUG		# kernel debugging code
     72 #options 	DIAGNOSTIC	# extra kernel sanity checking
     73 #options 	PMAP_DEBUG
     74 #options 	SCSIDEBUG
     75 #options 	SCSIVERBOSE		# Verbose SCSI errors
     76 
     77 # Compatibility options
     78 #include 	"conf/compat_netbsd16.config"
     79 #options 	COMPAT_SUNOS	# can run SunOS 4.1.1 executables
     80 #options 	COMPAT_AOUT_M68K # support for NetBSD a.out executables
     81 #options 	EXEC_AOUT	# support for a.out executables
     82 
     83 # File systems
     84 file-system	FFS		# Berkeley Fast Filesystem
     85 #file-system	NFS		# Sun NFS client support
     86 #file-system	CD9660		# ISO 9660 + Rock Ridge file system
     87 #file-system	FDESC		# /dev/fd/*
     88 #file-system	KERNFS		# /kern
     89 #file-system	NULLFS		# loopback file system
     90 #file-system	OVERLAY		# overlay file system
     91 #file-system	PROCFS		# /proc
     92 #file-system	UNION		# union file system
     93 #file-system	MFS		# memory-based filesystem
     94 file-system	PTYFS		# /dev/pts/N support
     95 #file-system	TMPFS		# Efficient memory file-system
     96 #file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
     97 
     98 # File system options
     99 #options 	FFS_EI		# FFS Endian Independent support
    100 options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
    101 #options 	QUOTA		# legacy UFS quotas
    102 #options 	QUOTA2		# new, in-filesystem UFS quotas
    103 #options 	UFS_DIRHASH	# UFS Large Directory Hashing
    104 #options 	UFS_EXTATTR	# Extended attribute support for UFS1
    105 #options 	WAPBL		# File system journaling support
    106 #options 	NFSSERVER	# Network File System server
    107 #options 	NFS_V2_ONLY	# Exclude NFS3 code to save space
    108 
    109 # Networking options
    110 options 	INET		# IP protocol stack support
    111 #options 	INET6		# IPV6
    112 #options 	IPSEC		# IP security
    113 #options 	IPSEC_DEBUG	# debug for IP security
    114 #options 	GATEWAY		# IP packet forwarding
    115 #options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
    116 
    117 #options 	ALTQ		# Manipulate network interfaces' output queues
    118 #options 	ALTQ_BLUE	# Stochastic Fair Blue
    119 #options 	ALTQ_CBQ	# Class-Based Queueing
    120 #options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
    121 #options 	ALTQ_FIFOQ	# First-In First-Out Queue
    122 #options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
    123 #options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
    124 #options 	ALTQ_LOCALQ	# Local queueing discipline
    125 #options 	ALTQ_PRIQ	# Priority Queueing
    126 #options 	ALTQ_RED	# Random Early Detection
    127 #options 	ALTQ_RIO	# RED with IN/OUT
    128 #options 	ALTQ_WFQ	# Weighted Fair Queueing
    129 
    130 # Work-around for root on slow servers (insurance...)
    131 options 	NFS_BOOT_RWSIZE=1024
    132 options 	NFS_BOOT_BOOTPARAM
    133 
    134 config		netbsd root on ? type ?
    135 
    136 #### Main bus.
    137 mainbus0 at root
    138 
    139 #### Bus types.
    140 
    141 obio0	at mainbus? 		# all Sun-2
    142 obmem0	at mainbus?		# all Sun-2
    143 mbmem0	at mainbus?		# 2/120, 2/170
    144 mbio0	at mainbus?		# 2/120, 2/170
    145 sun68kvme0	at mainbus?	# 2/50, 2/130, 2/160
    146 vme0	at sun68kvme0		# mi VME attachment
    147 
    148 #### Standard system devices.
    149 
    150 ## The AM9513 clock chip.
    151 clock0	at obio0 addr 0x002800	# 2/120, 2/170
    152 clock0	at obio0 addr 0x7f2800	# 2/50, 2/130, 2/160
    153 
    154 ## The MM58167 time-of-day chip.
    155 tod0	at obio0 addr 0x003800	# 2/120, 2/170
    156 tod0	at vme0 addr 0x200800	# 2/50, 2/130, 2/160
    157 
    158 #### Serial port configuration.
    159 
    160 ## Zilog 8530 serial chips.  Each has two channels.
    161 ## zs0 is ttya and ttyb.  zs1 is the keyboard and mouse.
    162 ## zs0 is REQUIRED to use KGDB.
    163 zs0	at obio0 addr 0x002000	# 2/120, 2/170
    164 zs0	at obio0 addr 0x7f2000	# 2/50
    165 zs1	at obmem0 addr 0x780000	# 2/120, 2/170
    166 zs1	at obio0 addr 0x7f1800	# 2/50
    167 zs2	at mbmem0 addr 0x080800	# 2/120, 2/170 (first sc SCSI)
    168 zs3	at mbmem0 addr 0x081000	# 2/120, 2/170 (first sc SCSI)
    169 zs4	at mbmem0 addr 0x084800	# 2/120, 2/170 (second sc SCSI)
    170 zs5	at mbmem0 addr 0x085000	# 2/120, 2/170 (second sc SCSI)
    171 zstty*	at zs? channel ?	# ttya
    172 kbd0	at zstty?		# keyboard
    173 ms0	at zstty?		# mouse
    174 
    175 #### Disk controllers and disks.
    176 
    177 ## PAL+logic-based "Sun SCSI 2" Multibus/VME SCSI controller.
    178 ## This driver has several flags which may be enabled using
    179 ## the "flags" directive.  Valid flags are:
    180 ##
    181 ## 0x0ff		Set (1<<target) to disable parity checking
    182 ## 0x100		Set this bit to disable DMA interrupts (poll)
    183 ## 0x200		Set this bit to disable DMA entirely (use PIO)
    184 ##
    185 ## For example: "flags 0x10f" would disable DMA interrupts,
    186 ## and disable parity for targets 0-3
    187 
    188 sc0	at mbmem0 addr 0x80000 ipl 2 flags 0xff
    189 sc0	at vme0 addr 0x200000 irq 2 vect 0x40 flags 0xff
    190 sc1	at mbmem0 addr 0x84000 ipl 2 flags 0xff
    191 
    192 ## NCR5380-based "Sun SCSI 3" VME SCSI controller.
    193 ## This driver has several flags which may be enabled by OR'ing
    194 ## the values and using the "flags" directive.
    195 ## Valid flags are:
    196 ##
    197 ##	0x01		Use DMA (may be polled)
    198 ##	0x02		Use DMA completion interrupts
    199 ##	0x04		Allow disconnect/reselect
    200 ##
    201 ## E.g. the following would enable DMA, interrupts, and reselect:
    202 ## si0	at vme0 addr 0x200000 ipl 3 vect 0x40 flags 0x07
    203 ##
    204 ## By default, DMA is enabled in the driver.
    205 
    206 si0	at vme0 addr 0x200000 irq 2 vect 0x40
    207 
    208 ## These entries find devices on all SCSI busses and assign
    209 ## unit numbers dynamically.
    210 scsibus* at sc?
    211 scsibus* at si?
    212 sd*	at scsibus? target ? lun ?		# SCSI disks
    213 st*	at scsibus? target ? lun ?		# SCSI tapes
    214 cd*	at scsibus? target ? lun ?		# SCSI CD-ROMs
    215 #ch*	at scsibus? target ? lun ?		# SCSI changer devices
    216 #ss*	at scsibus? target ? lun ?		# SCSI scanners
    217 #ses*	at scsibus? target ? lun ?		# SCSI SES/SAF-TE
    218 #uk*	at scsibus? target ? lun ?		# unknown SCSI
    219 
    220 # support old SCSI devices that don't understand the INQUIRY command
    221 options 	SCSI_OLD_NOINQUIRY
    222 
    223 ## Xylogics 450 or 451 Multibus/VME SMD disk controllers and disks.
    224 #xyc0	at mbio0 addr 0xee40 ipl 2
    225 #xyc0	at vme0 addr 0xee40 irq 2 vect 0x48
    226 #xyc1	at mbio0 addr 0xee48 ipl 2
    227 #xyc1	at vme0 addr 0xee48 irq 2 vect 0x49
    228 #xy*	at xyc? drive ?
    229 
    230 #
    231 # accept filters
    232 #pseudo-device   accf_data		# "dataready" accept filter
    233 #pseudo-device   accf_http		# "httpready" accept filter
    234 
    235 ## Memory-disk device.
    236 #pseudo-device	md		
    237 
    238 #### Network interfaces.
    239 
    240 ## Intel Ethernet (onboard, or Multibus/VME)
    241 ie0	at obio0 addr 0x7f0800 ipl 3		# 2/50
    242 ie0	at mbmem0 addr 0x88000 ipl 3
    243 ie1	at mbmem0 addr 0x8c000 ipl 3
    244 ## VME: the first [addr,len] pair specifies the device registers;
    245 ##	the second pair specifies the on-board memory buffer
    246 ie1	at vme0 addr 0xe88000,0xe00000 len -1,0x40000 irq 3 vect 0x75
    247 
    248 ## 3Com Ethernet (Multibus only)
    249 ec0	at mbmem0 addr 0xe0000 ipl 3
    250 ec1	at mbmem0 addr 0xe2000 ipl 3
    251 # limit NFS R/W size for poor ec(4) interfaces
    252 options 	NFS_RSIZE=1024,NFS_WSIZE=1024
    253 
    254 ## Frame buffers.
    255 
    256 ## Sun "bwtwo" black and white framebuffer.
    257 bwtwo0	at obmem0 addr 0x700000	# 2/120, 2/170
    258 bwtwo0	at obio0 addr 0x0	# 2/50
    259 
    260 ## PROM console driver -- if all else fails
    261 pcons0	at mainbus0			# PROM console
    262 
    263 #### Miscellaneous.
    264 pseudo-device	loop			# network loopback
    265 #pseudo-device	bpfilter		# packet filter
    266 #pseudo-device	carp			# Common Address Redundancy Protocol
    267 #pseudo-device	bridge			# simple inter-network bridging
    268 #pseudo-device	vether			# Virtual Ethernet for bridge
    269 #pseudo-device	sl			# CSLIP
    270 #pseudo-device	ppp			# PPP
    271 #pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
    272 #pseudo-device	tun			# network tunneling over tty
    273 #pseudo-device	tap			# virtual Ethernet
    274 #pseudo-device	gre			# generic L3 over IP tunnel
    275 #pseudo-device	npf			# NPF packet filter
    276 #pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
    277 #pseudo-device	faith			# IPv[46] tcp relay translation i/f
    278 #pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
    279 
    280 pseudo-device	pty			# pseudo-terminals
    281 #pseudo-device	vnd			# paging to files
    282 #options 	VND_COMPRESSION		# compressed vnd(4)
    283 #pseudo-device	ccd			# concatenated disks
    284 #pseudo-device	cgd			# cryptographic disk devices
    285 #pseudo-device	raid			# RAIDframe disk driver
    286 #options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
    287 # Options to enable various other RAIDframe RAID types.
    288 # options	RF_INCLUDE_EVENODD=1
    289 # options	RF_INCLUDE_RAID5_RS=1
    290 # options	RF_INCLUDE_PARITYLOGGING=1
    291 # options	RF_INCLUDE_CHAINDECLUSTER=1
    292 # options	RF_INCLUDE_INTERDECLUSTER=1
    293 # options 	RF_INCLUDE_PARITY_DECLUSTERING=1
    294 # options	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
    295 #pseudo-device	fss			# file system snapshot device
    296 #pseudo-device	clockctl		# user control of clock subsystem
    297 pseudo-device	ksyms			# /dev/ksyms
    298 
    299 # Veriexec
    300 # include "dev/veriexec.config"
    301 
    302 # Pull in optional local configuration - always at end
    303 cinclude	"arch/sun2/conf/GENERIC.local"
    304