# $NetBSD: DRACO,v 1.202 2024/01/29 18:27:10 christos Exp $
#
# This file was automatically created.
# Changes will be lost when make is run in this directory.
#
# Created from: # NetBSD: GENERIC.in,v 1.149 2022/05/29 10:43:19 andvar 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.202 $"

makeoptions     COPTS="-O2 -fno-reorder-blocks -fno-omit-frame-pointer"
       # See share/mk/sys.mk. -fno-omit-frame-pointer is necessary for
       # backtraces in DDB.

maxusers        8
options         RTC_OFFSET=0

#
# mainboards to support (in addition to Amiga)
#
options         DRACO
#
# processors this kernel should support
#
options         M68060          # support for 060
options         M060SP          # MC68060 software support (Required for 060)

#
# 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        MROUTING        # Multicast routing
#options        PIM             # Protocol Independent Multicast
options         NETATALK        # AppleTalk networking protocols
#options        TCP_DEBUG       # Record last TCP_NDEBUG packets with SO_DEBUG

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     MFS             # Memory based filesystem

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

file-system     FDESC           # user file descriptor filesystem
file-system     NULLFS          # loopback filesystem
file-system     OVERLAY         # overlay filesystem
file-system     PROCFS          # /proc filesystem
file-system     UMAPFS          # NULLFS + uid and gid remapping
file-system     UNION           # union filesystem
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        FFS_EI          # FFS Endian Independent support
#options        FFS_NO_SNAPSHOT # No FFS snapshot support
options         QUOTA           # legacy UFS quotas
options         QUOTA2          # new, in-filesystem UFS quotas
#options        UFS_DIRHASH     # UFS Large Directory Hashing
options         UFS_EXTATTR     # Extended attribute support for UFS1
options         WAPBL           # File system journaling support
#options        LFS_DIRHASH     # LFS version of UFS_DIRHASH - experimental
options         NFSSERVER       # Network File System server

#
# Compatibility options for various existing systems
#


include         "conf/compat_netbsd09.config"

options         COMPAT_SUNOS    # Support to run Sun (m68k) executables
options         COMPAT_NOMID    # allow nonvalid machine id executables
#options        COMPAT_LINUX    # Support to run Linux/m68k executables
#options        COMPAT_OSSAUDIO # Support to run Linux/m68k executables

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

#
# Support for System V IPC facilities.
#
options         SYSVSHM         # System V-like shared memory
options         SYSVMSG         # System V-like messages
options         SYSVSEM         # System V-like semaphores

#
# Support for various kernel options
#

options         KTRACE          # system call tracing support
#options        INSECURE        # disable kernel security levels
options         SCSIVERBOSE     # human readable SCSI error messages
options         USERCONF        # userconf(4) support
options         NTP             # NTP phase/frequency locked loop
#options        PIPE_SOCKETPAIR # smaller, but slower pipe(2)

# 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         RETINACONSOLE   # enable code to allow retina to be console
#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


grfrh0          at zbus0                # retina III

grf2            at grfrh0
ite2            at grf2                 # terminal emulators for grfs

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 ?



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


repulse*        at zbus0                # ALiENDESiGN Repulse
audio*          at repulse?

toccata*        at zbus0                # MacroSystem GmbH Toccata
audio*          at toccata?

# 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


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


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
ss*     at scsibus? target ? lun ?      # scsi scanner
uk*     at scsibus? target ? lun ?      # scsi unknown
#
# accept filters
pseudo-device   accf_data               # "dataready" accept filter
pseudo-device   accf_http               # "httpready" accept filter

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   drvctl                  # user control of drive 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   ksyms                   # /dev/ksyms (kernel symbols)

# Veriexec
include "dev/veriexec.config"

config  netbsd root on ? type ?