CUBOX revision 1.14
11.14Ssevan# $NetBSD: CUBOX,v 1.14 2019/04/26 22:46:03 sevan Exp $
21.1Skiyohara#
31.1Skiyohara#	CUBOX -- SolidRun Ltd. Cubox kernel
41.1Skiyohara#
51.1Skiyohara
61.1Skiyoharainclude	"arch/evbarm/conf/std.marvell"
71.1Skiyohara
81.1Skiyohara#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
91.1Skiyohara
101.1Skiyohara# estimated number of users
111.1Skiyohara
121.1Skiyoharamaxusers	32
131.1Skiyohara
141.1Skiyohara# Board Type
151.1Skiyoharamakeoptions	BOARDTYPE="cubox"
161.1Skiyoharaoptions 	EVBARM_BOARDTYPE=cubox
171.1Skiyohara
181.1Skiyohara# CPU options
191.1Skiyoharaoptions 	CPU_PJ4B	# XXXX: CPU is PJ4
201.1Skiyoharaoptions 	ARM_HAS_VBAR
211.1Skiyoharaoptions 	FPU_VFP
221.1Skiyoharamakeoptions	CPUFLAGS="-march=armv7-a -mfpu=vfpv3"
231.1Skiyohara
241.1Skiyohara# Marvell SoC options
251.1Skiyoharaoptions 	DOVE
261.1Skiyohara
271.1Skiyohara# Standard system options
281.1Skiyohara
291.1Skiyoharaoptions 	INSECURE	# disable kernel security levels - X needs this
301.1Skiyohara
311.1Skiyoharaoptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
321.1Skiyohara#options 	NTP		# NTP phase/frequency locked loop
331.1Skiyoharaoptions 	KTRACE		# system call tracing via ktrace(1)
341.1Skiyohara
351.1Skiyohara# Note: SysV IPC parameters can be changed dynamically; see sysctl(8).
361.1Skiyoharaoptions 	SYSVMSG		# System V-like message queues
371.1Skiyoharaoptions 	SYSVSEM		# System V-like semaphores
381.1Skiyoharaoptions 	SYSVSHM		# System V-like memory sharing
391.1Skiyohara
401.1Skiyohara#options 	USERCONF	# userconf(4) support
411.1Skiyohara#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
421.1Skiyoharaoptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
431.1Skiyohara
441.1Skiyohara# Alternate buffer queue strategies for better responsiveness under high
451.1Skiyohara# disk I/O load.
461.1Skiyohara#options 	BUFQ_READPRIO
471.1Skiyoharaoptions 	BUFQ_PRIOCSCAN
481.1Skiyohara
491.1Skiyohara# Diagnostic/debugging support options
501.1Skiyohara#options 	VERBOSE_INIT_ARM # verbose bootstraping messages
511.1Skiyoharaoptions 	DIAGNOSTIC	# internally consistency checks
521.1Skiyohara
531.1Skiyohara#options 	DEBUG
541.1Skiyohara#options 	PMAP_DEBUG	# Enable pmap_debug_level code
551.1Skiyoharaoptions 	LOCKDEBUG	# expensive locking checks/support
561.1Skiyoharaoptions 	IRQSTATS	# manage IRQ statistics
571.1Skiyohara#options 	NO_POWERSAVE	# uncomment this to run under ICE
581.1Skiyohara
591.1Skiyohara#makeoptions	COPTS="-O2"
601.1Skiyoharaoptions 	DDB			# in-kernel debugger
611.1Skiyohara#options 	DDB_KEYCODE=0x1d	# ^]
621.1Skiyohara#options 	DDB_COMMANDONENTER="bt"	# execute command when ddb is entered
631.1Skiyoharaoptions 	DDB_ONPANIC=1		# see also sysctl(7): `ddb.onpanic'
641.1Skiyoharaoptions 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
651.1Skiyoharaoptions 	DDB_VERBOSE_HELP
661.1Skiyohara#options	KGDB
671.1Skiyohara#options 	KGDB_DEVRATE=115200
681.1Skiyoharamakeoptions	DEBUG="-g"		# compile full symbol table
691.1Skiyoharamakeoptions	COPY_SYMTAB=1
701.1Skiyohara#options 	SYSCALL_STATS			# per syscall counts
711.1Skiyohara#options 	SYSCALL_TIMES			# per syscall times
721.1Skiyohara#options 	SYSCALL_TIMES_HASCOUNTER	# use 'broken' rdtsc (soekris)
731.1Skiyohara
741.1Skiyohara
751.1Skiyohara# Compatibility options
761.5Smrg
771.5Smrginclude 	"conf/compat_netbsd60.config"
781.5Smrgoptions 	COMPAT_NETBSD32	# allow running arm (e.g. non-earm) binaries
791.1Skiyohara
801.1Skiyoharaoptions 	COMPAT_OSSAUDIO	# OSS (Voxware) audio driver compatibility
811.1Skiyohara
821.1Skiyohara# Wedge support
831.1Skiyoharaoptions 	DKWEDGE_AUTODISCOVER	# Automatically add dk(4) instances
841.1Skiyoharaoptions 	DKWEDGE_METHOD_GPT	# Supports GPT partitions as wedges
851.1Skiyohara
861.1Skiyohara# File systems
871.1Skiyoharafile-system	FFS		# UFS
881.1Skiyoharafile-system	MFS		# memory file system
891.1Skiyoharafile-system	NFS		# Network File System client
901.1Skiyoharafile-system	TMPFS		# Efficient memory file-system
911.1Skiyoharafile-system	EXT2FS		# second extended file system (linux)
921.1Skiyoharafile-system	LFS		# log-structured file system
931.1Skiyoharafile-system	NTFS		# Windows/NT file system (experimental)
941.1Skiyoharafile-system	CD9660		# ISO 9660 + Rock Ridge file system
951.1Skiyoharafile-system	MSDOSFS		# MS-DOS file system
961.1Skiyoharafile-system	FDESC		# /dev/fd
971.1Skiyoharafile-system	KERNFS		# /kern
981.1Skiyoharafile-system	NULLFS		# loopback file system
991.1Skiyoharafile-system	OVERLAY		# overlay file system
1001.1Skiyoharafile-system	PROCFS		# /proc
1011.1Skiyoharafile-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
1021.1Skiyoharafile-system	SMBFS		# experimental - CIFS; also needs nsmb (below)
1031.1Skiyoharafile-system	UMAPFS		# NULLFS + uid and gid remapping
1041.1Skiyoharafile-system	UNION		# union file system
1051.1Skiyoharafile-system	CODA		# Coda File System; also needs vcoda (below)
1061.1Skiyoharafile-system	PTYFS		# /dev/ptm support
1071.1Skiyohara#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
1081.1Skiyohara#file-system	HFS		# experimental - Apple HFS+ (read-only)
1091.1Skiyohara#file-system	NILFS		# experimental - NTT's NiLFS(2)
1101.1Skiyohara
1111.1Skiyohara# File system options
1121.1Skiyoharaoptions 	QUOTA		# legacy UFS quotas
1131.1Skiyoharaoptions 	QUOTA2		# new, in-filesystem UFS quotas
1141.2Srin#options 	DISKLABEL_EI	# disklabel Endian Independent support
1151.1Skiyoharaoptions 	FFS_EI		# FFS Endian Independent support
1161.1Skiyoharaoptions 	WAPBL		# File system journaling support
1171.1Skiyohara# Note that UFS_DIRHASH is suspected of causing kernel memory corruption.
1181.1Skiyohara# It is not recommended for general use.
1191.1Skiyohara#options 	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
1201.1Skiyoharaoptions 	NFSSERVER	# Network File System server
1211.1Skiyohara#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
1221.1Skiyohara				# immutable) behave as system flags.
1231.1Skiyohara#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
1241.1Skiyohara
1251.1Skiyohara# Networking options
1261.1Skiyohara#options 	GATEWAY		# packet forwarding
1271.1Skiyoharaoptions 	INET		# IP + ICMP + TCP + UDP
1281.1Skiyoharaoptions 	INET6		# IPv6
1291.1Skiyoharaoptions 	IPSEC		# IP security
1301.1Skiyohara#options 	IPSEC_DEBUG	# debug for IP security
1311.1Skiyohara#options 	MPLS		# MultiProtocol Label Switching (needs ifmpls)
1321.1Skiyohara#options 	MROUTING	# IP multicast routing
1331.1Skiyohara#options 	PIM		# Protocol Independent Multicast
1341.1Skiyoharaoptions 	NETATALK	# AppleTalk networking protocols
1351.1Skiyoharaoptions 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
1361.1Skiyoharaoptions 	PPP_DEFLATE	# Deflate compression support for PPP
1371.1Skiyoharaoptions 	PPP_FILTER	# Active filter support for PPP (requires bpf)
1381.1Skiyohara#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
1391.1Skiyohara
1401.1Skiyohara#options 	ALTQ		# Manipulate network interfaces' output queues
1411.1Skiyohara#options 	ALTQ_BLUE	# Stochastic Fair Blue
1421.1Skiyohara#options 	ALTQ_CBQ	# Class-Based Queueing
1431.1Skiyohara#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
1441.1Skiyohara#options 	ALTQ_FIFOQ	# First-In First-Out Queue
1451.1Skiyohara#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
1461.1Skiyohara#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
1471.1Skiyohara#options 	ALTQ_LOCALQ	# Local queueing discipline
1481.1Skiyohara#options 	ALTQ_PRIQ	# Priority Queueing
1491.1Skiyohara#options 	ALTQ_RED	# Random Early Detection
1501.1Skiyohara#options 	ALTQ_RIO	# RED with IN/OUT
1511.1Skiyohara#options 	ALTQ_WFQ	# Weighted Fair Queueing
1521.1Skiyohara
1531.1Skiyohara# Device options
1541.1Skiyohara
1551.1Skiyohara# These options enable verbose messages for several subsystems.
1561.1Skiyohara# Warning, these may compile large string tables into the kernel!
1571.1Skiyoharaoptions 	MIIVERBOSE	# verbose PHY autoconfig messages
1581.1Skiyohara#options 	PCIVERBOSE	# verbose PCI device autoconfig messages
1591.1Skiyohara#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
1601.1Skiyohara#options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
1611.1Skiyohara#options 	SCSIVERBOSE	# Verbose SCSI errors
1621.1Skiyohara#options 	USBVERBOSE	# verbose USB device autoconfig messages
1631.1Skiyohara
1641.1Skiyohara# Kernel root file system and dump configuration.
1651.1Skiyoharaconfig		netbsd	root on ? type ?
1661.1Skiyohara
1671.1Skiyoharaoptions 		NFS_BOOT_BOOTP
1681.1Skiyoharaoptions 		NFS_BOOT_DHCP
1691.1Skiyohara#options 		NFS_BOOT_BOOTPARAM
1701.1Skiyohara#options 		NFS_BOOT_BOOTSTATIC
1711.1Skiyohara#options 		NFS_BOOTSTATIC_MYIP="\"192.168.0.2\""
1721.1Skiyohara#options 		NFS_BOOTSTATIC_GWIP="\"192.168.0.1\""
1731.1Skiyohara#options 		NFS_BOOTSTATIC_MASK="\"255.255.255.0\""
1741.1Skiyohara#options 		NFS_BOOTSTATIC_SERVADDR="\"192.168.0.3\""
1751.1Skiyohara#options 		NFS_BOOTSTATIC_SERVER="\"192.168.0.3:/nfs/cubox\""
1761.1Skiyohara
1771.1Skiyohara
1781.1Skiyohara#
1791.1Skiyohara# Device configuration
1801.1Skiyohara#
1811.1Skiyohara
1821.1Skiyoharamainbus0	at root
1831.1Skiyohara
1841.1Skiyoharacpu*		at mainbus?
1851.1Skiyohara
1861.1Skiyohara# Marvell 88AP510 Dove System-on-chip
1871.1Skiyoharamvsoc0  at mainbus?
1881.1Skiyohara#options 	MVSOC_CONSOLE_EARLY
1891.1Skiyohara
1901.1Skiyohara# On-chip Power Management Unit
1911.1Skiyoharamvsocpmu* at mvsoc? offset ? irq ?
1921.1Skiyohara
1931.1Skiyohara# On-chip Gigabit Ethernet Controller
1941.1Skiyoharamvgbec* at mvsoc? offset ?
1951.1Skiyoharamvgbe*	at mvgbec? port ? irq ?
1961.1Skiyohara
1971.1Skiyohara# MII/PHY support
1981.1Skiyoharamakphy* at mii? phy ?
1991.1Skiyohara
2001.1Skiyohara# On-chip Cryptographic Engines and Security Accelerator (CESA)
2011.1Skiyoharamvcesa* at mvsoc? offset ? irq ?
2021.1Skiyohara
2031.1Skiyohara# On-chip XOR DMA Engine
2041.1Skiyoharagtidmac* at mvsoc? offset ? irq ?
2051.1Skiyohara
2061.1Skiyohara# On-chip PCI Express Interface
2071.1Skiyoharamvpex*	at mvsoc? offset ? irq ?
2081.1Skiyoharapci*	at mvpex?
2091.1Skiyohara
2101.1Skiyohara# PCI bus support
2111.1Skiyoharaoptions 	PCI_NETBSD_CONFIGURE
2121.1Skiyohara#options 	PCI_CONFIG_DUMP		# verbosely dump PCI config space
2131.1Skiyohara
2141.1Skiyoharapchb*	at pci? dev ? function ?	# PCI-Host bridges
2151.1Skiyohara
2161.1Skiyohara# On-chip Serial-ATA (SATA) II Interface
2171.1Skiyoharamvsata* at mvsoc? offset ? irq ?
2181.1Skiyohara
2191.1Skiyohara# ATA (IDE) bus support
2201.1Skiyoharaatabus* at ata?
2211.1Skiyohara#options 	ATADEBUG
2221.1Skiyohara
2231.1Skiyohara# IDE drives
2241.1Skiyoharawd*	at atabus? drive ? flags 0x0000
2251.1Skiyohara
2261.1Skiyohara# On-chip USB 2.0 Interface
2271.1Skiyoharaehci*	at mvsoc? offset ? irq ?
2281.1Skiyohara
2291.1Skiyohara# On-chip Secure Digital Input/Output Host Controller
2301.1Skiyoharasdhc*	at mvsoc? offset ? irq ?
2311.1Skiyoharasdmmc*	at sdhc?
2321.1Skiyohara
2331.1Skiyoharald*	at sdmmc?
2341.1Skiyohara
2351.1Skiyohara# On-chip Serial Peripheral Interface (SPI)
2361.1Skiyoharamvspi*	at mvsoc? offset ? irq ?
2371.1Skiyoharaspi*	at mvspi?
2381.1Skiyohara
2391.1Skiyoharam25p0	at spi? slave 0
2401.1Skiyoharaspiflash0 at spiflashbus?
2411.1Skiyohara
2421.1Skiyohara# On-chip Two-Wire Serial Interface (TWSI)
2431.1Skiyoharagttwsi* at mvsoc? offset ? irq ?
2441.1Skiyoharaiic*	at gttwsi?
2451.1Skiyohara
2461.7Sthorpej#TDA998x at iic? addr 0x34 # HDMI transmitters
2471.7Sthorpej#Si5351A at iic? addr 0x60 # Programmable Any-Frequency CMOS Clock Generator
2481.7Sthorpej#lcdc at iic? addr 0x70
2491.1Skiyohara
2501.1Skiyohara# On-chip UART Interface
2511.1Skiyoharacom*	at mvsoc? offset ? irq ?
2521.1Skiyohara
2531.1Skiyohara# On-chip Real Time Clock (RTC)
2541.1Skiyoharamvsocrtc* at mvsoc? offset ? irq ?
2551.1Skiyohara
2561.1Skiyohara# On-chip Timers
2571.1Skiyoharamvsoctmr* at mvsoc? offset ? irq ?
2581.1Skiyohara
2591.1Skiyohara
2601.1Skiyohara# USB bus support
2611.1Skiyoharausb*	at ehci?
2621.1Skiyohara
2631.1Skiyohara# USB Hubs
2641.1Skiyoharauhub*	at usb?
2651.1Skiyoharauhub*	at uhub? port ?
2661.1Skiyohara
2671.1Skiyohara# USB HID device
2681.1Skiyoharauhidev* at uhub? port ? configuration ? interface ?
2691.1Skiyohara
2701.1Skiyohara# USB Mice
2711.1Skiyoharaums*	at uhidev? reportid ?
2721.1Skiyoharawsmouse* at ums? mux 0
2731.1Skiyohara
2741.1Skiyohara# USB Keyboards
2751.1Skiyoharaukbd*	at uhidev? reportid ?
2761.1Skiyoharawskbd*	at ukbd? console ? mux 1
2771.1Skiyohara
2781.1Skiyohara# USB Mass Storage
2791.1Skiyoharaumass*	at uhub? port ? configuration ? interface ?
2801.1Skiyoharascsibus* at scsi?
2811.1Skiyoharasd*	at scsibus? target ? lun ?	# SCSI disk drives
2821.1Skiyoharacd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
2831.1Skiyohara
2841.1Skiyohara# Serial adapters
2851.1Skiyoharauftdi*	at uhub? port ?		# FTDI FT8U100AX serial adapter
2861.1Skiyoharaucom*	at uftdi? portno ?
2871.1Skiyohara
2881.1Skiyoharauplcom* at uhub? port ? 	# I/O DATA USB-RSAQ2 serial adapter
2891.1Skiyoharaucom*	at uplcom? portno ?
2901.1Skiyohara
2911.1Skiyohara# USB Generic driver
2921.1Skiyoharaugen*	at uhub? port ?
2931.1Skiyohara
2941.1Skiyohara
2951.1Skiyohara# Pseudo-Devices
2961.1Skiyohara
2971.1Skiyoharapseudo-device	crypto			# /dev/crypto device
2981.1Skiyoharapseudo-device	swcrypto		# software crypto implementation
2991.1Skiyohara
3001.1Skiyohara# disk/mass storage pseudo-devices
3011.1Skiyoharapseudo-device	bio			# RAID control device driver
3021.1Skiyoharapseudo-device	ccd			# concatenated/striped disk devices
3031.1Skiyoharapseudo-device	cgd			# cryptographic disk devices
3041.1Skiyoharapseudo-device	raid			# RAIDframe disk driver
3051.1Skiyohara#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
3061.1Skiyohara#Options to enable various other RAIDframe RAID types.
3071.1Skiyohara#options	RF_INCLUDE_EVENODD=1
3081.1Skiyohara#options	RF_INCLUDE_RAID5_RS=1
3091.1Skiyohara#options	RF_INCLUDE_PARITYLOGGING=1
3101.1Skiyohara#options	RF_INCLUDE_CHAINDECLUSTER=1
3111.1Skiyohara#options	RF_INCLUDE_INTERDECLUSTER=1
3121.1Skiyohara#options	RF_INCLUDE_PARITY_DECLUSTERING=1
3131.1Skiyohara#options	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
3141.1Skiyoharapseudo-device	fss			# file system snapshot device
3151.1Skiyoharapseudo-device	putter			# for puffs and pud
3161.1Skiyohara
3171.1Skiyoharapseudo-device	vnd			# disk-like interface to files
3181.1Skiyoharaoptions 	VND_COMPRESSION		# compressed vnd(4)
3191.1Skiyohara
3201.1Skiyohara
3211.1Skiyohara# network pseudo-devices
3221.1Skiyoharapseudo-device	bpfilter		# Berkeley packet filter
3231.1Skiyohara#pseudo-device	carp			# Common Address Redundancy Protocol
3241.11Smaxv#pseudo-device	npf			# NPF packet filter
3251.1Skiyoharapseudo-device	loop			# network loopback
3261.1Skiyohara#pseudo-device	ifmpls			# MPLS pseudo-interface
3271.1Skiyoharapseudo-device	ppp			# Point-to-Point Protocol
3281.1Skiyoharapseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
3291.1Skiyoharapseudo-device	sl			# Serial Line IP
3301.1Skiyoharapseudo-device	strip			# Starmode Radio IP (Metricom)
3311.1Skiyoharapseudo-device	irframetty		# IrDA frame line discipline
3321.1Skiyoharapseudo-device	tun			# network tunneling over tty
3331.1Skiyoharapseudo-device	tap			# virtual Ethernet
3341.1Skiyoharapseudo-device	gre			# generic L3 over IP tunnel
3351.1Skiyoharapseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
3361.1Skiyohara#pseudo-device	faith			# IPv[46] tcp relay translation i/f
3371.1Skiyoharapseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
3381.1Skiyoharapseudo-device	vlan			# IEEE 802.1q encapsulation
3391.1Skiyoharapseudo-device	bridge			# simple inter-network bridging
3401.1Skiyohara#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
3411.1Skiyoharapseudo-device	agr			# IEEE 802.3ad link aggregation
3421.1Skiyohara#pseudo-device	npf			# NPF packet filter
3431.1Skiyohara
3441.1Skiyohara#
3451.1Skiyohara# accept filters
3461.1Skiyoharapseudo-device	accf_data		# "dataready" accept filter
3471.1Skiyoharapseudo-device	accf_http		# "httpready" accept filter
3481.1Skiyohara
3491.1Skiyohara# miscellaneous pseudo-devices
3501.1Skiyoharapseudo-device	pty			# pseudo-terminals
3511.1Skiyoharapseudo-device	sequencer		# MIDI sequencer
3521.1Skiyohara#options 	RND_COM			# use "com" randomness as well (BROKEN)
3531.1Skiyoharapseudo-device	clockctl		# user control of clock subsystem
3541.1Skiyoharapseudo-device	ksyms			# /dev/ksyms
3551.1Skiyohara
3561.1Skiyohara# a pseudo device needed for Coda	# also needs CODA (above)
3571.1Skiyoharapseudo-device	vcoda			# coda minicache <-> venus comm.
3581.1Skiyohara
3591.1Skiyohara# a pseudo device needed for SMBFS
3601.1Skiyoharapseudo-device	nsmb			# experimental - SMB requester
3611.1Skiyohara
3621.1Skiyohara# wscons pseudo-devices
3631.1Skiyoharapseudo-device	wsmux			# mouse & keyboard multiplexor
3641.1Skiyoharapseudo-device	wsfont
3651.1Skiyohara
3661.1Skiyohara# pseudo audio device driver
3671.1Skiyohara#pseudo-device	pad
3681.1Skiyohara
3691.1Skiyohara# userland interface to drivers, including autoconf and properties retrieval
3701.1Skiyoharapseudo-device	drvctl
3711.1Skiyohara
3721.1Skiyohara# Veriexec
3731.14Ssevaninclude "dev/veriexec.config"
3741.1Skiyohara
3751.1Skiyoharaoptions 	PAX_MPROTECT=0		# PaX mprotect(2) restrictions
3761.1Skiyoharaoptions 	PAX_ASLR=0		# PaX Address Space Layout Randomization
377