ARMADILLO9 revision 1.67
11.67Ssimonb#	$NetBSD: ARMADILLO9,v 1.67 2022/08/07 02:52:25 simonb Exp $
21.1Shamajima#
31.1Shamajima#	ARMADILLO9 -- Atmark Techno, Armadillo-9
41.1Shamajima#
51.1Shamajima
61.1Shamajimainclude	"arch/evbarm/conf/std.armadillo9"
71.1Shamajima
81.1Shamajima#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
91.55Smrgoptions 	MSGBUFSIZE=65536
101.1Shamajima#options 	KSTACK_CHECK_MAGIC
111.1Shamajima
121.1Shamajima# estimated number of users
131.1Shamajimamaxusers	16
141.1Shamajima
151.1Shamajima# Standard system options
161.1Shamajimaoptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
171.1Shamajimaoptions 	NTP		# NTP phase/frequency locked loop
181.1Shamajima
191.1Shamajima# CPU options
201.1Shamajimaoptions 	CPU_ARM9	# Support the ARM9TDMI core
211.1Shamajima
221.1Shamajima# File systems
231.1Shamajimafile-system	FFS		# UFS
241.1Shamajima#file-system	LFS		# log-structured file system
251.1Shamajimafile-system	MFS		# memory file system
261.1Shamajimafile-system	NFS		# Network file system
271.1Shamajima#file-system 	ADOSFS		# AmigaDOS-compatible file system
281.1Shamajimafile-system 	EXT2FS		# second extended file system (linux)
291.1Shamajimafile-system	CD9660		# ISO 9660 + Rock Ridge file system
301.1Shamajimafile-system	MSDOSFS		# MS-DOS file system
311.1Shamajimafile-system	FDESC		# /dev/fd
321.1Shamajima#file-system	FILECORE	# Acorn filecore file system
331.1Shamajimafile-system	KERNFS		# /kern
341.1Shamajimafile-system	NULLFS		# loopback file system
351.1Shamajimafile-system	PROCFS		# /proc
361.37Smsaitoh#file-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
371.1Shamajima#file-system	UMAPFS		# NULLFS + uid and gid remapping
381.1Shamajimafile-system	UNION		# union file system
391.1Shamajimafile-system	PTYFS		# /dev/pts/N support
401.1Shamajima
411.1Shamajima# File system options
421.67Ssimonb#options 	FFS_EI		# FFS Endian Independent support
431.67Ssimonb#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
441.29Sbouyer#options 	QUOTA		# legacy UFS quotas
451.29Sbouyer#options 	QUOTA2		# new, in-filesystem UFS quotas
461.67Ssimonb#options 	UFS_DIRHASH	# UFS Large Directory Hashing
471.67Ssimonb#options 	UFS_EXTATTR	# Extended attribute support for UFS1
481.67Ssimonboptions 	WAPBL		# File system journaling support
491.67Ssimonb#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
501.67Ssimonb				# immutable) behave as system flags.
511.53Srin#options 	DISKLABEL_EI	# disklabel Endian Independent support
521.1Shamajimaoptions 	NFSSERVER	# Network File System server
531.1Shamajima
541.1Shamajima# Networking options
551.1Shamajima#options 	GATEWAY		# packet forwarding
561.1Shamajimaoptions 	INET		# IP + ICMP + TCP + UDP
571.1Shamajimaoptions 	INET6		# IPV6
581.1Shamajima#options 	IPSEC		# IP security
591.1Shamajima#options 	IPSEC_DEBUG	# debug for IP security
601.1Shamajima#options 	MROUTING	# IP multicast routing
611.1Shamajima#options	PIM		# Protocol Independent Multicast
621.1Shamajima#options 	NETATALK	# AppleTalk networking
631.1Shamajima#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
641.1Shamajima#options 	PPP_DEFLATE	# Deflate compression support for PPP
651.1Shamajima#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
661.1Shamajima#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
671.1Shamajima
681.1Shamajimaoptions 	NFS_BOOT_BOOTP
691.1Shamajimaoptions 	NFS_BOOT_DHCP
701.1Shamajima#options 	NFS_BOOT_BOOTPARAM
711.1Shamajima
721.1Shamajima# Compatibility options
731.55Smrginclude 	"conf/compat_netbsd20.config"
741.55Smrgoptions 	COMPAT_NETBSD32	# allow running arm (e.g. non-earm) binaries
751.55Smrg
761.1Shamajima# Shared memory options
771.1Shamajimaoptions 	SYSVMSG		# System V-like message queues
781.1Shamajimaoptions 	SYSVSEM		# System V-like semaphores
791.1Shamajimaoptions 	SYSVSHM		# System V-like memory sharing
801.1Shamajima
811.1Shamajima# Device options
821.1Shamajima
831.1Shamajima#options 	MEMORY_DISK_HOOKS	# boottime setup of ramdisk
841.1Shamajima#options 	MEMORY_DISK_ROOT_SIZE=3400	# Size in blocks
851.1Shamajima#options 	MEMORY_DISK_IS_ROOT	# use memory disk as root
861.1Shamajima
871.1Shamajima# Console options. The default console is speed is 115200 baud.
881.1Shamajimaoptions 	CONSPEED=115200		# Console speed
891.9Shamajimaoptions 	CONUNIT=0		# Console port number
901.1Shamajima
911.1Shamajima# Miscellaneous kernel options
921.1Shamajimaoptions 	KTRACE		# system call tracing, a la ktrace(1)
931.1Shamajima#options 	IRQSTATS	# manage IRQ statistics
941.1Shamajima#options 	SCSIVERBOSE	# Verbose SCSI errors
951.1Shamajima#options 	PCIVERBOSE	# Verbose PCI descriptions
961.1Shamajima#options 	MIIVERBOSE	# Verbose MII autoconfuration messages
971.1Shamajima#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
981.1Shamajima#options 	DDB_KEYCODE=0x40
991.1Shamajima#options 	USERCONF	# userconf(4) support
1001.1Shamajima#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
1011.1Shamajima#options	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
1021.1Shamajima
1031.1Shamajima# Development and Debugging options
1041.1Shamajima
1051.44Sdhollandoptions 	DIAGNOSTIC	# internal consistency checks
1061.1Shamajima#options 	DEBUG
1071.62Sskrll#options 	UVMHIST		# kernhist for uvm/pmap subsystems
1081.1Shamajima#options 	VERBOSE_INIT_ARM # verbose bootstraping messages
1091.1Shamajimaoptions 	DDB		# in-kernel debugger
1101.1Shamajima#options	DDB_ONPANIC=1
1111.1Shamajimaoptions 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
1121.1Shamajima#makeoptions	DEBUG="-g"	# compile full symbol table
1131.47Sjoergmakeoptions	COPY_SYMTAB=1
1141.1Shamajima
1151.1Shamajima#options 	PMAP_INCLUDE_PTE_SYNC
1161.1Shamajima#options 	LOCKDEBUG
1171.1Shamajima
1181.2Shamajimaconfig		netbsd		root on ? type ?
1191.1Shamajima#config		netbsd		root on epe0 type nfs
1201.2Shamajima#config		netbsd		root on wd0 type ffs
1211.1Shamajima#config		netbsd		root on sd0 type ffs
1221.1Shamajima
1231.1Shamajima# The main bus device
1241.1Shamajimamainbus0	at root
1251.1Shamajima
1261.1Shamajima# The boot cpu
1271.1Shamajimacpu0		at mainbus?
1281.1Shamajima
1291.1Shamajima# Cirrus Logic EP93xx System-on-chip
1301.1Shamajimaepsoc0		at mainbus?
1311.1Shamajima
1321.1Shamajima# AHB Peripheral
1331.1Shamajima# On-chip 10/100 Ethernet
1341.1Shamajimaepe0		at epsoc? addr 0x80010000 size 0x10000 intr 39
1351.1Shamajima# On-chip USB host controller
1361.1Shamajimaohci0		at epsoc? addr 0x80020000 size 0x1000 intr 56
1371.1Shamajima# On-chip Raster (not yet)
1381.1Shamajima#vga0		at epsoc? addr 0x80030000 size 0x10000 intr ??
1391.1Shamajima# On-chip PCMCIA controller
1401.20Shamajimaeppcic0		at epsoc? addr 0x80080000 size 0x44
1411.1Shamajima# On-chip IDE (not yet)
1421.1Shamajima#wdc0		at epsoc? addr 0x800a0000 size 0x38 intr ??
1431.1Shamajima
1441.1Shamajima# APB Peripheral
1451.1Shamajima# On-chip timers
1461.1Shamajimaepclk0		at epsoc? addr 0x80810000 size 0x90 intr 4
1471.1Shamajima# GPIO
1481.1Shamajimaepgpio0		at epsoc? addr 0x80840000 size 0xcc intr 59
1491.1Shamajimagpio*		at epgpio?
1501.1Shamajima# On-chip serial UARTS
1511.1Shamajimaepcom0		at epsoc? addr 0x808c0000 size 0x1000 intr 52
1521.1Shamajimaepcom1		at epsoc? addr 0x808d0000 size 0x1000 intr 54
1531.1Shamajima#epcom2		at epsoc? addr 0x808e0000 size 0x1000 intr 55
1541.1Shamajima# RealTime Clock (no battery backup)
1551.1Shamajimaeprtc0		at epsoc? addr 0x80920000 size 0x10c intr 37
1561.1Shamajima# Watchdog Timer
1571.1Shamajimaepwdog0		at epsoc? addr 0x80940000 size 0x08 intr 36
1581.1Shamajima# LED
1591.1Shamajimaepled0		at epgpio0 port 4 bit1 0 bit2 1
1601.1Shamajima
1611.1Shamajima# I^2C Controller Unit
1621.1Shamajimaarmadillo9iic0	at epgpio0 port 1 bit1 4 bit2 5
1631.1Shamajimaiic*		at armadillo9iic?
1641.58Sthorpejseeprom0	at iic? addr 0x50 flags 1	# 128 bytes
1651.57Sthorpej#s3531rtc0	at iic? addr 0x30
1661.1Shamajima
1671.1Shamajima# PCMCIA bus support
1681.1Shamajimapcmcia*	at eppcic0 controller ? socket ?
1691.1Shamajima
1701.1Shamajima# PCMCIA network interfaces
1711.1Shamajimane*	at pcmcia? function ?		# NE2000-compatible Ethernet
1721.1Shamajimawi*	at pcmcia? function ?		# Lucent/Intersil WaveLan IEEE (802.11)
1731.1Shamajima
1741.1Shamajima# MII/PHY support
1751.1Shamajimalxtphy* at mii? phy ?			# Level One LXT-970 PHYs
1761.1Shamajima
1771.1Shamajima# PCMCIA serial interfaces
1781.1Shamajimacom*	at pcmcia? function ?		# Modems and serial cards
1791.1Shamajima
1801.1Shamajima# PCMCIA IDE disk
1811.1Shamajimawdc*	at pcmcia? function ?
1821.1Shamajima
1831.1Shamajima# USB Controller and Devices
1841.1Shamajima
1851.1Shamajima# USB bus support
1861.1Shamajimausb*	at ohci?
1871.1Shamajima
1881.1Shamajima# USB Hubs
1891.1Shamajimauhub*	at usb?
1901.16Sdrochneruhub*	at uhub? port ?
1911.1Shamajima
1921.1Shamajima# USB HID device
1931.1Shamajimauhidev*	at uhub? port ? configuration ? interface ?
1941.1Shamajima
1951.1Shamajima# USB Mice
1961.1Shamajima#ums*	at uhidev? reportid ?
1971.1Shamajima#wsmouse* at ums? mux 0
1981.1Shamajima
1991.1Shamajima# USB Keyboards
2001.1Shamajima#ukbd*	at uhidev? reportid ?
2011.1Shamajima#wskbd*	at ukbd? console ? mux 1
2021.1Shamajima
2031.1Shamajima# USB Generic HID devices
2041.1Shamajimauhid*	at uhidev? reportid ?
2051.1Shamajima
2061.1Shamajima# USB Mass Storage
2071.1Shamajimaumass*	at uhub? port ? configuration ? interface ?
2081.1Shamajimascsibus* at umass?
2091.1Shamajima
2101.1Shamajima# USB audio
2111.1Shamajima#uaudio*	at uhub? port ? configuration ?
2121.1Shamajima
2131.1Shamajima# USB MIDI
2141.1Shamajima#umidi*	at uhub? port ? configuration ?
2151.1Shamajima
2161.1Shamajima# USB Generic driver
2171.1Shamajimaugen*	at uhub? port ?
2181.1Shamajima
2191.1Shamajima# ATA (IDE) bus support
2201.1Shamajimaatabus*	at ata?
2211.1Shamajima
2221.1Shamajima# IDE drives
2231.1Shamajimawd*	at atabus? drive ? flags 0x0000
2241.1Shamajima
2251.1Shamajima# ATAPI bus support
2261.1Shamajimaatapibus* at atapi?
2271.1Shamajima
2281.1Shamajima# ATAPI devices
2291.1Shamajimacd*	at atapibus? drive ? flags 0x0ff0	# ATAPI CD-ROM drives
2301.1Shamajimasd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
2311.1Shamajimauk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
2321.1Shamajima
2331.1Shamajima# SCSI devices
2341.1Shamajimasd*	at scsibus? target ? lun ?	# SCSI disk drives
2351.1Shamajimacd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
2361.1Shamajimauk*	at scsibus? target ? lun ?	# SCSI unknown
2371.1Shamajima
2381.1Shamajima# Audio support
2391.1Shamajima#audio*	at audiobus?
2401.1Shamajima
2411.52Schristos#spkr*	at audio?			# PC speaker (synthesized)
2421.50Snat
2431.1Shamajima# MIDI support
2441.1Shamajima#midi*	at midibus?
2451.1Shamajima
2461.1Shamajima# Pseudo-Devices
2471.1Shamajima
2481.1Shamajima# disk/mass storage pseudo-devices
2491.28Shannken#pseudo-device	md			# memory disk device (ramdisk)
2501.8Scubepseudo-device	vnd			# disk-like interface to files
2511.10Shamajimaoptions 	VND_COMPRESSION		# compressed vnd(4)
2521.27Spooka#pseudo-device	fss			# file system snapshot device
2531.37Smsaitoh#pseudo-device	putter			# for puffs and pud
2541.1Shamajima
2551.1Shamajima# network pseudo-devices
2561.7Srpaulopseudo-device	bpfilter		# Berkeley packet filter
2571.60Smaxv#pseudo-device	npf			# NPF packet filter
2581.1Shamajimapseudo-device	loop			# network loopback
2591.8Scube#pseudo-device	ppp			# Point-to-Point Protocol
2601.1Shamajima#pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
2611.8Scube#pseudo-device	sl			# Serial Line IP
2621.1Shamajima#pseudo-device	irframetty		# IrDA frame line discipline
2631.1Shamajima#pseudo-device	tap			# virtual Ethernet
2641.8Scube#pseudo-device	tun			# network tunneling over tty
2651.8Scube#pseudo-device	gre			# generic L3 over IP tunnel
2661.8Scube#pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
2671.8Scube#pseudo-device	faith			# IPv[46] tcp relay translation i/f
2681.8Scube#pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
2691.1Shamajima#pseudo-device	vlan			# IEEE 802.1q encapsulation
2701.1Shamajima#pseudo-device	bridge			# simple inter-network bridging
2711.65Sroy#pseudo-device	vether			# Virtual Ethernet for bridge
2721.1Shamajima#pseudo-device	kttcp			# network loopback
2731.1Shamajima
2741.1Shamajima# miscellaneous pseudo-devices
2751.1Shamajimapseudo-device	pty			# pseudo-terminals
2761.1Shamajima#options	RND_COM
2771.1Shamajimapseudo-device	clockctl		# user control of clock subsystem
2781.1Shamajimapseudo-device	ksyms			# /dev/ksyms
2791.4Sthorpej#pseudo-device	crypto			# /dev/crypto device
2801.5Sthorpej#pseudo-device	swcrypto		# software crypto implementation
2811.41Schristos#pseudo-device	sequencer		# MIDI sequencer
2821.1Shamajima
2831.1Shamajima#
2841.1Shamajima# wscons options
2851.1Shamajima#
2861.1Shamajima# builtin terminal emulations
2871.1Shamajima#options 	WSEMUL_SUN		# sun terminal emulation
2881.1Shamajimaoptions 	WSEMUL_VT100		# VT100 / VT220 emulation
2891.1Shamajima# customization of console and kernel output - see dev/wscons/wsdisplayvar.h
2901.1Shamajima#options 	WSDISPLAY_CUSTOM_OUTPUT	# color customization from wsconsctl(8)
2911.1Shamajima#options 	WS_DEFAULT_FG=WSCOL_WHITE
2921.1Shamajima#options 	WS_DEFAULT_BG=WSCOL_BLACK
2931.1Shamajima#options 	WS_DEFAULT_COLATTR="(0)"
2941.1Shamajima#options 	WS_DEFAULT_MONOATTR="(0)"
2951.1Shamajima#options 	WS_KERNEL_FG=WSCOL_GREEN
2961.1Shamajima#options 	WS_KERNEL_BG=WSCOL_BLACK
2971.1Shamajima#options 	WS_KERNEL_COLATTR=""
2981.1Shamajima#options 	WS_KERNEL_MONOATTR=""
2991.1Shamajima# customization of console border color
3001.1Shamajima#options 	WSDISPLAY_CUSTOM_BORDER	# border customization from wsconsctl(8)
3011.1Shamajima#options 	WSDISPLAY_BORDER_COLOR=WSCOL_BLUE	# default color
3021.1Shamajima# compatibility to other console drivers
3031.1Shamajima#options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
3041.1Shamajima#options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
3051.35Sabs#options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
3061.1Shamajima#options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
3071.12Sdrochner# see dev/pckbport/wskbdmap_mfii.c for implemented layouts
3081.1Shamajima#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
3091.1Shamajima# allocate a number of virtual screens at autoconfiguration time
3101.1Shamajima#options 	WSDISPLAY_DEFAULTSCREENS=4
3111.1Shamajima# use a large software cursor that doesn't blink
3121.1Shamajima#options 	PCDISPLAY_SOFTCURSOR
3131.1Shamajima# modify the screen type of the console; defaults to "80x25"
3141.1Shamajima#options 	VGA_CONSOLE_SCREENTYPE="\"80x24\""
3151.1Shamajima# work around a hardware bug that loaded fonts don't work; found on ATI cards
3161.1Shamajima#options 	VGA_CONSOLE_ATI_BROKEN_FONTSEL
3171.1Shamajima# console scrolling support.
3181.1Shamajima#options 	WSDISPLAY_SCROLLSUPPORT
3191.1Shamajima# enable VGA raster mode capable of displaying multilingual text on console
3201.1Shamajima#options 	VGA_RASTERCONSOLE
3211.1Shamajima
3221.1Shamajima# wscons pseudo-devices
3231.1Shamajima#pseudo-device	wsmux			# mouse & keyboard multiplexor
3241.1Shamajima#pseudo-device	wsfont
325