#       $NetBSD: WALNUT,v 1.77 2024/01/29 18:27:12 christos Exp $
#
#       GENERIC -- everything that's currently supported
#

include         "arch/evbppc/conf/std.walnut"

#options        INCLUDE_CONFIG_FILE     # embed config file in kernel binary

#ident          "WALNUT"

maxusers        32

#options        UVMHIST
#options        UVMHIST_PRINT

# Options for necessary to use MD
#options        MEMORY_DISK_HOOKS
#options        MEMORY_DISK_IS_ROOT     # force root on memory disk
#options        MEMORY_DISK_SERVER=0    # no userspace memory disk support
#options        MEMORY_DISK_ROOT_SIZE=16384     # size of memory disk, in blocks


#options        INSECURE        # disable kernel security levels
#options        NTP             # NTP phase/frequency locked loop
options         KTRACE          # system call tracing via ktrace(1)

options         SYSVMSG         # System V message queues
options         SYSVSEM         # System V semaphores
options         SYSVSHM         # System V shared memory

options         USERCONF        # userconf(4) support
#options        PIPE_SOCKETPAIR # smaller, but slower pipe(2)
#options        SYSCTL_INCLUDE_DESCR    # Include sysctl descriptions in kernel

# Diagnostic/debugging support options
#options        DIAGNOSTIC      # cheap kernel consistency checks
#options        DEBUG           # expensive debugging checks/support
options         DDB             # in-kernel debugger
options         DDB_HISTORY_SIZE=512    # enable history editing in DDB
options         TRAP_PANICWAIT
makeoptions     COPY_SYMTAB=1   # size for embedded symbol table

makeoptions     DEBUG="-g"      # compile full symbol table

# Compatibility options
include         "conf/compat_netbsd13.config"
#options        COMPAT_386BSD_MBRPART # recognize old partition ID

# File systems
file-system     FFS             # UFS
file-system     EXT2FS          # second extended file system (linux)
file-system     LFS             # log-structured file system
file-system     MFS             # memory file system
file-system     NFS             # Network File System client
file-system     CD9660          # ISO 9660 + Rock Ridge file system
file-system     MSDOSFS         # MS-DOS 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     PUFFS           # Userspace file systems (e.g. ntfs-3g & sshfs)
file-system     PROCFS          # /proc
file-system     TMPFS           # efficient memory file system
file-system     UMAPFS          # NULLFS + uid and gid remapping
file-system     UNION           # union file system
file-system     PTYFS           # /dev/pts/N support

# 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

options         NFS_BOOT_DHCP   # Support DHCP NFS root

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

# These options enable verbose messages for several subsystems.
# Warning, these may compile large string tables into the kernel!
options         PCIVERBOSE      # verbose PCI device autoconfig messages
options         MIIVERBOSE      # verbose PHY autoconfig messages
#options        PCI_CONFIG_DUMP # verbosely dump PCI config space
options         SCSIVERBOSE     # human readable SCSI error messages
options         PCI_NETBSD_CONFIGURE    # Do not rely on BIOS/whatever to configure PCI devices
#options        PCI_CONFIGURE_VERBOSE   # Show PCI config information

# wscons options
#options        WSEMUL_SUN              # sun terminal emulation
#options        WSEMUL_VT100            # VT100 / VT220 emulation
#options        WSDISPLAY_COMPAT_USL            # wsconscfg VT handling

# Kernel root file system and dump configuration.
config          netbsd  root on ? type ?

#
# Device configuration
#

plb0 at root                            # Processor Local Bus

cpu0    at plb?

ecc0    at plb? irq 17                  # On-chip ECC controller

opb*    at plb?                         # On-chip Peripheral Bus

wdog*   at opb?                         # Watchdog timer

com*    at opb? addr ? irq ?            # UARTs

emac0   at opb? addr ? irq ?            # Ethernet Media Access Controller
options EMAC_EVENT_COUNTERS

pchb0   at plb?                         # PCI-Host bridges

pci*    at pchb?
ppb*    at pci? dev ? function ?        # PCI-PCI bridges

ep*     at pci? dev ? function ?        # 3Com 3c59x
epic*   at pci? dev ? function ?        # SMC EPIC/100 Ethernet
ex*     at pci? dev ? function ?        # 3Com 90x[B]
fxp*    at pci? dev ? function ?        # Intel EtherExpress PRO 10+/100B
ne*     at pci? dev ? function ?        # NE2000-compatible Ethernet
rtk*    at pci? dev ? function ?        # Realtek 8129/8139
sip*    at pci? dev ? function ?        # SiS 900/7016 Ethernet
tlp*    at pci? dev ? function ?        # DECchip 21x4x and clones
adv*    at pci? dev ? function ?        # AdvanSys 1200[A,B], 9xx[U,UA] SCSI
adw*    at pci? dev ? function ?        # AdvanSys 9x0UW[D], 3940U[2,3]W SCSI
ahc*    at pci? dev ? function ?        # Adaptec 294x, aic78x0 SCSI
bha*    at pci? dev ? function ?        # BusLogic 9xx SCSI
isp*    at pci? dev ? function ?        # Qlogic ISP 10x0/2xx0 SCSI/Fibre Chan
siop*   at pci? dev ? function ?        # NCR 53c8xx SCSI
pcscp*  at pci? dev ? function ?        # AMD Am53c974 PCscsi-PCI SCSI
pciide* at pci? dev ? function ? flags 0x0000   # GENERIC pciide driver
acardide* at pci? dev ? function ?      # Acard IDE controllers
aceride* at pci? dev ? function ?       # Acer Lab IDE controllers
artsata* at pci? dev ? function ?       # Intel i31244 SATA controller
cmdide* at pci? dev ? function ?        # CMD tech IDE controllers
cypide* at pci? dev ? function ?        # Cypress IDE controllers
hptide* at pci? dev ? function ?        # Triones/HighPoint IDE controllers
optiide* at pci? dev ? function ?       # Opti IDE controllers
pdcide* at pci? dev ? function ?        # Promise IDE controllers
pdcsata* at pci? dev ? function ?       # Promise SATA150 controllers
satalink* at pci? dev ? function ?      # SiI SATALink controllers
siside* at pci? dev ? function ?        # SiS IDE controllers
slide*  at pci? dev ? function ?        # Symphony Labs IDE controllers
viaide* at pci? dev ? function ?        # VIA/AMD/Nvidia IDE controllers
#cbb*   at pci? dev ? function ?        # PCI-CardBus bridge

