# $NetBSD: XEN3PAE_PVHVM,v 1.1 2019/02/14 08:18:25 cherry Exp $
include "arch/xen/conf/std.xen"
options XENPVHVM # PVHVM domU support
#options MULTIPROCESSOR # Not yet.
options INCLUDE_CONFIG_FILE # embed config file in kernel binary
#options UVMHIST
#options UVMHIST_PRINT
#options SYSCALL_DEBUG
maxusers 32 # estimated number of users
#
options XEN
options PAE
makeoptions CPUFLAGS="-march=i686"
#options USER_LDT # user-settable LDT; used by WINE
#options MTRR # memory-type range register syscall support
#options CONSDEVNAME="\"xencons\""
#options CONS_OVERRIDE
options INSECURE # disable kernel security levels - X needs this
options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
options NTP # NTP phase/frequency locked loop
options KTRACE # system call tracing via ktrace(1)
options SYSVMSG # System V-like message queues
options SYSVSEM # System V-like semaphores
options SYSVSHM # System V-like memory sharing
options MODULAR # new style module(7) framework
options USERCONF # userconf(4) support
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 # inexpensive kernel consistency checks
#options DEBUG # expensive debugging checks/support
options DDB # in-kernel debugger
options DDB_ONPANIC=1 # see also sysctl(7): `ddb.onpanic'
options DDB_HISTORY_SIZE=512 # enable history editing in DDB
#options KGDB # remote debugger
#options KGDB_DEVNAME="\"com\"",KGDB_DEVADDR=0x2f8,KGDB_DEVRATE=57600
#makeoptions DEBUG="-g" # compile full symbol table
options DDB_COMMANDONENTER="trace;show registers"
# Compatibility options
include "conf/compat_netbsd09.config"
options COMPAT_NOMID # NetBSD 0.8, 386BSD, and BSDI
options COMPAT_LINUX # binary compatibility with Linux
# Wedge support
options DKWEDGE_AUTODISCOVER # Automatically add dk(4) instances
options DKWEDGE_METHOD_GPT # Supports GPT partitions as wedges
#options DKWEDGE_METHOD_BSDLABEL # Support disklabel entries as wedges
#options DKWEDGE_METHOD_MBR # Support MBR partitions as wedges
options DKWEDGE_METHOD_APPLE # Support Apple partitions as wedges
#options DKWEDGE_METHOD_RDB # Support RDB partitions as wedges
# 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 NTFS # Windows/NT file system (experimental)
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 options
options QUOTA # legacy UFS quotas
options QUOTA2 # new, in-filesystem UFS quotas
#options DISKLABEL_EI # disklabel Endian Independent support
#options FFS_EI # FFS Endian Independent support
options WAPBL # File system journaling support
#options UFS_DIRHASH # UFS Large Directory Hashing - Experimental
options NFSSERVER # Network File System server
#options FFS_NO_SNAPSHOT # No FFS snapshot support
options UFS_EXTATTR # Extended attribute support for UFS1
#options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
# immutable) behave as system flags.
#options V7FS_EI # V7FS Endian Independent support
# Networking options
#options GATEWAY # packet forwarding
options INET # IP + ICMP + TCP + UDP
options INET6 # IPv6
options NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM
#options NFS_BOOT_BOOTSTATIC
#options NFS_BOOTSTATIC_MYIP="\"169.254.1.2\""
#options NFS_BOOTSTATIC_GWIP="\"169.254.1.1\""
#options NFS_BOOTSTATIC_MASK="\"255.255.255.0\""
#options NFS_BOOTSTATIC_SERVADDR="\"169.254.1.1\""
#options NFS_BOOTSTATIC_SERVER="\"server:/path/to/root\""
options MAXPHYS=32768 #xbd doesn't handle 64k transfers
config netbsd root on ? type ?
#config netbsd root on wd0a type ffs
#config netbsd root on xbd0a type ffs
#config netbsd root on xennet0 type nfs
mainbus0 at root
# Native pathways.
cpu* at mainbus?
hypervisor* at mainbus? # Xen hypervisor
#vcpu* at hypervisor? # Xen virtual CPUs
xenbus* at hypervisor? # Xen virtual bus
xencons* at hypervisor? # Xen virtual console
#xennet* at xenbus? # Xen virtual network interface
xbd* at xenbus? # Xen virtual block device
#balloon* at xenbus? # Xen balloon device
# PCI pass-through support:
#xpci* at xenbus ? #Xen3 PCI front end driver
#pci* at xpci ?
# you then need to add your PCI devices drivers below.
cinclude "arch/i386/conf/GENERIC.local"
cinclude "arch/i386/conf/XEN3_DOMU.local"
# ISA bus support
isa0 at mainbus?
# Serial Devices
# ISA serial interfaces
#options COM_HAYESP # adds Hayes ESP serial board support
# If a com port is used as Xen console it can't be used by the domain0 kernel
# and there's no easy way to detect this yet. Leave com0 out as it's the
# port usually used for serial console
com0 at isa? port 0x3f8 irq 4 # Standard PC serial ports
com1 at isa? port 0x2f8 irq 3
#com2 at isa? port 0x3e8 irq 5
#com3 at isa? port 0x2e8 irq 9
# ATA (IDE) bus support
# ISA ST506, ESDI, and IDE controllers
# Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
# fall back to 16bits I/O if 32bits I/O are not functional).
# Some controllers pass the initial 32bit test, but will fail later.
#wdc0 at isa? port 0x1f0 irq 14 flags 0x00
#wdc1 at isa? port 0x170 irq 15 flags 0x00
# ATA (IDE) bus support
#atabus* at ata?
#wd* at atabus? drive ? flags 0x0000
# Pseudo-Devices
pseudo-device pty # pseudo-terminals
# network pseudo-devices
pseudo-device bpfilter # Berkeley packet filter
pseudo-device loop # network loopback
# userland interface to drivers, including autoconf and properties retrieval
pseudo-device drvctl
options PAX_MPROTECT=0 # PaX mprotect(2) restrictions
options PAX_ASLR=0 # PaX Address Space Layout Randomization