# $NetBSD: XEN,v 1.1.2.3 2004/09/23 02:40:58 jmc Exp $

include 	"arch/xen/conf/std.xen"

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		DOM0OPS

#options 	I586_CPU
options 	I686_CPU

#options 	VM86		# virtual 8086 emulation
#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 	SYSTRACE	# system call vetting via systrace(1)

options 	SYSVMSG		# System V-like message queues
options 	SYSVSEM		# System V-like semaphores
#options 	SEMMNI=10	# number of semaphore identifiers
#options 	SEMMNS=60	# number of semaphores in system
#options 	SEMUME=10	# max number of undo entries per process
#options 	SEMMNU=30	# number of undo structures in system
options 	SYSVSHM		# System V-like memory sharing
#options 	SHMMAXPGS=2048	# 2048 pages is the default
options 	P1003_1B_SEMAPHORE	# p1003.1b semaphore support

options 	LKM		# loadable kernel modules

options 	USERCONF	# userconf(4) support
options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel

# Diagnostic/debugging support options
options 	DIAGNOSTIC	# expensive kernel consistency checks
options 	DEBUG		# expensive debugging checks/support 
options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
options 	DDB		# in-kernel debugger
options		DDB_ONPANIC=1	# see also sysctl(8): `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 	COMPAT_14	# NetBSD 1.4
#options 	COMPAT_15	# NetBSD 1.5
options 	COMPAT_16	# NetBSD 1.6

##options 	COMPAT_LINUX	# binary compatibility with Linux
#options 	COMPAT_FREEBSD	# binary compatibility with FreeBSD
#options 	COMPAT_MACH	# binary compatibility with Mach binaries
#options	COMPAT_DARWIN	# binary compatibility with Darwin binaries
#options 	EXEC_MACHO	# exec MACH-O binaries
#options 	COMPAT_PECOFF	# kernel support to run Win32 apps

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 	PORTAL		# portal filesystem (still experimental)
file-system 	PROCFS		# /proc
#file-system 	UMAPFS		# NULLFS + uid and gid remapping
#file-system 	UNION		# union file system
#file-system	SMBFS		# experimental - CIFS; also needs nsmb (below)

#options 	QUOTA		# UFS quotas
#options 	SOFTDEP		# FFS soft updates support.
#options 	NFSSERVER	# Network File System server

options 	GATEWAY		# packet forwarding
options 	INET		# IP + ICMP + TCP + UDP
options 	INET6		# IPV6
options 	IPSEC		# IP security
options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
options 	MROUTING	# IP multicast routing
options 	PFIL_HOOKS	# pfil(9) packet filter hooks
options 	IPFILTER_LOG	# ipmon(8) log support

options 	NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM,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 	WSEMUL_VT100		# VT100 / VT220 emulation
options 	WS_KERNEL_FG=WSCOL_GREEN
options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
options 	WSDISPLAY_COMPAT_USL		# VT handling
options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
options 	WSDISPLAY_DEFAULTSCREENS=4
options 	PCDISPLAY_SOFTCURSOR

config		netbsd	root on ? type ?
#config		netbsd	root on wd0a type ffs
#config		netbsd	root on xennet0 type nfs

mainbus0 at root

cpu* at mainbus?

hypervisor*	at mainbus?		# Xen hypervisor

npx0		at hypervisor?		# x86 math coprocessor

xencons*	at hypervisor?		# Xen virtual console
xennet* 	at hypervisor?		# Xen virtual network interface

xbd*		at hypervisor?		# Xen virtual block device
wd*		at hypervisor?		# Xen vbd (wd identity)
sd*		at hypervisor?		# Xen vbd (sd identity)
cd*		at hypervisor?		# Xen vbd (cd identity)

xenkbc* 	at hypervisor?		# Xen Keyboard/Mouse Interface
pckbd*		at xenkbc?		# Keyboard
vga*		at hypervisor?		# Xen VGA display
pms*		at xenkbc?		# PS/2 Mouse for wsmouse

wskbd*		at pckbd? console ?
wsdisplay*	at vga? console ?
wsmouse*	at pms? mux 0


include	"arch/xen/conf/GENERIC.local"


pseudo-device	ccd		4	# concatenated/striped disk devices
#pseudo-device	cgd		4	# cryptographic disk devices
#pseudo-device	md		1	# memory disk device (ramdisk)
#pseudo-device	vnd		4	# disk-like interface to files

pseudo-device	bpfilter	8	# Berkeley packet filter
pseudo-device	ipfilter		# IP filter (firewall) and NAT
pseudo-device	loop			# network loopback
#pseudo-device	tun		2	# network tunneling over tty
#pseudo-device	gre		2	# generic L3 over IP tunnel
#pseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
#pseudo-device	vlan			# IEEE 802.1q encapsulation
#pseudo-device	bridge			# simple inter-network bridging

pseudo-device	pty			# pseudo-terminals
pseudo-device	rnd			# /dev/random and in-kernel generator
pseudo-device	clockctl		# user control of clock subsystem

pseudo-device	wsmux			# mouse & keyboard multiplexor
pseudo-device	wsfont
pseudo-device	ksyms			# /dev/ksyms
