#
#	$NetBSD: RPI,v 1.1.2.3 2013/02/13 01:36:14 riz Exp $
#
#	RPi -- Raspberry Pi
#

include	"arch/evbarm/conf/std.rpi"

# estimated number of users

maxusers	32

# Standard system options

options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
#options 	NTP		# NTP phase/frequency locked loop

# CPU options

options 	CPU_ARM1176
options 	BCM2835
options 	PMAPCOUNTERS
options 	FPU_VFP

# Architecture options

# File systems

file-system	FFS		# UFS
#file-system	LFS		# log-structured file system
file-system	MFS		# memory file system
file-system	NFS		# Network file system
#file-system 	ADOSFS		# AmigaDOS-compatible file system
file-system 	EXT2FS		# second extended file system (linux)
#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	PROCFS		# /proc
#file-system	UMAPFS		# NULLFS + uid and gid remapping
#file-system	UNION		# union file system
file-system	TMPFS		# memory file system
file-system	PTYFS		# /dev/pts/N support

# File system options
options 	QUOTA		# legacy UFS quotas
options 	QUOTA2		# new, in-filesystem UFS quotas
#options 	FFS_EI		# FFS Endian Independent support
#options 	NFSSERVER
options 	WAPBL		# File system journaling support
#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support

# Networking options

#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 	IPSEC_NAT_T	# IPsec NAT traversal (NAT-T)
#options 	IPSEC_DEBUG	# debug for IP security
#options 	MROUTING	# IP multicast routing
#options 	PIM		# Protocol Independent Multicast
#options 	NS		# XNS
#options 	NSIP		# XNS tunneling over IP
#options 	ISO,TPIP	# OSI
#options 	EON		# OSI tunneling over IP
#options 	CCITT,LLC,HDLC	# X.25
#options 	NETATALK	# AppleTalk networking
#options 	PFIL_HOOKS	# pfil(9) packet filter hooks
#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

#options 	NFS_BOOT_BOOTP
#options 	NFS_BOOT_DHCP
#options		NFS_BOOT_BOOTSTATIC
#options		NFS_BOOTSTATIC_MYIP="\"192.168.1.4\""
#options		NFS_BOOTSTATIC_GWIP="\"192.168.1.1\""
#options		NFS_BOOTSTATIC_MASK="\"255.255.255.0\""
#options		NFS_BOOTSTATIC_SERVADDR="\"192.168.1.1\""
#options		NFS_BOOTSTATIC_SERVER="\"192.168.1.1:/nfs/sdp2430\""

options		NFS_BOOT_RWSIZE=1024

# Compatibility options

#options 	COMPAT_43	# 4.3BSD compatibility.
#options 	COMPAT_50	# NetBSD 5.0 compatibility.
#options 	COMPAT_40	# NetBSD 4.0 compatibility.
#options 	COMPAT_30	# NetBSD 3.0 compatibility.
#options 	COMPAT_20	# NetBSD 2.0 compatibility.
#options 	COMPAT_16	# NetBSD 1.6 compatibility.
#options 	COMPAT_15	# NetBSD 1.5 compatibility.
#options 	COMPAT_14	# NetBSD 1.4 compatibility.
#options 	COMPAT_13	# NetBSD 1.3 compatibility.
#options 	COMPAT_12	# NetBSD 1.2 compatibility.
#options 	COMPAT_11	# NetBSD 1.1 compatibility.
#options 	COMPAT_10	# NetBSD 1.0 compatibility.
#options 	COMPAT_09	# NetBSD 0.9 compatibility.
#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
#options		COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.

# Shared memory options

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

# Device options

#options 	MEMORY_DISK_HOOKS	# boottime setup of ramdisk
#options 	MEMORY_DISK_ROOT_SIZE=8192	# Size in blocks
#options 	MEMORY_DISK_DYNAMIC
#options 	MINIROOTSIZE=1000	# Size in blocks
#options 	MEMORY_DISK_IS_ROOT	# use memory disk as root

# Miscellaneous kernel options
options 	KTRACE		# system call tracing, a la ktrace(1)
#options 	KMEMSTATS	# kernel memory statistics
#options 	SCSIVERBOSE	# Verbose SCSI errors
#options 	MIIVERBOSE	# Verbose MII autoconfuration messages
#options 	DDB_KEYCODE=0x40
#options 	USERCONF	# userconf(4) support
#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)

