#	$NetBSD: KOBO,v 1.3 2014/08/03 09:18:16 martin Exp $
#
#	KOBO -- http://kobo.com
#

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

#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary

# 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_CORTEXA8	# Support the ARM-v7a core
options 	IMX50
options 	IMX508
options		IMX51
options 	PMAPCOUNTERS

# Architecture options

options 	MEMSTART=0x70000000
options 	MEMSIZE=256
options 	IMX51_IPGCLK_FREQ=50000000   # XXX This value is not correct.

# 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	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
file-system	TMPFS		# 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 	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_DEBUG	# debug for IP security
#options 	MROUTING	# IP multicast routing
#options 	PIM		# Protocol Independent Multicast
#options 	NETATALK	# AppleTalk networking
#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_BOOTPARAM
#options	DEBUG_NFS_BOOT_DHCP

# Compatibility options

options		COMPAT_NETBSD32	# allow running arm (e.g. non-earm) binaries
#options 	COMPAT_43	# 4.3BSD compatibility.
options 	COMPAT_60	# NetBSD 6.0 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_OSSAUDIO	# OSS (Voxware) audio driver compatibility
#options 	COMPAT_LINUX	# binary compatibility with Linux
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

# Console options.    also need IMXUARTCONSOLE
options 	CONSDEVNAME="\"imxuart\"",CONADDR=0x53fc0000
options 	CONSPEED=115200	# Console speed

# kgdb
#options	KGDB
#options 	KGDB_DEVNAME="\"imxuart\""
#options 	KGDB_DEVADDR=0x73fbc000
#options 	KGDB_DEVRATE=115200

# Miscellaneous kernel options
options 	KTRACE		# system call tracing, a la ktrace(1)
options 	IRQSTATS	# manage IRQ statistics
#options 	KMEMSTATS	# kernel memory statistics
options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
options 	USBVERBOSE	# verbose USB device autoconfig messages
#options 	SCSIVERBOSE	# Verbose SCSI errors
options 	MIIVERBOSE	# Verbose MII autoconfuration messages
#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
#options 	DDB_KEYCODE=0x40
options 	USERCONF	# userconf(4) support
#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
#options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
options 	NO_POWERSAVE	# uncomment this to run under ICE

# Development and Debugging options
#options 	PERFCTRS	# performance counters
#options 	DIAGNOSTIC	# internal consistency checks
#options 	DEBUG
#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=100	# Enable history editing in DDB
options 	DDB_VERBOSE_HELP
#options 	LOCKDEBUG
#ptions 	PMAP_DEBUG	# Enable pmap_debug_level code
#options 	IPKDB		# remote kernel debugging
options 	VERBOSE_INIT_ARM # verbose bootstraping messages
makeoptions	DEBUG="-g"	# compile full symbol table
#makeoptions	COPTS="-O2"
#options 	SYSCALL_STATS	# per syscall counts
#options 	SYSCALL_TIMES 	# per syscall times
#options 	SYSCALL_TIMES_HASCOUNTER	# use 'broken' rdtsc (soekris)
#options 	SCSIPI_DEBUG
#options	SCSIPI_DEBUG_TYPE=SCSIPI_BUSTYPE_SCSI
#options	SCSIPI_DEBUG_TARGET=0
#options	SCSIPI_DEBUG_LUN=0
#options	DEBUG_STARTUP

## 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
#  kndb			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="\"verbose\""

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

# The main bus device
mainbus0	at root

# The boot cpu
cpu*		at mainbus?

# Devices
# On-chip
# On-chip bus
axi0		at mainbus?

# Interrupt Cotroller
tzic0		at axi? addr 0x0fffc000 size 0x4000 irqbase 0

# Serial
#imxuart0	at axi? addr 0x53fbc000 irq 31		# UART1
imxuart1	at axi? addr 0x53fc0000 irq 32
#imxuart2	at axi? addr 0x5000c000 irq 33
options		IMXUARTCONSOLE

# Clock Control
imxccm0		at axi? addr 0x53fd4000
options		IMX51_CKIL_FREQ=32768

# Enhanced Periodic Interrupt Timer
imxclock0	at axi? addr 0x53fac000 size 0x4000 irq 40

# IOMUX
imxiomux0	at axi? addr 0x53fa8000

# WatchDog
imxwdog0	at axi? addr 0x53f98000 irq 58 flags 0

# GPIO
imxgpio0	at axi? addr 0x53f84000 irqbase 128 irq 50
imxgpio1	at axi? addr 0x53f88000 irqbase 160 irq 52
imxgpio2	at axi? addr 0x53f8c000 irqbase 192 irq 54
imxgpio3	at axi? addr 0x53f90000 irqbase 224 irq 56
imxgpio4	at axi? addr 0x53fdc000 irqbase 256 irq 103
imxgpio5	at axi? addr 0x53fe0000 irqbase 288 irq 105

# EPDC E-Ink Controller
#epdc0		at axi? addr 0x41010000 size 0x2000 irq 27
#wsdisplay0	at wsemuldisplaydev? console ?
#wsdisplay*	at wsemuldisplaydev?
#options		EPDC_DEBUG=10
#options		EINK_DEBUG
#options		IMXEPDCCONSOLE

# I2C
imxi2c0		at axi? addr 0x63fc8000 irq 62
imxi2c1		at axi? addr 0x63fc4000 irq 63
#imxi2c2	at axi? addr 0x53fec000 irq 64

# IIC
iic*		at imxi2c?

lmtemp*		at iic1 addr 0x48		# LM75 temperature sensor

# SD/MMC
sdhc0		at axi? addr 0x50004000 irq 1	# eSDHC1
sdhc1		at axi? addr 0x50008000 irq 2	# eSDHC2
sdhc2		at axi? addr 0x50020000 irq 3	# eSDHC3
#sdhc3		at axi? addr 0x50024000 irq 4	# eSDHC4
sdmmc*		at sdhc?
ld*		at sdmmc?		# MMC/SD card
#options 	SDHC_DEBUG
#options 	SDMMC_DEBUG

# USB
imxusbc0	at axi? addr 0x53f80000
ehci0		at imxusbc0	unit 0	irq 18 # OTG
#ehci1		at imxusbc0	unit 1	irq 14 # Host1

usb*		at ehci?

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

ukphy*		at mii? phy ?

# Pseudo-Devices

pseudo-device	crypto			# /dev/crypto device
pseudo-device	swcrypto		# software crypto implementation

# disk/mass storage pseudo-devices
#pseudo-device	md			# memory disk device (ramdisk)
#pseudo-device	vnd			# disk-like interface to files

# network pseudo-devices
pseudo-device	bpfilter		# Berkeley packet filter
#pseudo-device	ipfilter		# IP filter (firewall) and NAT
pseudo-device	loop			# network loopback
pseudo-device	ppp			# Point-to-Point Protocol

# miscellaneous pseudo-devices
pseudo-device	pty			# pseudo-terminals
pseudo-device	ksyms			# /dev/ksyms
pseudo-device	clockctl		# NTP clockctl

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

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