# $NetBSD: INSTALL,v 1.141 2022/08/07 02:53:42 simonb Exp $
#
# This file was automatically created.
# Changes will be lost when make is run in this directory.
#
# Created from: # NetBSD: GENERIC.in,v 1.150 2022/08/07 02:52:23 simonb 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/amiga/conf/std.amiga"

options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary

#ident 		"GENERIC-$Revision: 1.141 $"

makeoptions	COPTS="-Os -fno-omit-frame-pointer"

maxusers	8
options 	RTC_OFFSET=0

#
# mainboards to support (in addition to Amiga)
#
options 	DRACO
options 	BB060STUPIDROM	# You need this, if you have a non-DraCo
				# MC68060 with an OS ROM up to (at least)
				# V40 (OS3.1) and want to boot with the
				# bootblock.
				# You do not need this if you have a DraCo,
				# have no 68060 or NEVER use the bootblock
options 	P5PPC68KBOARD	# Phase5 PPC/68K board support
#
# processors this kernel should support
#
options 	M68060		# support for 060
options 	M060SP		# MC68060 software support (Required for 060)
options 	M68040		# support for 040
options 	FPSP		# MC68040 floating point support
options 	M68030		# support for 030
options 	M68020		# support for 020/851
options 	FPU_EMULATE	# FPU emulation

#
# Networking options
#
options 	INET		# IP networking support (Required)
options 	INET6		# IPV6
#options 	IPSEC		# IP security
#options 	IPSEC_DEBUG	# debug for IP security
#options 	GATEWAY		# Packet forwarding


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 	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

# Filesystems
file-system 	FFS		# Berkeley fast file system
file-system 	EXT2FS		# second extended file system (linux)
#file-system 	LFS		# log-structured filesystem (experimental)


file-system 	NFS		# Network File System client side code
file-system 	ADOSFS		# AmigaDOS file system
file-system 	CD9660		# ISO 9660 + Rock Ridge filesystem
file-system 	MSDOSFS		# MS-DOS filesystem

file-system 	KERNFS		# kernel data-structure filesystem


# Filesystem options

#options 	FFS_EI		# FFS Endian Independent support
options 	WAPBL		# File system journaling support


#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
				# immutable) behave as system flags.

#
# Compatibility options for various existing systems
#


options 	EXEC_AOUT	# 32-bit aout executables (NetBSD-1.5.x)
options 	COMPAT_AOUT_M68K # actually make some system calls work.


#
# Support for various kernel options
#

#options 	INSECURE	# disable kernel security levels
options 	SCSIVERBOSE	# human readable SCSI error messages
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

#
# Misc. debugging options
#
options 	DDB		# Kernel debugger
#options 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
#options 	DIAGNOSTIC	# Extra kernel sanity checks
#options 	DEBUG		# Enable misc. kernel debugging code
makeoptions	DEBUG="-g"	# compile full symbol table
#options 	SYSCALL_DEBUG	# debug all syscalls.
#options 	SCSIDEBUG	# Add SCSI debugging statements
#options 	PANICBUTTON	# Forced crash via keypress (?)

#
# Amiga specific options
#
#options 	LIMITMEM=24	# Do not use more than LIMITMEM MB of the
				# first bank of RAM. (default: unlimited)

# ATTENTION: There is NO WARRANTY AT ALL that the sync will be complete
# before the 10 secondinterval ends, or that KBDRESET does work at all.
#options 	KBDRESET	# sync on Ctrl-Amiga-Amiga

# These options improve performance with the built-in serial port
# on slower Amigas.  Try the larger buffers first then lev6_defer.
#options 	SERIBUF_SIZE=4096
#options 	SEROBUF_SIZE=32
#options 	LEV6_DEFER	# defers l6 to l4 (below serial l5)

#options	DEVRELOAD	# implement /dev/reload
#				# currently only works for a.out kernels

options 	RETINACONSOLE	# enable code to allow retina to be console
options 	ULOWELLCONSOLE	# enable code to allow a2410 to be console
options 	CL5426CONSOLE	# Cirrus console
options 	CV64CONSOLE	# CyberVision console
options 	TSENGCONSOLE	# Tseng console
options 	CV3DCONSOLE	# CyberVision 64/3D console

options 	GRF_ECS		# Enhanced Chip Set
options 	GRF_NTSC	# NTSC
options 	GRF_PAL		# PAL
options 	GRF_A2024	# Support for the A2024
options 	GRF_AGA		# AGA Chip Set
options 	GRF_AGA_VGA	# AGA VGAONLY timing
options 	GRF_SUPER72	# AGA Super-72
#options 	KFONT_8X11	# 8x11 font

# select a font for the console according to the character set and keymap
# you want to use
options        KFONT_CONS_ISO8859_1
#options         KFONT_CONS_ISO8859_2