exphy*  at mii? phy ?                   # 3Com internal PHYs
icsphy* at mii? phy ?                   # Integrated Circuit Systems ICS189x
inphy*  at mii? phy ?                   # Intel 82555 PHYs
iophy*  at mii? phy ?                   # Intel 82553 PHYs
lxtphy* at mii? phy ?                   # Level One LXT-970 PHYs
nsphy*  at mii? phy ?                   # NS83840 PHYs
nsphyter* at mii? phy ?                 # NS83843 PHYs
qsphy*  at mii? phy ?                   # Quality Semiconductor QS6612 PHYs
sqphy*  at mii? phy ?                   # Seeq 80220/80221/80223 PHYs
tlphy*  at mii? phy ?                   # ThunderLAN PHYs
tqphy*  at mii? phy ?                   # TDK Semiconductor PHYs
ukphy*  at mii? phy ?                   # generic unknown PHYs

# PCI serial interfaces
#cy*    at pci? dev ? function ?        # Cyclades Cyclom-Y serial boards
#cz*    at pci? dev ? function ?        # Cyclades-Z multi-port serial boards

#cardslot* at cbb?
#cardbus* at cardslot?
#pcmcia*        at cardslot?

#com*   at pcmcia? function ?           # Modems and serial cards
#wdc*   at pcmcia? function ?           # PCMCIA IDE controllers
#ep*    at pcmcia? function ?           # 3Com 3c589 and 3c562 Ethernet
#mbe*   at pcmcia? function ?           # MB8696x based Ethernet
#ne*    at pcmcia? function ?           # NE2000-compatible Ethernet
#ex*    at cardbus? function ?  # 3Com 3C575TX
#tlp*   at cardbus? function ?  # DECchip 21143
#rtk*   at cardbus? function ?  # Realtek 8129/8139

scsibus* at adv?
scsibus* at adw?
scsibus* at ahc?
scsibus* at bha?
scsibus* at isp?
scsibus* at pcscp?
scsibus* at siop?

sd*     at scsibus? target ? lun ?      # SCSI disks
st*     at scsibus? target ? lun ?      # SCSI tape drives
cd*     at scsibus? target ? lun ?      # SCSI CD-ROM drives
ch*     at scsibus? target ? lun ?      # SCSI autochangers
ss*     at scsibus? target ? lun ?      # SCSI scanners
uk*     at scsibus? target ? lun ?      # SCSI unknown

atabus*         at ata? channel ?
wd*             at atabus? drive ? flags 0x0000

atapibus* at atabus?

cd*     at atapibus? drive ? flags 0x0000       # ATAPI CD-ROM drives
sd*     at atapibus? drive ? flags 0x0000       # ATAPI disk drives
uk*     at atapibus? drive ? flags 0x0000       # ATAPI unknown

pbus*   at plb?                         # off-chip Peripheral BUS

ds1743rtc0      at pbus? addr ?                 # RTC

#pckbc0 at pbus?
#pckbd* at pckbc?
#wskbd* at pckbd? console ?
#pms*   at pckbc?
#wsmouse* at pms? mux 0

#vga*   at pci? dev ? function ?
#wsdisplay* at vga? console ?

pseudo-device   vnd                     # disk-like interface to files
pseudo-device   ccd                     # concatenated/striped disk devices
#pseudo-device  cgd                     # cryptographic disk devices
pseudo-device   raid                    # RAIDframe disk driver
options         RAID_AUTOCONFIG         # auto-configuration of RAID components
#pseudo-device  fss                     # file system snapshot device
pseudo-device   loop                    # network loopback
pseudo-device   bpfilter                # packet filter
pseudo-device   npf                     # NPF packet filter
pseudo-device   ppp                     # Point-to-Point Protocol
pseudo-device   sl                      # Serial Line IP
pseudo-device   tun                     # network tunneling over tty
#pseudo-device  gre                     # generic L3 over IP tunnel
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   pty                     # pseudo-terminals
#pseudo-device  wsmux                   # ick
pseudo-device   clockctl                # user control of clock subsystem
pseudo-device   ksyms                   # /dev/ksyms
pseudo-device   kttcp                   # kernel ttcp
pseudo-device   putter                  # for puffs and pud