NETWALKER revision 1.29
11.29Smartin#	$NetBSD: NETWALKER,v 1.29 2014/08/03 09:18:16 martin Exp $
21.1Sbsh#
31.9Sbsh#	NETWALKER -- http://www.sharp.co.jp/netwalker/
41.1Sbsh#
51.1Sbsh
61.1Sbshinclude	"arch/evbarm/conf/std.netwalker"
71.1Sbsh
81.1Sbsh#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
91.1Sbsh
101.1Sbsh# estimated number of users
111.1Sbsh
121.1Sbshmaxusers	32
131.1Sbsh
141.1Sbsh# Standard system options
151.1Sbsh
161.1Sbshoptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
171.1Sbsh#options 	NTP		# NTP phase/frequency locked loop
181.1Sbsh
191.1Sbsh# CPU options
201.9Sbshoptions 	CPU_CORTEXA8	# Support the ARM-v7a core
211.1Sbshoptions 	IMX51
221.1Sbshoptions 	PMAPCOUNTERS
231.1Sbsh
241.1Sbsh# Architecture options
251.1Sbsh
261.1Sbsh# File systems
271.1Sbsh
281.1Sbshfile-system	FFS		# UFS
291.1Sbsh#file-system	LFS		# log-structured file system
301.1Sbshfile-system	MFS		# memory file system
311.1Sbshfile-system	NFS		# Network file system
321.1Sbsh#file-system 	ADOSFS		# AmigaDOS-compatible file system
331.1Sbshfile-system 	EXT2FS		# second extended file system (linux)
341.1Sbsh#file-system	CD9660		# ISO 9660 + Rock Ridge file system
351.1Sbshfile-system	MSDOSFS		# MS-DOS file system
361.1Sbshfile-system	FDESC		# /dev/fd
371.1Sbshfile-system	KERNFS		# /kern
381.1Sbshfile-system	NULLFS		# loopback file system
391.1Sbshfile-system	PROCFS		# /proc
401.16Smsaitoh#file-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
411.1Sbshfile-system	TMPFS		# memory file system
421.1Sbsh#file-system	UMAPFS		# NULLFS + uid and gid remapping
431.1Sbsh#file-system	UNION		# union file system
441.1Sbshfile-system	PTYFS		# /dev/pts/N support
451.1Sbsh
461.1Sbsh# File system options
471.4Sbouyer#options 	QUOTA		# legacy UFS quotas
481.4Sbouyer#options 	QUOTA2		# new, in-filesystem UFS quotas
491.5Swiz#options 	FFS_EI		# FFS Endian Independent support
501.1Sbsh#options 	NFSSERVER
511.7Sdhollandoptions 	WAPBL		# File system journaling support
521.1Sbsh#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
531.1Sbsh
541.1Sbsh# Networking options
551.1Sbsh
561.1Sbsh#options 	GATEWAY		# packet forwarding
571.1Sbshoptions 	INET		# IP + ICMP + TCP + UDP
581.1Sbshoptions 	INET6		# IPV6
591.1Sbsh#options 	IPSEC		# IP security
601.1Sbsh#options 	IPSEC_DEBUG	# debug for IP security
611.1Sbsh#options 	MROUTING	# IP multicast routing
621.1Sbsh#options 	PIM		# Protocol Independent Multicast
631.1Sbsh#options 	NETATALK	# AppleTalk networking
641.1Sbsh#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
651.1Sbsh#options 	PPP_DEFLATE	# Deflate compression support for PPP
661.1Sbsh#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
671.1Sbsh#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
681.1Sbsh
691.1Sbsh#options 	NFS_BOOT_BOOTP
701.1Sbsh#options 	NFS_BOOT_DHCP
711.1Sbsh#options 	NFS_BOOT_BOOTPARAM
721.1Sbsh#options	DEBUG_NFS_BOOT_DHCP
731.1Sbsh
741.1Sbsh# Compatibility options
751.1Sbsh
761.29Smartinoptions		COMPAT_NETBSD32	# allow running arm (e.g. non-earm) binaries
771.1Sbsh#options 	COMPAT_43	# 4.3BSD compatibility.
781.17Sapboptions 	COMPAT_60	# NetBSD 6.0 compatibility.
791.23Shkenken#options 	COMPAT_50	# NetBSD 5.0 compatibility.
801.23Shkenken#options 	COMPAT_40	# NetBSD 4.0 compatibility.
811.1Sbsh#options 	COMPAT_30	# NetBSD 3.0 compatibility.
821.1Sbsh#options 	COMPAT_20	# NetBSD 2.0 compatibility.
831.1Sbsh#options 	COMPAT_16	# NetBSD 1.6 compatibility.
841.1Sbsh#options 	COMPAT_15	# NetBSD 1.5 compatibility.
851.1Sbsh#options 	COMPAT_14	# NetBSD 1.4 compatibility.
861.1Sbsh#options 	COMPAT_13	# NetBSD 1.3 compatibility.
871.1Sbsh#options 	COMPAT_12	# NetBSD 1.2 compatibility.
881.1Sbsh#options 	COMPAT_11	# NetBSD 1.1 compatibility.
891.1Sbsh#options 	COMPAT_10	# NetBSD 1.0 compatibility.
901.1Sbsh#options 	COMPAT_09	# NetBSD 0.9 compatibility.
911.1Sbsh#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
921.1Sbsh
931.1Sbshoptions 	COMPAT_OSSAUDIO	# OSS (Voxware) audio driver compatibility
941.1Sbsh#options 	COMPAT_LINUX	# binary compatibility with Linux
951.1Sbshoptions		COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
961.1Sbsh
971.1Sbsh# Shared memory options
981.1Sbsh
991.1Sbshoptions 	SYSVMSG		# System V-like message queues
1001.1Sbshoptions 	SYSVSEM		# System V-like semaphores
1011.1Sbshoptions 	SYSVSHM		# System V-like memory sharing
1021.1Sbsh
1031.1Sbsh# Device options
1041.1Sbsh
1051.1Sbsh# Console options.    also need IMXUARTCONSOLE
1061.1Sbshoptions 	CONSDEVNAME="\"imxuart\"",CONADDR=0x73fbc000
1071.1Sbshoptions 	CONSPEED=115200	# Console speed
1081.1Sbsh
1091.1Sbsh# kgdb
1101.1Sbsh#options	KGDB
1111.1Sbsh#options 	KGDB_DEVNAME="\"imxuart\""
1121.1Sbsh#options 	KGDB_DEVADDR=0x73fbc000
1131.1Sbsh#options 	KGDB_DEVRATE=115200
1141.1Sbsh
1151.1Sbsh# Miscellaneous kernel options
1161.1Sbshoptions 	KTRACE		# system call tracing, a la ktrace(1)
1171.1Sbshoptions 	IRQSTATS	# manage IRQ statistics
1181.1Sbsh#options 	KMEMSTATS	# kernel memory statistics
1191.1Sbshoptions 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
1201.1Sbshoptions 	USBVERBOSE	# verbose USB device autoconfig messages
1211.1Sbsh#options 	SCSIVERBOSE	# Verbose SCSI errors
1221.1Sbshoptions 	MIIVERBOSE	# Verbose MII autoconfuration messages
1231.1Sbsh#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
1241.1Sbsh#options 	DDB_KEYCODE=0x40
1251.1Sbshoptions 	USERCONF	# userconf(4) support
1261.1Sbsh#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
1271.1Sbsh#options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
1281.1Sbshoptions 	NO_POWERSAVE	# uncomment this to run under ICE
1291.1Sbsh
1301.1Sbsh# Development and Debugging options
1311.1Sbsh#options 	PERFCTRS	# performance counters
1321.28Sdholland#options 	DIAGNOSTIC	# internal consistency checks
1331.1Sbsh#options 	DEBUG
1341.1Sbsh#options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
1351.1Sbshoptions 	DDB		# in-kernel debugger
1361.24Sszptvlfnoptions 	DDB_ONPANIC=1	# see also sysctl(7): `ddb.onpanic'
1371.1Sbshoptions 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
1381.1Sbshoptions 	DDB_VERBOSE_HELP
1391.1Sbsh#options 	LOCKDEBUG
1401.1Sbsh#options 	PMAP_DEBUG	# Enable pmap_debug_level code
1411.1Sbsh#options 	IPKDB		# remote kernel debugging
1421.23Shkenken#options 	VERBOSE_INIT_ARM # verbose bootstraping messages
1431.15Smsaitohmakeoptions	DEBUG="-g"	# compile full symbol table
1441.15Smsaitoh#makeoptions	COPTS="-O2"
1451.1Sbsh#options 	SYSCALL_STATS	# per syscall counts
1461.1Sbsh#options 	SYSCALL_TIMES 	# per syscall times
1471.1Sbsh#options 	SYSCALL_TIMES_HASCOUNTER	# use 'broken' rdtsc (soekris)
1481.1Sbsh#options 	SCSIPI_DEBUG
1491.1Sbsh#options	SCSIPI_DEBUG_TYPE=SCSIPI_BUSTYPE_SCSI
1501.1Sbsh#options	SCSIPI_DEBUG_TARGET=0
1511.1Sbsh#options	SCSIPI_DEBUG_LUN=0
1521.1Sbsh
1531.26Shkenken# Valid options for BOOT_ARGS:
1541.26Shkenken#  single		Boot to single user only
1551.26Shkenken#  kdb			Give control to kernel debugger
1561.26Shkenken#  ask			Ask for file name to reboot from
1571.26Shkenken#  pmapdebug=<n>	If PMAP_DEBUG, set pmap_debug_level to <n>
1581.26Shkenken#  memorydisk=<n>	Set memorydisk size to <n> KB
1591.26Shkenken#  quiet		Show aprint_naive output
1601.26Shkenken#  verbose		Show aprint_normal and aprint_verbose output
1611.26Shkenken#options		BOOT_ARGS="\"verbose\""
1621.26Shkenken#options		BOOT_ARGS="\"pmapdebug=1\""
1631.26Shkenken
1641.1Sbsh# Kernel root file system and dump configuration.
1651.1Sbshconfig		netbsd		root on ? type ?
1661.25Shkenkenconfig		netbsd-ld0	root on ld0 type ffs
1671.1Sbsh
1681.1Sbsh# The main bus device
1691.1Sbshmainbus0	at root
1701.1Sbsh
1711.1Sbsh# The boot cpu
1721.1Sbshcpu0		at mainbus?
1731.1Sbsh
1741.1Sbsh# Devices
1751.1Sbsh# On-chip
1761.1Sbsh# On-chip bus
1771.1Sbshaxi0		at mainbus?
1781.1Sbsh
1791.1Sbsh# Interrupt Cotroller
1801.1Sbshtzic0		at axi? addr 0xe0000000 size 0x4000 irqbase 0
1811.1Sbsh
1821.1Sbsh# Serial
1831.1Sbshimxuart0	at axi? addr 0x73fbc000 irq 31		# UART1
1841.1Sbsh#imxuart1	at axi? addr 0x73fc0000 irq 32
1851.1Sbsh#imxuart2	at axi? addr 0x7000c000 irq 33
1861.22Shkenken#options	IMXUARTCONSOLE
1871.1Sbsh
1881.10Sbsh# Clock Control
1891.10Sbshimxccm0		at axi? addr 0x73fd4000
1901.10Sbshoptions		IMX51_CKIL_FREQ=32768
1911.25Shkenken#options	IMXCCMDEBUG
1921.10Sbsh
1931.1Sbsh# Enhanced Periodic Interrupt Timer
1941.1Sbshimxclock0	at axi? addr 0x73fac000 size 0x4000 irq 40
1951.1Sbshimxclock1	at axi? addr 0x73fb0000 size 0x4000 irq 41
1961.1Sbsh
1971.3Sbsh# IOMUX
1981.3Sbshimxiomux0	at axi? addr 0x73fa8000
1991.3Sbsh
2001.25Shkenken# WatchDog
2011.25Shkenkenimxwdog0	at axi? addr 0x73f98000 irq 58 flags 0
2021.25Shkenken
2031.3Sbsh# GPIO
2041.25Shkenkenimxgpio0	at axi? addr 0x73f84000 irqbase 128 irq 50
2051.25Shkenkenimxgpio1	at axi? addr 0x73f88000 irqbase 160 irq 52
2061.25Shkenkenimxgpio2	at axi? addr 0x73f8c000 irqbase 192 irq 54
2071.25Shkenkenimxgpio3	at axi? addr 0x73f90000 irqbase 224 irq 56
2081.25Shkenkengpio*		at imxgpio?
2091.25Shkenkenoptions		IMX_GPIO_INTR_SPLIT
2101.25Shkenken
2111.25Shkenken# I2C
2121.25Shkenken#imxi2c0	at axi? addr 0x83fc8000 irq 62
2131.25Shkenken#imxi2c1	at axi? addr 0x83fc4000 irq 63
2141.25Shkenken
2151.25Shkenken# IIC
2161.25Shkenken#iic*	   at imxi2c?
2171.25Shkenken
2181.25Shkenken# SPI bus
2191.25Shkenkenimxspi0		at axi? addr 0x70010000 irq 36 flags 1
2201.25Shkenken#imxspi1	at axi? addr 0x83fac000 irq 37 flags 1
2211.25Shkenken#imxspi2	at axi? addr 0x83fc0000 irq 38 flags 0
2221.25Shkenkenspi0		at imxspi0 # eCSPI1
2231.25Shkenken#spi1		at imxspi1 # eCSPI2
2241.25Shkenken#spi2		at imxspi2 # CSPI1
2251.25Shkenkenoptions		IMXSPINSLAVES=3
2261.25Shkenken#options	IMXSPI_DEBUG=10
2271.25Shkenken
2281.25Shkenken# Optical Joystick
2291.25Shkenkenoj6sh0		at spi0 slave 2
2301.25Shkenken#options	OJ6SH_DEBUG=4
2311.25Shkenkenoptions		OJ6SH_UP_X_LEFT_Y
2321.25Shkenkenwsmouse*	at oj6sh? mux 0
2331.26Shkenken
2341.26Shkenkenmousebtn0	at gpio1 offset 22 mask 0x03 # intr 182, 183
2351.26Shkenken#options	MOUSEBTN_POLLING
2361.25Shkenkenwsmouse*	at mousebtn? mux 0
2371.25Shkenken
2381.26Shkenkenpwrbtn0		at gpio1 offset 21 mask 0x01 # intr 181
2391.26Shkenkenlidsw0		at gpio3 offset 12 mask 0x01 # intr 236
2401.27Shkenkenimxpwm0		at axi? addr 0x73FB4000 irq 61
2411.26Shkenken
2421.25Shkenken# SPI NOR-Flash
2431.25Shkenken#spiflash0	at spiflashbus?
2441.25Shkenken#m25p0		at spi0 slave 1
2451.3Sbsh
2461.12Sbsh# SD/MMC
2471.12Sbshsdhc0    	at axi? addr 0x70004000 irq 1	     # eSDHC1
2481.12Sbsh#sdhc1   	at axi? addr 0x70008000 irq 2	     # eSDHC2
2491.12Sbshsdmmc*		at sdhc?
2501.12Sbshld*		at sdmmc?			# MMC/SD card
2511.12Sbsh#options 	SDHC_DEBUG
2521.12Sbsh#options 	SDMMC_DEBUG
2531.12Sbsh
2541.3Sbsh# USB
2551.3Sbshimxusbc0  at axi?  addr 0x73f80000
2561.3Sbshehci0	  at imxusbc0	unit 0	irq 18 # OTG
2571.3Sbshehci1	  at imxusbc0	unit 1	irq 14 # Host1
2581.3Sbsh#ehci2	  at imxusbc0	unit 2	irq 16 # Host2
2591.3Sbsh#ehci3	  at imxusbc0	unit 3	irq 17 # Host3
2601.3Sbsh
2611.3Sbshusb*		at ehci?
2621.3Sbsh
2631.23Shkenken# USB device drivers
2641.23Shkenkeninclude "dev/usb/usbdevices.config"
2651.3Sbsh
2661.23Shkenkenukphy*		at mii? phy ?
2671.3Sbsh
2681.11Sbsh# IPUv3 LCD Controller
2691.11Sbshipu0		at axi?
2701.11Sbshwsdisplay0	at wsemuldisplaydev? console ?
2711.11Sbshwsdisplay*	at wsemuldisplaydev?
2721.11Sbsh#options	IPUV3_DEBUG=1
2731.11Sbsh#options	LCD_DEBUG
2741.11Sbshoptions 	IMXIPUCONSOLE
2751.11Sbsh
2761.11Sbsh# various options for wscons - we try to look as much like a standard
2771.11Sbsh# sun console as possible
2781.11Sbshoptions 	WSEMUL_VT100		# sun terminal emulation
2791.11Sbshoptions 	WS_DEFAULT_FG=WSCOL_WHITE
2801.11Sbshoptions 	WS_DEFAULT_BG=WSCOL_BLACK
2811.11Sbshoptions		WS_KERNEL_FG=WSCOL_GREEN
2821.11Sbshoptions		WS_KERNEL_BG=WSCOL_BLACK
2831.11Sbshoptions 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
2841.13Sabsoptions 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
2851.11Sbshoptions 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
2861.11Sbshoptions 	WSDISPLAY_DEFAULTSCREENS=4
2871.11Sbsh
2881.1Sbsh# Pseudo-Devices
2891.1Sbsh
2901.1Sbshpseudo-device	crypto			# /dev/crypto device
2911.1Sbshpseudo-device	swcrypto		# software crypto implementation
2921.1Sbsh
2931.1Sbsh# disk/mass storage pseudo-devices
2941.2Shannken#pseudo-device	md			# memory disk device (ramdisk)
2951.25Shkenkenpseudo-device	vnd			# disk-like interface to files
2961.16Smsaitoh#pseudo-device	fss			# file system snapshot device
2971.25Shkenkenpseudo-device	putter			# for puffs and pud
2981.1Sbsh
2991.1Sbsh# network pseudo-devices
3001.23Shkenkenpseudo-device	bpfilter		# Berkeley packet filter
3011.1Sbsh#pseudo-device	ipfilter		# IP filter (firewall) and NAT
3021.1Sbshpseudo-device	loop			# network loopback
3031.23Shkenken#pseudo-device	ppp			# Point-to-Point Protocol
3041.1Sbsh
3051.1Sbsh# miscellaneous pseudo-devices
3061.1Sbshpseudo-device	pty			# pseudo-terminals
3071.25Shkenkenpseudo-device	clockctl		# NTP clockctl
3081.1Sbshpseudo-device	ksyms			# /dev/ksyms
3091.25Shkenkenpseudo-device	lockstat		# lock profiling
3101.1Sbsh
3111.1Sbsh# wscons pseudo-devices
3121.1Sbshpseudo-device	wsmux			# mouse & keyboard multiplexor
3131.11Sbshpseudo-device	wsfont
3141.23Shkenken
3151.25Shkenken# data mover pseudo-devices
3161.25Shkenken#pseudo-device	swdmover		# software dmover(9) back-end
3171.25Shkenken#pseudo-device	dmoverio		# /dev/dmover dmover(9) interface
3181.25Shkenken
3191.25Shkenken# userland interface to drivers, including autoconf and properties retrieval
3201.25Shkenkenpseudo-device 	drvctl
3211.25Shkenken
3221.23Shkenken# local configuration
3231.23Shkenkencinclude "arch/evbarm/conf/NETWALKER.local"
324