# $NetBSD: GENERIC,v 1.129 2019/04/26 21:40:28 sevan Exp $
#
# GENERIC --- NetBSD/acorn32 complete configuration
#
# 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/acorn32/conf/std.acorn32"
options INCLUDE_CONFIG_FILE # embed config file in kernel binary
#ident "GENERIC-$Revision: 1.129 $"
# estimated number of users
maxusers 32
# Standard system options
options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
#options NTP # NTP phase/frequency locked loop
# CPU options
options CPU_SA110 # Support the SA110 core
options CPU_ARM6 # Support the ARM6 core
options CPU_ARM7 # Support the ARM7 core
#options CPU_ARM8 # Support the ARM8 core
#options ARM6_LATE_ABORT # ARM6XX late abort support
# For StrongARM only kernels
#makeoptions COPTS="-O2 -march=armv3m -mtune=strongarm"
# File systems
file-system FFS # UFS
#file-system LFS # log-structured file system
file-system MFS # memory file system
file-system NFS # Network file system
file-system ADOSFS # AmigaDOS-compatible file system
file-system EXT2FS # second extended file system (linux)
file-system CD9660 # ISO 9660 + Rock Ridge file system
file-system MSDOSFS # MS-DOS file system
file-system FDESC # /dev/fd
file-system FILECORE # Acorn filecore file system
file-system KERNFS # /kern
file-system NULLFS # loopback file system
file-system OVERLAY # overlay filesystem
file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs)
file-system PROCFS # /proc
file-system UMAPFS # NULLFS + uid and gid remapping
file-system UNION # union file system
file-system PTYFS # /dev/pts/N support
file-system TMPFS # Efficient memory file-system
#file-system UDF # experimental - OSTA UDF CD/DVD file-system
# File system options
options QUOTA # legacy UFS quotas
options QUOTA2 # new, in-filesystem UFS quotas
#options FFS_EI # FFS Endian Independent support
options WAPBL # File system journaling support
#options UFS_DIRHASH # UFS Large Directory Hashing - Experimental
options NFSSERVER
#options FFS_NO_SNAPSHOT # No FFS snapshot support
options UFS_EXTATTR # Extended attribute support for UFS1
# Networking options
options GATEWAY # packet forwarding
options INET # IP + ICMP + TCP + UDP
options INET6 # IPV6
#options IPSEC # IP security
#options IPSEC_DEBUG # debug for IP security
#options MROUTING # IP multicast routing
#options PIM # Protocol Independent Multicast
options NETATALK # AppleTalk networking
options PPP_BSDCOMP # BSD-Compress compression support for PPP
options PPP_DEFLATE # Deflate compression support for PPP
options PPP_FILTER # Active filter support for PPP (requires 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
# Compatibility options
include "conf/compat_netbsd12.config"
options COMPAT_NETBSD32 # allow running arm (e.g. non-earm) binaries
# Shared memory options
options SYSVMSG # System V-like message queues
options SYSVSEM # System V-like semaphores
options SYSVSHM # System V-like memory sharing
# Device options
options MEMORY_DISK_HOOKS # boottime setup of ramdisk
#options MEMORY_DISK_ROOT_SIZE=4100 # Size in blocks
#options MEMORY_DISK_IS_ROOT # use memory disk as root
# Miscellaneous kernel options
options KTRACE # system call tracing, a la ktrace(1)
options IRQSTATS # manage IRQ statistics
#options SCSIVERBOSE # Verbose SCSI errors
options USERCONF # userconf(4) support
#options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
# Alternate buffer queue strategies for better responsiveness under high
# disk I/O load.
#options BUFQ_READPRIO
options BUFQ_PRIOCSCAN
# Development and Debugging options
#options ARM700BUGTRACK # track the ARM700 swi bug
#options PORTMASTER # Enable PortMaster only options
#options DIAGNOSTIC # internal consistency checks
#options PMAP_DEBUG # Enable pmap_debug_level code
options DDB # in-kernel debugger
#options DDB_HISTORY_SIZE=100 # Enable history editing in DDB
#makeoptions DEBUG="-g" # compile full symbol table
config netbsd root on ? type ?
# serial console ... the conaddr is hardcoded as the pioc address + 4*com offset
# this really be fixed some day
#options COMCONSOLE,CONADDR="0x210000+4*0x3f8",CONUNIT=0,CONSPEED=9600
# The main bus device
mainbus0 at root
# The boot CPU
cpu0 at mainbus?
# The IOMD
iomd0 at mainbus?
# system clock via IOMD
clock* at iomd?
# IIC bus device
iomdiic* at iomd?
iic0 at iomdiic?
# RTC device via IIC bus
pcfrtc* at iic? addr 0x50
# VIDC device
vidc0 at mainbus?
# WSCONS
# ws console uses DUMB, SUN or VT100 terminal emulation
#options WSEMUL_NODUMB
#options WSEMUL_SUN
options WSEMUL_VT100
options WS_KERNEL_FG=WSCOL_GREEN
#options WSDISPLAY_COMPAT_RAWKBD
options WSDISPLAY_COMPAT_USL # wsconscfg VT handling
options WSDISPLAY_SCROLLSUPPORT
vidcvideo0 at vidc? # wscons driver for VIDC
wsdisplay* at vidcvideo? console ? # display itself
iomdkbc* at iomd? # IOMD keyboard/mouse interface
pckbd* at iomdkbc? slot ? # PS/2 keyboard
options PCKBD_LAYOUT=KB_UK
wskbd* at pckbd?
pms* at iomdkbc? slot ? # PS/2 mouse
wsmouse* at pms?
qms* at iomd? # ws quadmouse driver
wsmouse* at qms? # wsmouse on ws quadmouse
pseudo-device wsmux
# Peripheral IO Controller
pioc0 at mainbus? base 0x00210000
# IDE disk controller
wdc0 at pioc? offset 0x01f0 irq 9
# ATA (IDE) bus support
atabus* at ata?
wd* at atabus? drive ?
atapibus* at atapi?
cd* at atapibus? drive ?
sd* at atapibus? drive ?
# Floppy disk controller
fdc* at pioc? offset 0x03f0 irq 12 dack 0x2000
fd0 at fdc? drive ?
# Serial ports
com* at pioc? offset 0x03f8 irq 10
# Parallel ports
lpt* at pioc? offset 0x0278 irq 0 # Old driver
#atppc* at pioc? offset 0x0278 irq 0 # New driver
#ppbus* at atppc?
#lpt* at ppbus? # Parallel printer
#plip* at ppbus? # Parallel line IP
# Audio device
vidcaudio0 at vidc?
audio* at vidcaudio0
spkr* at audio? # PC speaker (synthesized)
# Podule bus device
podulebus0 at root
sec* at podulebus? # Acorn SCSI card
scsibus* at sec?
cosc* at podulebus? # MCS Connect32 SCSI II card
scsibus* at cosc?
ptsc* at podulebus? # Power-Tec SCSI II card
scsibus* at ptsc?
csc* at podulebus? # Cumana SCSI II card
scsibus* at csc?
oak* at podulebus? # Oak SCSI I card
scsibus* at oak?
csa* at podulebus? # Cumana SCSI I adapter
scsibus* at csa?
hcsc* at podulebus0 slot ? # HCCS 8-bit SCSI interface
scsibus* at hcsc?
sd* at scsibus? target ? lun ? # SCSI disk drives
st* at scsibus? target ? lun ? # SCSI tape drives
cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
ch* at scsibus? target ? lun ? # SCSI auto-changers
uk* at scsibus? target ? lun ? # SCSI unknown device
ss* at scsibus? target ? lun ? # SCSI scanner
dtide* at podulebus? # D.T. Software IDE card
hcide* at podulebus? # HCCS IDE card
icside* at podulebus? # ICS IDE card
rapide* at podulebus? # Yellowstone RapIDE card
simide* at podulebus? # Simtec IDE card
amps* at podulebus? # Atomwide Multi-Port Serial card
com* at amps?
ei* at podulebus? # Ether1 podules
ea* at podulebus? # Ether3 podules
eb0 at podulebus? # EtherB network slot cards
ne* at podulebus? # NE2000 clone cards
pseudo-device loop # network loopback
pseudo-device bpfilter # packet filter
pseudo-device carp # Common Address Redundancy Protocol
pseudo-device sl # CSLIP
pseudo-device ppp # PPP
pseudo-device pppoe # PPP over Ethernet (RFC 2516)
pseudo-device tun # network tunneling over tty
pseudo-device tap # virtual Ethernet
#pseudo-device gre # generic L3 over IP tunnel
#pseudo-device npf # NPF packet filter
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
#pseudo-device strip # STarmode Radio IP (Metricon Ricochet)
pseudo-device vlan # IEEE 802.1q encapsulation
pseudo-device bridge # simple inter-network bridging
#options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too
pseudo-device agr # IEEE 802.3ad link aggregation
pseudo-device pty # pseudo-terminals
pseudo-device vnd # disk-like interface to files
#options VND_COMPRESSION # compressed vnd(4)
pseudo-device ccd # concatenated disk devices
#pseudo-device cgd # cryptographic disk devices
pseudo-device raid # RAIDframe disk driver
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
pseudo-device fss # file system snapshot device
pseudo-device md # Ramdisk driver
pseudo-device clockctl # user control of clock subsystem
pseudo-device drvctl # user control of drive subsystem
pseudo-device ksyms # /dev/ksyms
pseudo-device putter # for puffs and pud
#
# accept filters
pseudo-device accf_data # "dataready" accept filter
pseudo-device accf_http # "httpready" accept filter
include "dev/veriexec.config"
# If the standard modes don't work for your monitor, you can specify
# a RISC-OS-format monitor definition file and a list of modes here.
#makeoptions MONITOR="Taxan875+LR"
#makeoptions MONITOR="AKF60"
#makeoptions MODES="1024,768,60 1024,768,70 800,600,60 640,480,60 1280,1024 1152,900"