KOBO revision 1.3
11.3Smartin#	$NetBSD: KOBO,v 1.3 2014/08/03 09:18:16 martin Exp $
21.1Shkenken#
31.1Shkenken#	KOBO -- http://kobo.com
41.1Shkenken#
51.1Shkenken
61.1Shkenkeninclude	"arch/evbarm/conf/std.kobo"
71.1Shkenken
81.1Shkenken#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
91.1Shkenken
101.1Shkenken# estimated number of users
111.1Shkenken
121.1Shkenkenmaxusers	32
131.1Shkenken
141.1Shkenken# Standard system options
151.1Shkenken
161.1Shkenkenoptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
171.1Shkenken#options 	NTP		# NTP phase/frequency locked loop
181.1Shkenken
191.1Shkenken# CPU options
201.1Shkenkenoptions 	CPU_CORTEXA8	# Support the ARM-v7a core
211.1Shkenkenoptions 	IMX50
221.1Shkenkenoptions 	IMX508
231.1Shkenkenoptions		IMX51
241.1Shkenkenoptions 	PMAPCOUNTERS
251.1Shkenken
261.1Shkenken# Architecture options
271.1Shkenken
281.1Shkenkenoptions 	MEMSTART=0x70000000
291.1Shkenkenoptions 	MEMSIZE=256
301.1Shkenkenoptions 	IMX51_IPGCLK_FREQ=50000000   # XXX This value is not correct.
311.1Shkenken
321.1Shkenken# File systems
331.1Shkenken
341.1Shkenkenfile-system	FFS		# UFS
351.1Shkenken#file-system	LFS		# log-structured file system
361.1Shkenkenfile-system	MFS		# memory file system
371.1Shkenkenfile-system	NFS		# Network file system
381.1Shkenken#file-system 	ADOSFS		# AmigaDOS-compatible file system
391.1Shkenkenfile-system 	EXT2FS		# second extended file system (linux)
401.1Shkenken#file-system	CD9660		# ISO 9660 + Rock Ridge file system
411.1Shkenkenfile-system	MSDOSFS		# MS-DOS file system
421.1Shkenkenfile-system	FDESC		# /dev/fd
431.1Shkenkenfile-system	KERNFS		# /kern
441.1Shkenkenfile-system	NULLFS		# loopback file system
451.1Shkenkenfile-system	PROCFS		# /proc
461.1Shkenken#file-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
471.1Shkenkenfile-system	TMPFS		# memory file system
481.1Shkenken#file-system	UMAPFS		# NULLFS + uid and gid remapping
491.1Shkenken#file-system	UNION		# union file system
501.1Shkenkenfile-system	PTYFS		# /dev/pts/N support
511.1Shkenken
521.1Shkenken# File system options
531.1Shkenken#options 	QUOTA		# legacy UFS quotas
541.1Shkenken#options 	QUOTA2		# new, in-filesystem UFS quotas
551.1Shkenken#options 	FFS_EI		# FFS Endian Independent support
561.1Shkenken#options 	NFSSERVER
571.1Shkenkenoptions 	WAPBL		# File system journaling support
581.1Shkenken#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
591.1Shkenken
601.1Shkenken# Networking options
611.1Shkenken
621.1Shkenken#options 	GATEWAY		# packet forwarding
631.1Shkenkenoptions 	INET		# IP + ICMP + TCP + UDP
641.1Shkenkenoptions 	INET6		# IPV6
651.1Shkenken#options 	IPSEC		# IP security
661.1Shkenken#options 	IPSEC_DEBUG	# debug for IP security
671.1Shkenken#options 	MROUTING	# IP multicast routing
681.1Shkenken#options 	PIM		# Protocol Independent Multicast
691.1Shkenken#options 	NETATALK	# AppleTalk networking
701.1Shkenken#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
711.1Shkenken#options 	PPP_DEFLATE	# Deflate compression support for PPP
721.1Shkenken#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
731.1Shkenken#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
741.1Shkenken
751.1Shkenken#options 	NFS_BOOT_BOOTP
761.1Shkenken#options 	NFS_BOOT_DHCP
771.1Shkenken#options 	NFS_BOOT_BOOTPARAM
781.1Shkenken#options	DEBUG_NFS_BOOT_DHCP
791.1Shkenken
801.1Shkenken# Compatibility options
811.1Shkenken
821.3Smartinoptions		COMPAT_NETBSD32	# allow running arm (e.g. non-earm) binaries
831.1Shkenken#options 	COMPAT_43	# 4.3BSD compatibility.
841.1Shkenkenoptions 	COMPAT_60	# NetBSD 6.0 compatibility.
851.1Shkenken#options 	COMPAT_50	# NetBSD 5.0 compatibility.
861.1Shkenken#options 	COMPAT_40	# NetBSD 4.0 compatibility.
871.1Shkenken#options 	COMPAT_30	# NetBSD 3.0 compatibility.
881.1Shkenken#options 	COMPAT_20	# NetBSD 2.0 compatibility.
891.1Shkenken#options 	COMPAT_16	# NetBSD 1.6 compatibility.
901.1Shkenken#options 	COMPAT_15	# NetBSD 1.5 compatibility.
911.1Shkenken#options 	COMPAT_14	# NetBSD 1.4 compatibility.
921.1Shkenken#options 	COMPAT_13	# NetBSD 1.3 compatibility.
931.1Shkenken#options 	COMPAT_12	# NetBSD 1.2 compatibility.
941.1Shkenken#options 	COMPAT_11	# NetBSD 1.1 compatibility.
951.1Shkenken#options 	COMPAT_10	# NetBSD 1.0 compatibility.
961.1Shkenken#options 	COMPAT_09	# NetBSD 0.9 compatibility.
971.1Shkenken#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
981.1Shkenken
991.1Shkenkenoptions 	COMPAT_OSSAUDIO	# OSS (Voxware) audio driver compatibility
1001.1Shkenken#options 	COMPAT_LINUX	# binary compatibility with Linux
1011.1Shkenkenoptions		COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
1021.1Shkenken
1031.1Shkenken# Shared memory options
1041.1Shkenken
1051.1Shkenkenoptions 	SYSVMSG		# System V-like message queues
1061.1Shkenkenoptions 	SYSVSEM		# System V-like semaphores
1071.1Shkenken#options 	SEMMNI=10	# number of semaphore identifiers
1081.1Shkenken#options 	SEMMNS=60	# number of semaphores in system
1091.1Shkenken#options 	SEMUME=10	# max number of undo entries per process
1101.1Shkenken#options 	SEMMNU=30	# number of undo structures in system
1111.1Shkenkenoptions 	SYSVSHM		# System V-like memory sharing
1121.1Shkenken
1131.1Shkenken# Device options
1141.1Shkenken
1151.1Shkenken# Console options.    also need IMXUARTCONSOLE
1161.1Shkenkenoptions 	CONSDEVNAME="\"imxuart\"",CONADDR=0x53fc0000
1171.1Shkenkenoptions 	CONSPEED=115200	# Console speed
1181.1Shkenken
1191.1Shkenken# kgdb
1201.1Shkenken#options	KGDB
1211.1Shkenken#options 	KGDB_DEVNAME="\"imxuart\""
1221.1Shkenken#options 	KGDB_DEVADDR=0x73fbc000
1231.1Shkenken#options 	KGDB_DEVRATE=115200
1241.1Shkenken
1251.1Shkenken# Miscellaneous kernel options
1261.1Shkenkenoptions 	KTRACE		# system call tracing, a la ktrace(1)
1271.1Shkenkenoptions 	IRQSTATS	# manage IRQ statistics
1281.1Shkenken#options 	KMEMSTATS	# kernel memory statistics
1291.1Shkenkenoptions 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
1301.1Shkenkenoptions 	USBVERBOSE	# verbose USB device autoconfig messages
1311.1Shkenken#options 	SCSIVERBOSE	# Verbose SCSI errors
1321.1Shkenkenoptions 	MIIVERBOSE	# Verbose MII autoconfuration messages
1331.1Shkenken#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
1341.1Shkenken#options 	DDB_KEYCODE=0x40
1351.1Shkenkenoptions 	USERCONF	# userconf(4) support
1361.1Shkenken#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
1371.1Shkenken#options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
1381.1Shkenkenoptions 	NO_POWERSAVE	# uncomment this to run under ICE
1391.1Shkenken
1401.1Shkenken# Development and Debugging options
1411.1Shkenken#options 	PERFCTRS	# performance counters
1421.2Sdholland#options 	DIAGNOSTIC	# internal consistency checks
1431.1Shkenken#options 	DEBUG
1441.1Shkenken#options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
1451.1Shkenkenoptions 	DDB		# in-kernel debugger
1461.1Shkenkenoptions 	DDB_ONPANIC=1	# see also sysctl(8): `ddb.onpanic'
1471.1Shkenkenoptions 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
1481.1Shkenkenoptions 	DDB_VERBOSE_HELP
1491.1Shkenken#options 	LOCKDEBUG
1501.1Shkenken#ptions 	PMAP_DEBUG	# Enable pmap_debug_level code
1511.1Shkenken#options 	IPKDB		# remote kernel debugging
1521.1Shkenkenoptions 	VERBOSE_INIT_ARM # verbose bootstraping messages
1531.1Shkenkenmakeoptions	DEBUG="-g"	# compile full symbol table
1541.1Shkenken#makeoptions	COPTS="-O2"
1551.1Shkenken#options 	SYSCALL_STATS	# per syscall counts
1561.1Shkenken#options 	SYSCALL_TIMES 	# per syscall times
1571.1Shkenken#options 	SYSCALL_TIMES_HASCOUNTER	# use 'broken' rdtsc (soekris)
1581.1Shkenken#options 	SCSIPI_DEBUG
1591.1Shkenken#options	SCSIPI_DEBUG_TYPE=SCSIPI_BUSTYPE_SCSI
1601.1Shkenken#options	SCSIPI_DEBUG_TARGET=0
1611.1Shkenken#options	SCSIPI_DEBUG_LUN=0
1621.1Shkenken#options	DEBUG_STARTUP
1631.1Shkenken
1641.1Shkenken## USB Debugging options
1651.1Shkenken#options	USB_DEBUG
1661.1Shkenken#options	EHCI_DEBUG
1671.1Shkenken#options	OHCI_DEBUG
1681.1Shkenken#options	UHUB_DEBUG
1691.1Shkenken
1701.1Shkenken# Valid options for BOOT_ARGS:
1711.1Shkenken#  single		Boot to single user only
1721.1Shkenken#  kndb			Give control to kernel debugger
1731.1Shkenken#  ask			Ask for file name to reboot from
1741.1Shkenken#  pmapdebug=<n>	If PMAP_DEBUG, set pmap_debug_level to <n>
1751.1Shkenken#  memorydisk=<n>	Set memorydisk size to <n> KB
1761.1Shkenken#  quiet		Show aprint_naive output
1771.1Shkenken#  verbose		Show aprint_normal and aprint_verbose output
1781.1Shkenkenoptions		BOOT_ARGS="\"verbose\""
1791.1Shkenken
1801.1Shkenken# Kernel root file system and dump configuration.
1811.1Shkenkenconfig		netbsd		root on ? type ?
1821.1Shkenkenconfig		netbsd-ld0	root on ld0 type ffs
1831.1Shkenken
1841.1Shkenken# The main bus device
1851.1Shkenkenmainbus0	at root
1861.1Shkenken
1871.1Shkenken# The boot cpu
1881.1Shkenkencpu*		at mainbus?
1891.1Shkenken
1901.1Shkenken# Devices
1911.1Shkenken# On-chip
1921.1Shkenken# On-chip bus
1931.1Shkenkenaxi0		at mainbus?
1941.1Shkenken
1951.1Shkenken# Interrupt Cotroller
1961.1Shkenkentzic0		at axi? addr 0x0fffc000 size 0x4000 irqbase 0
1971.1Shkenken
1981.1Shkenken# Serial
1991.1Shkenken#imxuart0	at axi? addr 0x53fbc000 irq 31		# UART1
2001.1Shkenkenimxuart1	at axi? addr 0x53fc0000 irq 32
2011.1Shkenken#imxuart2	at axi? addr 0x5000c000 irq 33
2021.1Shkenkenoptions		IMXUARTCONSOLE
2031.1Shkenken
2041.1Shkenken# Clock Control
2051.1Shkenkenimxccm0		at axi? addr 0x53fd4000
2061.1Shkenkenoptions		IMX51_CKIL_FREQ=32768
2071.1Shkenken
2081.1Shkenken# Enhanced Periodic Interrupt Timer
2091.1Shkenkenimxclock0	at axi? addr 0x53fac000 size 0x4000 irq 40
2101.1Shkenken
2111.1Shkenken# IOMUX
2121.1Shkenkenimxiomux0	at axi? addr 0x53fa8000
2131.1Shkenken
2141.1Shkenken# WatchDog
2151.1Shkenkenimxwdog0	at axi? addr 0x53f98000 irq 58 flags 0
2161.1Shkenken
2171.1Shkenken# GPIO
2181.1Shkenkenimxgpio0	at axi? addr 0x53f84000 irqbase 128 irq 50
2191.1Shkenkenimxgpio1	at axi? addr 0x53f88000 irqbase 160 irq 52
2201.1Shkenkenimxgpio2	at axi? addr 0x53f8c000 irqbase 192 irq 54
2211.1Shkenkenimxgpio3	at axi? addr 0x53f90000 irqbase 224 irq 56
2221.1Shkenkenimxgpio4	at axi? addr 0x53fdc000 irqbase 256 irq 103
2231.1Shkenkenimxgpio5	at axi? addr 0x53fe0000 irqbase 288 irq 105
2241.1Shkenken
2251.1Shkenken# EPDC E-Ink Controller
2261.1Shkenken#epdc0		at axi? addr 0x41010000 size 0x2000 irq 27
2271.1Shkenken#wsdisplay0	at wsemuldisplaydev? console ?
2281.1Shkenken#wsdisplay*	at wsemuldisplaydev?
2291.1Shkenken#options		EPDC_DEBUG=10
2301.1Shkenken#options		EINK_DEBUG
2311.1Shkenken#options		IMXEPDCCONSOLE
2321.1Shkenken
2331.1Shkenken# I2C
2341.1Shkenkenimxi2c0		at axi? addr 0x63fc8000 irq 62
2351.1Shkenkenimxi2c1		at axi? addr 0x63fc4000 irq 63
2361.1Shkenken#imxi2c2	at axi? addr 0x53fec000 irq 64
2371.1Shkenken
2381.1Shkenken# IIC
2391.1Shkenkeniic*		at imxi2c?
2401.1Shkenken
2411.1Shkenkenlmtemp*		at iic1 addr 0x48		# LM75 temperature sensor
2421.1Shkenken
2431.1Shkenken# SD/MMC
2441.1Shkenkensdhc0		at axi? addr 0x50004000 irq 1	# eSDHC1
2451.1Shkenkensdhc1		at axi? addr 0x50008000 irq 2	# eSDHC2
2461.1Shkenkensdhc2		at axi? addr 0x50020000 irq 3	# eSDHC3
2471.1Shkenken#sdhc3		at axi? addr 0x50024000 irq 4	# eSDHC4
2481.1Shkenkensdmmc*		at sdhc?
2491.1Shkenkenld*		at sdmmc?		# MMC/SD card
2501.1Shkenken#options 	SDHC_DEBUG
2511.1Shkenken#options 	SDMMC_DEBUG
2521.1Shkenken
2531.1Shkenken# USB
2541.1Shkenkenimxusbc0	at axi? addr 0x53f80000
2551.1Shkenkenehci0		at imxusbc0	unit 0	irq 18 # OTG
2561.1Shkenken#ehci1		at imxusbc0	unit 1	irq 14 # Host1
2571.1Shkenken
2581.1Shkenkenusb*		at ehci?
2591.1Shkenken
2601.1Shkenken# USB device drivers, just as soon as we have something to attach them to
2611.1Shkenkeninclude "dev/usb/usbdevices.config"
2621.1Shkenken
2631.1Shkenkenukphy*		at mii? phy ?
2641.1Shkenken
2651.1Shkenken# Pseudo-Devices
2661.1Shkenken
2671.1Shkenkenpseudo-device	crypto			# /dev/crypto device
2681.1Shkenkenpseudo-device	swcrypto		# software crypto implementation
2691.1Shkenken
2701.1Shkenken# disk/mass storage pseudo-devices
2711.1Shkenken#pseudo-device	md			# memory disk device (ramdisk)
2721.1Shkenken#pseudo-device	vnd			# disk-like interface to files
2731.1Shkenken
2741.1Shkenken# network pseudo-devices
2751.1Shkenkenpseudo-device	bpfilter		# Berkeley packet filter
2761.1Shkenken#pseudo-device	ipfilter		# IP filter (firewall) and NAT
2771.1Shkenkenpseudo-device	loop			# network loopback
2781.1Shkenkenpseudo-device	ppp			# Point-to-Point Protocol
2791.1Shkenken
2801.1Shkenken# miscellaneous pseudo-devices
2811.1Shkenkenpseudo-device	pty			# pseudo-terminals
2821.1Shkenkenpseudo-device	ksyms			# /dev/ksyms
2831.1Shkenkenpseudo-device	clockctl		# NTP clockctl
2841.1Shkenken
2851.1Shkenken# wscons pseudo-devices
2861.1Shkenkenpseudo-device	wsmux			# mouse & keyboard multiplexor
2871.1Shkenkenpseudo-device	wsfont
2881.1Shkenken
2891.1Shkenken# local configuration
2901.1Shkenkencinclude "arch/evbarm/conf/KOBO.local"
291