# $NetBSD: DISKLESS,v 1.81 2022/08/07 02:52:30 simonb Exp $

# DISKLESS - Root and swap on NFS
# Desktop machines only (3/50, 3/60, 3/110)
#
# Includes devices needed to run as an X-terminal

include "arch/sun3/conf/std.sun3"

#options        INCLUDE_CONFIG_FILE     # embed config file in kernel binary

makeoptions     COPTS="-Os -fno-unwind-tables"  # bootloader has size limit (~2MB)

# Machines to be supported by this kernel
options         FPU_EMULATE
options         HAVECACHE               # Sun3/260 VAC

# Needs to be set per system.  i.e change these as you see fit
maxusers        2

# Standard system options
#options        KTRACE          # system call tracing
#options        SYSVMSG         # System V message queues
#options        SYSVSEM         # System V semaphores
#options        SYSVSHM         # System V shared memory
#options        INSECURE        # disable kernel security level
options         USERCONF        # userconf(4) support
#options        PIPE_SOCKETPAIR # smaller, but slower pipe(2)
#options        SYSCTL_INCLUDE_DESCR    # Include sysctl descriptions in kernel

# Which kernel debugger?  Uncomment either this:
#options        DDB
# ... or these for KGDB (gdb remote target)
#makeoptions    DEBUG="-g"      # debugging symbols for gdb
#options        KGDB
#options        KGDB_DEV=0x0C01 # ttya=0C00 ttyb=0C01

# Other debugging options
#options        DDB_HISTORY_SIZE=100    # enable history editing in DDB
#options        DEBUG           # kernel debugging code
#options        DIAGNOSTIC      # extra kernel sanity checking
#options        PMAP_DEBUG
#options        SCSIDEBUG
#options        SCSIVERBOSE             # Verbose SCSI errors

# Compatibility options
include         "conf/compat_netbsd13.config"

#options        COMPAT_SUNOS    # can run SunOS 4.1.1 executables
#options        COMPAT_AOUT_M68K # support for NetBSD a.out executables
#options        COMPAT_LINUX    # can run Linux/m68k executables
#options        COMPAT_OSSAUDIO # can run Linux/m68k executables
#options        EXEC_AOUT       # support for a.out executables

# File systems
#file-system    FFS             # Berkeley Fast Filesystem
file-system     NFS             # Sun NFS client support
#file-system    CD9660          # ISO 9660 + Rock Ridge file system
#file-system    FDESC           # /dev/fd/*
#file-system    KERNFS          # /kern
#file-system    NULLFS          # loopback file system
#file-system    OVERLAY         # overlay file system
#file-system    PROCFS          # /proc
#file-system    UNION           # union file system
#file-system    MFS             # memory-based 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        NFSSERVER       # Network File System server

# Networking options
options         INET            # IP protocol stack support
#options        INET6           # IPV6
#options        IPSEC           # IP security
#options        IPSEC_DEBUG     # debug for IP security
#options        GATEWAY         # IP packet forwarding
#options        TCP_DEBUG       # Record last TCP_NDEBUG packets with SO_DEBUG

# Work-around for root on slow servers (insurance...)
options         NFS_BOOT_RWSIZE=1024
options         NFS_BOOT_BOOTPARAM

config          netbsd root on ? type nfs

# On-board I/O space (required)
include "arch/sun3/conf/obio.sun3"

# On-board memory (optional)
# See frame-buffers
obmem0 at mainbus?

# VME bus support (optional)
# (none on desktop machines)

#
# Serial ports
#
zstty0  at zsc1 channel 0       # ttya
zstty1  at zsc1 channel 1       # ttyb

kbd0    at zsc0 channel 0       # keyboard
ms0     at zsc0 channel 1       # mouse

#
# Network devices
#

# Intel Ethernet (onboard, or VME)
ie0 at obio0 addr 0x0C0000 ipl 3
#ie1 at vme2 addr 0xe88000 ipl 3 vect 0x75

# Lance Ethernet (only onboard)
le0 at obio0 addr 0x120000 ipl 3

# All Sun3 machines with an "le" (3/50, 3/60) should be
# presumed to have the old, buggy LANCE chip. (Rev. C)
options         LANCE_REVC_BUG

#
# Frame buffer devices
#

include "arch/sun3/conf/bw2.sun3"
include "arch/sun3/conf/cg4.sun3"

# 3/60 P4 accelerated 8-bit color frame buffer
# cgsix0 at obmem0 addr 0xff000000

# 3/60 P4 24-bit color frame buffer
# cgeight0 at obmem0 addr 0xff300000

# Sun-3 color board, or CG5 8-bit frame buffer (VME A24/D16).
# cgtwo0 at vme2 addr 0x400000 ipl 4 vect 0xA8

# Support for the CG9 24-bit frame buffer (VME A32/D32).
# cgnine0 at vme5 addr 0x08000000 ipl 4 vect 0xAA

# Misc.
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  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   pty                     # pseudo-terminals
pseudo-device   clockctl                # user control of clock subsystem