# This is how you would tell the kernel the A2410 oscillator frequencies:
# The used frequencies are the defaults, and do not need option setting
#options 	ULOWELL_OSC1=36000000
#options 	ULOWELL_OSC2=66667000

# This is how you specify the blitting speed, higher values may speed up blits
# a little bit.  If you raise this value too much some trash may appear.
# the commented version is the default.
#options 	RH_MEMCLK=61000000
# this option enables the 64 bit sprite which does not work
# for quite a few people.  E.g. The cursor sprite will turn to a block
# when moved to the top of the screen in X.
#options 	RH_64BIT_SPRITE
# enables fast scroll code appears to now work on 040 systems.
#options 	RETINA_SPEED_HACK
# enables the Hardwarecursor which does not work on some systems.
#options 	RH_HARDWARECURSOR

# wscons aware interface to amiga custom chips.
# If you enable it enable also wskbd.
#
#amidisplaycc0	at mainbus0		# wscons interface to custom chips
#wsdisplay0	at amidisplaycc0 console ?
#options 	WSEMUL_VT100
#options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
#options 	FONT_VT220L8x10
#options	FONT_VT220ISO8x16

#z3rambd*	at zbus0		# Zorro III RAM block devices
#altmem*	at z3rambd?

p5bus0		at zbus0		# Phase5 CSPPC/BPPC internal bus

grfcc0		at mainbus0		# custom chips
grfrt0		at zbus0		# retina II
grfrh0		at zbus0		# retina III
grfcl*		at zbus0		# Picasso II/Piccolo/Spectrum
grful0		at zbus0		# A2410
grfcv0		at zbus0		# CyberVision 64
grfet*		at zbus0		# Tseng (oMniBus, Domino, Merlin)
grfcv3d0	at zbus0		# CyberVision 64/3D

grf0		at grfcc0
grf1		at grfrt0
grf2		at grfrh0
grf3		at grfcl?
grf4		at grful0
grf5		at grfcv0
grf6		at grfet?
grf7		at grfcv3d0
ite0		at grf0			# terminal emulators for grfs
ite1		at grf1			# terminal emulators for grfs
ite2		at grf2			# terminal emulators for grfs
ite3		at grf3			# terminal emulators for grfs
ite4		at grf4			# terminal emulators for grfs
ite5		at grf5			# terminal emulators for grfs
ite6		at grf6			# terminal emulators for grfs
ite7		at grf7			# terminal emulators for grfs

#wsdisplay*	at grf5 console ?	# wsdisplay on top of grf (CV64)
#wsdisplay*	at grf7 console ?	# wsdisplay on top of grf (CV64/3D)

msc0		at zbus0		# A2232 MSC multiport serial.
mfc0		at zbus0		# MultiFaceCard I/O board
mfcs0		at mfc0 unit 0		# MFC serial
mfcs1		at mfc0 unit 1		# MFC serial
#mfcp0		at mfc0 unit 0		# MFC parallel [not available yet]
#mfc1		at zbus0		# MultiFaceCard 2nd I/O board
#mfcs2		at mfc1 unit 0
#mfcs3		at mfc1 unit 1
#mfcp1		at mfc1 unit 0

hyper*		at zbus?		# zbus HyperCom3/3+/4/4+
#hyper*		at mainbus0		# not yet: HyperCom1 + HyperCom3
com*		at hyper? port ?	# Hypercom3/4 serial ports
lpt*		at hyper? port ?	# Hypercom3+/4+ parallel port

#options 	IOBZCLOCK=22118400 	# default, uncomment the next line
#options 	IOBZCLOCK=24000000	# if needed.

iobl*		at zbus?		# zbus IOBlix
com*		at iobl? port ?		# IOBlix serial ports
lpt*		at iobl? port ?		# IOBlix parallel ports


#
# Keyboard device. Optionally can attach a wskbd.
# wskbd works together with a wsdisplay so enable them both if you will.
# Don't enable wskbd if you use ite.
#
# XXX in std.amiga: kbd0 at mainbus0
#wskbd0		at kbd0 console ?


#
# Amiga Mainboard devices (sans graphics and keyboard)
#

ser0		at mainbus0		# Amiga onboard serial
par0		at mainbus0		# Amiga onboard parallel
ms*		at mainbus0		# Amiga mice
fdc0		at mainbus0		# Amiga FDC
fd*		at fdc0 unit ?		# floppy disks on the later
a34kbbc0	at mainbus0		# A3000/A4000 battery backed clock
a2kbbc0 	at mainbus0		# A2000 battery backed clock

#wsmouse*	at ms?

#
# DraCo Mainboard devices (sans keyboard)
#