# Development and Debugging options
#options 	PERFCTRS	# performance counters
options 	DIAGNOSTIC	# internally consistency checks
options 	DEBUG
#options 	IPKDB		# remote kernel debugging
#options 	VERBOSE_INIT_ARM # verbose bootstraping messages
options 	DDB		# in-kernel debugger
options		DDB_ONPANIC=1
options 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
#options 	KGDB
makeoptions	DEBUG="-g"	# compile full symbol table
options 	SYMTAB_SPACE=750000
options 	PLCONSOLE
#options 	PLCONSOLE,PLCOMCNUNIT=0,PLCONSPEED=115200,PLCONMODE=0xB00

## USB Debugging options
options USB_DEBUG
#options EHCI_DEBUG
#options OHCI_DEBUG
#options UHUB_DEBUG


# Valid options for BOOT_ARGS:
#  single		Boot to single user only
#  kdb			Give control to kernel debugger
#  ask			Ask for file name to reboot from
#  pmapdebug=<n>	If PMAP_DEBUG, set pmap_debug_level to <n>
#  memorydisk=<n>	Set memorydisk size to <n> KB
#  quiet		Show aprint_naive output
#  verbose		Show aprint_normal and aprint_verbose output
#options		BOOT_ARGS="\"\""

config		netbsd		root on ? type ?

# The main bus device
mainbus0	at root

# The cpu
cpu0		at mainbus?

# OBIO
obio0		at mainbus?

# Interrupt Controller
bcmicu0		at obio?

# VC Mailbox
bcmmbox0	at obio?
vcmbox0 	at bcmmbox0

# PL011 uart
plcom0		at obio?

# Framebuffer console
genfb0		at obio?
wsdisplay*	at genfb?

# System timer
bcmtmr0		at obio?

# Power management, Reset controller and Watchdog registers
bcmpm0		at obio?

# Random number generator
bcmrng0 	at obio?

# Arasan SD/MMC Interface
sdhc* at obio?
sdmmc*  at sdhc?

ld*     at sdmmc?

# On-board USB
dotg*          at obio?
usb*           at dotg?

# USB device drivers, just as soon as we have something to attach them to
include "dev/usb/usbdevices.config"

ukphy*		at mii? phy ?

# Broadcom Serial Control (I2C)
bsciic* at obio?
iic* at i2cbus?

# SPI controller
bcmspi* at obio?
spi* at spibus?

# various options for wscons - we try to look as much like a standard
# sun console as possible
options 	WSEMUL_VT100		# sun terminal emulation
options 	WS_DEFAULT_FG=WSCOL_WHITE
options 	WS_DEFAULT_BG=WSCOL_BLACK
options 	WS_KERNEL_FG=WSCOL_GREEN
options 	WS_KERNEL_BG=WSCOL_BLACK
options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
options 	WSDISPLAY_DEFAULTSCREENS=4
#options 	FONT_QVSS8x15
#options 	FONT_GALLANT12x22	# the console font

# Pseudo-Devices

# disk/mass storage pseudo-devices
#pseudo-device	fss			# file system snapshot device

pseudo-device	md			# memory disk device (ramdisk)
pseudo-device	vnd			# disk-like interface to files
#pseudo-device	putter			# for puffs and pud

# network pseudo-devices
pseudo-device	bpfilter		# Berkeley packet filter
#pseudo-device	carp			# Common Address Redundancy Protocol
#pseudo-device	ipfilter		# IP filter (firewall) and NAT
pseudo-device	loop			# network loopback
#pseudo-device	kttcp			# network loopback
#pseudo-device	ppp			# Point-to-Point Protocol
#pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
#options 	PPPOE_SERVER		# Enable PPPoE server via link0
#pseudo-device	sl			# Serial Line IP
#pseudo-device	strip			# Starmode Radio IP (Metricom)
#pseudo-device	irframetty		# IrDA frame line discipline
#pseudo-device	tap			# virtual Ethernet
#pseudo-device	tun			# network tunneling over tty
#pseudo-device	gre			# generic L3 over IP tunnel
#pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC 1933)
#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
#options	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
#pseudo-device	agr			# IEEE 802.3ad link aggregation
#pseudo-device	pf			# PF packet filter
#pseudo-device	pflog			# PF log if

# miscellaneous pseudo-devices
pseudo-device	pty			# pseudo-terminals
#options	RND_COM
#pseudo-device	clockctl		# user control of clock subsystem
pseudo-device	ksyms			# /dev/ksyms
#pseudo-device	lockstat		# lock profiling

# wscons pseudo-devices
pseudo-device	wsmux			# mouse & keyboard multiplexor
pseudo-device	wsfont

# data mover pseudo-devices
#pseudo-device	swdmover		# software dmover(9) back-end
#pseudo-device	dmoverio		# /dev/dmover dmover(9) interface

# local configuration
cinclude "arch/evbarm/conf/RPI.local"
