#       $NetBSD: EV64260,v 1.76 2024/01/29 18:27:12 christos Exp $
#
#       MVP -- Motorola's Multiprocessing Verification Platform
#
include         "arch/evbppc/conf/std.ev64260"

#options        INCLUDE_CONFIG_FILE     # embed config file in kernel binary

#ident          "EV64260"

maxusers        32

#options        UVMHIST
#options        UVMHIST_PRINT

#options        MULTIPROCESSOR          # Discovery II/III support

# PowerPC options
options         ALTIVEC
#options        CLOCKBASE=100000000     # EVB64260
options         CLOCKBASE=133000000     # EVB64260A

# Marvell options
options         MPSC_CONSOLE=0
options         GT_MPSC_DEFAULT_BAUD_RATE=9600
options         GT_MPSC_FREQUENCY="(cpu_timebase*4)"
options         GT_MPSC_CLOCK_SOURCE="BRG_BCR_CLKS_TCLK"
options         GT_MPP_WATCHDOG=0x03000000
options         GT_DEVBUS
#options        GT_ECC
options         GT_COMM
options         GT_WATCHDOG

# EV64260 options
options         OBIO0_STRIDE=0,OBIO1_STRIDE=2,OBIO2_STRIDE=2,OBIO3_STRIDE=2

# 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

# Alternate buffer queue strategies for better responsiveness under high
# disk I/O load.
#options        BUFQ_READPRIO
options         BUFQ_PRIOCSCAN

# 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
makeoptions     COPY_SYMTAB=1   # size for embedded symbol table

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

# Compatibility options
include         "conf/compat_netbsd16.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    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 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

options         NFS_BOOT_DHCP   # Support DHCP NFS root
options         NFS_BOOT_RWSIZE=1024

# 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
#options        WSDISPLAY_DEFAULTSCREENS=1

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

#
# Device configuration
#

mainbus0        at root

cpu*            at mainbus0

# Discovery system controller
#gt0    at mainbus0 addr 0x14000000     # PMON low
gt0     at mainbus0 addr 0xf8000000     # PPCBoot

# PCI busses
gtpci*  at gt? unit ?                   # 64-bit, 66MHz
pci*    at gtpci?

# 16550s off CS2
obio0   at gt0 unit 0                   # Chip Select 0
obio1   at gt0 unit 1                   # Chip Select 1
obio2   at gt0 unit 2                   # Chip Select 2
com0    at obio2 offset 0x0020 size 8 irq 85
com1    at obio2 offset 0x0000 size 8 irq 86
obio3   at gt0 unit 3                   # Chip Select 3
obio4   at gt0 unit 4                   # Boot Chip Select

# UARTs
gtmpsc* at gt? offset ?                 # Multi-Protocol Serial Controller
                                       #   with Serial Direct Memory Access

# Ethernet and PHY
gfec*   at gt? offset ?                 # Ethernet (RMMI)
gfe*    at gfec? port ? irq ?           # Ethernet port #0/#1/#2

# I2C
gttwsi* at gt? offset ? irq ?           # Two-Wire Serial Interface
iic*    at gttwsi?

# DMA
gtidmac* at gt? offset ? irq ?          # IDMA Controller

# PCI devices
pchb*   at pci? dev ? function ?        # PCI Host Bridge
ppb*    at pci? dev ? function ?        # PCI-PCI Bridges
pci*    at ppb? bus ?

#ehci*  at pci? dev ? function ?        # Enhanced Host Controller
#ohci*  at pci? dev ? function ?        # Open Host Controller
#uhci*  at pci? dev ? function ?        # Universal Host Controller (Intel)
#usb*   at ehci?
#usb*   at ohci?
#usb*   at uhci?
#uhub*  at usb?
#uhub*  at uhub? port ?
# Prolific PL2301/PL2302 host-to-host adapter
#upl*   at uhub? port ?

# Serial adapters
#uftdi* at uhub? port ?         # FTDI FT8U100AX serial adapter
#ucom*  at uftdi? portno ?

#umct*  at uhub? port ?         # MCT USB-RS232 serial adapter
#ucom*  at umct? portno ?

#uplcom*        at uhub? port ?         # I/O DATA USB-RSAQ2 serial adapter
#ucom*  at uplcom? portno ?

#uvscom*        at uhub? port ?         # SUNTAC Slipper U VS-10U serial adapter
#ucom*  at uvscom? portno ?


fxp*            at pci? dev ? function ? # Intel EtherExpress PRO 10+/100B
tlp*            at pci? dev ? function ? # Digital 'Tulip' cards
wm*             at pci? dev ? function ? # Intel GigE cards
acphy*          at mii? phy ?
inphy*          at mii? phy ?
makphy*         at mii? phy ?
nsphy*          at mii? phy ?
sqphy*          at mii? phy ?
ukphy*          at mii? phy ?

siop*           at pci? dev ? function ?
esiop*          at pci? dev ? function ?
isp*            at pci? dev ? function ?
scsibus*        at scsi?
sd*             at scsibus? target ? lun ?
cd*             at scsibus? target ? lun ?

#auvia* at pci? dev ? function ?        # VIA VT82C686A integrated AC'97 Audio
#audio* at auvia?

#spkr*  at audio?               # PC speaker (synthesized)

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

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

#pseudo-device  vnd                     # disk-like interface to files
#pseudo-device  ccd                     # concatenated/striped 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   md                      # memory disk device
pseudo-device   loop                    # network loopback
pseudo-device   bpfilter                # packet filter
pseudo-device   carp                    # Common Address Redundancy Protocol
#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   swdmover                # software dmover(9) back-end
pseudo-device   dmoverio                # /dev/dmover dmover(9) interface

include "dev/veriexec.config"