drbbc0		at mainbus0		# DraCo battery backed clock
drsupio0	at mainbus0		# DraCo superio chip
com*		at drsupio? port ?	# DraCo serial
lpt0		at drsupio? port ?	# DraCo parallel

#
# Zorro-II, Zorro-III, DraCo Direct-Bus devices (sans graphics)
#


# Ethernet cards:
le*		at zbus0		# A2065, Ameristar, Ariadne
ne*		at zbus0		# AriadneII
ed*		at zbus0		# Hydra, ASDG LanRover
es*		at zbus0		# CEI A4066 EthernetPLUS
qn*		at zbus0		# Quicknet

xsh*		at zbus0		# X-Surf 100
ne*		at xshbus?		# NE2000 chip on X-Surf 100

xsurf*		at zbus0		# X-Surf
ne*		at xsurfbus?		# NE2000 chip on X-Surf
gencp*		at xsurfbus?		# clockports on X-Surf
wdc*		at xsurfbus?		# IDE on X-Surf

clockport*	at gencp?

# Arcnet
bah*		at zbus0		# C=/Ameristar A2060 / 560

# Greater Valley Product Bus
gvpbus* 	at zbus0

# scsi stuff, all possible
gtsc0		at gvpbus?		# GVP series II scsi
scsibus*	at gtsc0
ahsc0		at mainbus0		# A3000 scsi
scsibus*	at ahsc0
atzsc0		at zbus0		# A2091 scsi
scsibus*	at atzsc0
wstsc0		at zbus0		# Wordsync II scsi
scsibus*	at wstsc0
ivsc0		at zbus0		# IVS scsi
scsibus*	at ivsc0
mlhsc0		at zbus0		# Hacker scsi
scsibus*	at mlhsc0
otgsc0		at zbus0		# 12 gauge scsi
scsibus*	at otgsc0
zssc0		at zbus0		# Zeus scsi
scsibus*	at zssc0
mgnsc0		at zbus0		# Magnum scsi
scsibus*	at mgnsc0
wesc0		at zbus0		# Warp Engine scsi
scsibus*	at wesc0
bppcsc0		at p5bus0		# BlizzardPPC 603e+ scsi
scsibus*	at bppcsc0
afsc0		at zbus0		# A4091 scsi
scsibus*	at afsc0
aftsc0		at mainbus0		# A4000T scsi
scsibus*	at aftsc0
flsc0		at zbus0		# FastlaneZ3 scsi
scsibus*	at flsc0
bzsc0		at zbus0		# Blizzard 1230 I,II scsi
scsibus*	at bzsc0
bzivsc0 	at zbus0		# Blizzard 12x0 IV scsi
scsibus*	at bzivsc0
bztzsc0 	at zbus0		# Blizzard 2060 scsi
scsibus*	at bztzsc0
cbsc0		at zbus0		# CyberSCSI I
scsibus*	at cbsc0
cbiisc0 	at zbus0		# CyberSCSI II
scsibus*	at cbiisc0
cbiiisc0 	at p5bus0		# Cyberstorm mk.III/Cyberstorm PPC SCSI
scsibus*	at cbiiisc0
empsc0		at zbus0		# Emplant scsi
scsibus*	at empsc0

acafh0		at mainbus0		# Individual Computers ACA500
wdc*		at acafhbus?		# CF slots on ACA500
gencp*		at acafhbus?		# clockport on ACA500

wdc0		at mainbus0		# A4000 & A1200 IDE bus
wdc*		at zbus0		# Buddha / Catweasel
#efa0		at mainbus0		# ELBOX FastATA 1200 Mk-III/Mk-IV 

atabus* 	at wdc? channel ?	# ATA bus
#atabus*	at efa? channel ?	# ATA bus 
atabus*		at ata? channel ?	# ATA bus 
wd*		at atabus? drive ?	#  + drives
atapibus*	at atabus?		# ATAPI bus
cd*		at atapibus? drive ?	# ATAPI CD-ROM drives
sd*		at atapibus? drive ?	# ATAPI disk drives

pccard0		at mainbus0
pcmcia*		at pccard0
com*		at pcmcia? function ?	# Modems and serial cards
pcmcom*		at pcmcia? function ?	# PCMCIA multi-port serial cards
aic*		at pcmcia? function ?	# Adaptec APA-1460 SCSI
wdc*		at pcmcia? function ?
awi*		at pcmcia? function ?	# BayStack 650 (802.11FH)
ep*		at pcmcia? function ?	# 3Com 3c589 and 3c562 Ethernet
mbe*		at pcmcia? function ?	# MB8696x based Ethernet
ne*		at pcmcia? function ?	# NE2000-compatible Ethernet
sm*		at pcmcia? function ?	# Megahertz Ethernet
mhzc*		at pcmcia? function ?	# Megahertz Ethernet/Modem combo cards
com*		at mhzc?
sm*		at mhzc?

nsphyter*	at mii? phy ?		# NS83843 PHYs
ukphy*		at mii? phy ?		# generic unknown PHYs

drsc0		at mainbus0		# DraCo scsi
scsibus*	at drsc0


# each hard drive from low target to high
# will configure to the next available sd unit number
sd*	at scsibus? target ? lun ?	# scsi disks
st*	at scsibus? target ? lun ?	# scsi tapes
cd*	at scsibus? target ? lun ?	# scsi cds
ch*	at scsibus? target ? lun ?	# scsi autochangers

# PCI bus support
options		PCIVERBOSE              # verbose PCI device autoconfig messages
#options	PCI_CONFIG_DUMP
options		PCI_NETBSD_CONFIGURE	# supported by mppb(4), p5pb(4), empb(4)

p5pb0		at p5bus0		# Phase5 PCI bridge (CVPPC/BVPPC/G-REX)
p5membar*	at zbus0		# Phase5 PCI bridge autoconfiguring BARs
#options	P5PB_DEBUG		# enable excessive debug for p5pb
#options	P5PB_CONSOLE		# console on CVPPC/BVPPC/Voodoo3
pci*		at p5pb0

mppb*           at zbus0		# Matay Prometheus Zorro-PCI bridge
pci*            at mppb?

empb0		at zbus0		# ELBOX Mediator PCI 1200
em4k0		at zbus0		# ELBOX Mediator PCI 4000
emmem0		at zbus0		# ELBOX Mediator PCI memory space
empm0		at empb0		# ELBOX Mediator PCI Power Management
pci*		at empb0
pci*		at em4k0

#cv3dpb*	at zbus0		# CyberVision 64/3D PCI bridge

#genfb*		at pci?			# generic fb, CVPPC/BVPPC only
#voodoofb*	at pci?			# 3Dfx Voodoo 3 in G-REX
#radeonfb*	at pci?			# untested

ne*             at pci?			# NE2000 Ethernet
satalink* at pci? dev ? function ? flags 0x0002	# SiI SATALink 3112 

# Bluetooth Controller and Device support
# tested only with btuart on an A1200

# Bluetooth PCMCIA Controllers
bt3c*   at pcmcia? function ?           # 3Com 3CRWB6096-A
btbc*   at pcmcia? function ?           # AnyCom BlueCard LSE041/039/139

# Bluetooth Device Hub
bthub*  at bcsp?
bthub*  at bt3c?
bthub*  at btbc?
bthub*  at btuart?

# Bluetooth HID support
bthidev* at bthub?

# Bluetooth Mouse
#btms*   at bthidev? reportid ?
#wsmouse* at btms? mux 0

# Bluetooth Keyboard
#btkbd* at bthidev? reportid ?
#wskbd* at btkbd? console ? mux 1

# Bluetooth Apple Magic Mouse
#btmagic* at bthub?
#wsmouse* at btmagic? mux 0

# Bluetooth Audio support
#btsco* at bthub?

# USB
slhci*		at zbus?                # Thylacine
usb*		at slhci?

uhub*		at usb?
uhub*		at uhub? port ?

uhidev*		at uhub? port ? configuration ? interface ?
uhid*		at uhidev? reportid ?


pseudo-device	loop			# loopback network interface
pseudo-device	sl			# SLIP network interfaces
pseudo-device	ppp			# PPP network interfaces
pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
pseudo-device	tun			# network tunnel line discipline
pseudo-device	tap			# virtual Ethernet
#pseudo-device	gre			# generic L3 over IP tunnel
pseudo-device	bpfilter		# Berkeley packet filter
pseudo-device	carp			# Common Address Redundancy Protocol
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	vlan			# IEEE 802.1q encapsulation
pseudo-device	bridge			# simple inter-network bridging
pseudo-device	vether			# Virtual Ethernet for bridge
pseudo-device	agr			# IEEE 802.3ad link aggregation
#pseudo-device	fss			# file system snapshot device
#pseudo-device	putter			# for puffs and pud

pseudo-device	view		4	# views (needed for grfcc)
pseudo-device	pty			# pseudo-terminals
pseudo-device	clockctl		# user control of clock subsystem

#pseudo-device	wsfont			# wsfont(4) dynamic font loading support
#pseudo-device	wsmux			# mouse & keyboard multiplexor

pseudo-device	vnd			# vnode pseudo-disks
#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

#options 	RND_COM			# use "com" randomness as well (BROKEN)

pseudo-device   bcsp                    # BlueCore Serial Protocol
pseudo-device   btuart                  # Bluetooth HCI UART (H4)

# Veriexec
include "dev/veriexec.config"

config	netbsd root on ? type ?