CUBOX revision 1.1
1# $NetBSD: CUBOX,v 1.1 2017/01/07 16:24:07 kiyohara Exp $
2#
3#	CUBOX -- SolidRun Ltd. Cubox kernel
4#
5
6include	"arch/evbarm/conf/std.marvell"
7
8#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
9
10# estimated number of users
11
12maxusers	32
13
14# Board Type
15makeoptions	BOARDTYPE="cubox"
16options 	EVBARM_BOARDTYPE=cubox
17
18# CPU options
19options 	CPU_PJ4B	# XXXX: CPU is PJ4
20options 	ARM_HAS_VBAR
21options 	FPU_VFP
22makeoptions	CPUFLAGS="-march=armv7-a -mfpu=vfpv3"
23
24# Marvell SoC options
25options 	DOVE
26
27# Standard system options
28
29options 	INSECURE	# disable kernel security levels - X needs this
30
31options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
32#options 	NTP		# NTP phase/frequency locked loop
33options 	KTRACE		# system call tracing via ktrace(1)
34
35# Note: SysV IPC parameters can be changed dynamically; see sysctl(8).
36options 	SYSVMSG		# System V-like message queues
37options 	SYSVSEM		# System V-like semaphores
38options 	SYSVSHM		# System V-like memory sharing
39
40#options 	USERCONF	# userconf(4) support
41#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
42options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
43
44# Alternate buffer queue strategies for better responsiveness under high
45# disk I/O load.
46#options 	BUFQ_READPRIO
47options 	BUFQ_PRIOCSCAN
48
49# Diagnostic/debugging support options
50#options 	VERBOSE_INIT_ARM # verbose bootstraping messages
51#options 	PERFCTRS	# performance counters
52options 	DIAGNOSTIC	# internally consistency checks
53
54#options 	DEBUG
55#options 	PMAP_DEBUG	# Enable pmap_debug_level code
56options 	LOCKDEBUG	# expensive locking checks/support
57options 	IRQSTATS	# manage IRQ statistics
58#options 	NO_POWERSAVE	# uncomment this to run under ICE
59
60#makeoptions	COPTS="-O2"
61options 	DDB			# in-kernel debugger
62#options 	DDB_KEYCODE=0x1d	# ^]
63#options 	DDB_COMMANDONENTER="bt"	# execute command when ddb is entered
64options 	DDB_ONPANIC=1		# see also sysctl(7): `ddb.onpanic'
65options 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
66options 	DDB_VERBOSE_HELP
67#options 	IPKDB			# remote kernel debugging
68#options	KGDB
69#options 	KGDB_DEVRATE=115200
70makeoptions	DEBUG="-g"		# compile full symbol table
71makeoptions	COPY_SYMTAB=1
72#options 	SYSCALL_STATS			# per syscall counts
73#options 	SYSCALL_TIMES			# per syscall times
74#options 	SYSCALL_TIMES_HASCOUNTER	# use 'broken' rdtsc (soekris)
75
76
77# Compatibility options
78options 	COMPAT_NETBSD32 # allow running arm (e.g. non-earm) binaries
79#options 	COMPAT_43	# 4.3BSD compatibility.
80#options 	COMPAT_09	# NetBSD 0.9,
81#options 	COMPAT_10	# NetBSD 1.0,
82#options 	COMPAT_11	# NetBSD 1.1,
83#options 	COMPAT_12	# NetBSD 1.2,
84#options 	COMPAT_13	# NetBSD 1.3,
85#options 	COMPAT_14	# NetBSD 1.4,
86#options 	COMPAT_15	# NetBSD 1.5,
87#options 	COMPAT_16	# NetBSD 1.6,
88#options 	COMPAT_20	# NetBSD 2.0,
89#options 	COMPAT_30	# NetBSD 3.0,
90#options 	COMPAT_40	# NetBSD 4.0,
91#options 	COMPAT_50	# NetBSD 5.0,
92options 	COMPAT_60	# NetBSD 6.0, and
93options 	COMPAT_70	# NetBSD 7.0 binary compatibility.
94#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
95
96options 	COMPAT_OSSAUDIO	# OSS (Voxware) audio driver compatibility
97#options 	COMPAT_NDIS	# NDIS network driver
98options 	COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
99
100# Wedge support
101options 	DKWEDGE_AUTODISCOVER	# Automatically add dk(4) instances
102options 	DKWEDGE_METHOD_GPT	# Supports GPT partitions as wedges
103
104# File systems
105file-system	FFS		# UFS
106file-system	MFS		# memory file system
107file-system	NFS		# Network File System client
108file-system	TMPFS		# Efficient memory file-system
109file-system	EXT2FS		# second extended file system (linux)
110file-system	LFS		# log-structured file system
111file-system	NTFS		# Windows/NT file system (experimental)
112file-system	CD9660		# ISO 9660 + Rock Ridge file system
113file-system	MSDOSFS		# MS-DOS file system
114file-system	FDESC		# /dev/fd
115file-system	KERNFS		# /kern
116file-system	NULLFS		# loopback file system
117file-system	OVERLAY		# overlay file system
118file-system	PROCFS		# /proc
119file-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
120file-system	SMBFS		# experimental - CIFS; also needs nsmb (below)
121file-system	UMAPFS		# NULLFS + uid and gid remapping
122file-system	UNION		# union file system
123file-system	CODA		# Coda File System; also needs vcoda (below)
124file-system	PTYFS		# /dev/ptm support
125#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
126#file-system	HFS		# experimental - Apple HFS+ (read-only)
127#file-system	NILFS		# experimental - NTT's NiLFS(2)
128
129# File system options
130options 	QUOTA		# legacy UFS quotas
131options 	QUOTA2		# new, in-filesystem UFS quotas
132options 	FFS_EI		# FFS Endian Independent support
133options 	WAPBL		# File system journaling support
134# Note that UFS_DIRHASH is suspected of causing kernel memory corruption.
135# It is not recommended for general use.
136#options 	UFS_DIRHASH	# UFS Large Directory Hashing - Experimental
137options 	NFSSERVER	# Network File System server
138#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
139				# immutable) behave as system flags.
140#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
141
142# Networking options
143#options 	GATEWAY		# packet forwarding
144options 	INET		# IP + ICMP + TCP + UDP
145options 	INET6		# IPv6
146options 	IPSEC		# IP security
147#options 	IPSEC_DEBUG	# debug for IP security
148#options 	MPLS		# MultiProtocol Label Switching (needs ifmpls)
149#options 	MROUTING	# IP multicast routing
150#options 	PIM		# Protocol Independent Multicast
151options 	NETATALK	# AppleTalk networking protocols
152options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
153options 	PPP_DEFLATE	# Deflate compression support for PPP
154options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
155options 	IPFILTER_LOG	# ipmon(8) log support
156options 	IPFILTER_LOOKUP	# ippool(8) support
157options 	IPFILTER_COMPAT # Compat for IP-Filter
158#options 	IPFILTER_DEFAULT_BLOCK	# block all packets by default
159#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
160
161#options 	ALTQ		# Manipulate network interfaces' output queues
162#options 	ALTQ_BLUE	# Stochastic Fair Blue
163#options 	ALTQ_CBQ	# Class-Based Queueing
164#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
165#options 	ALTQ_FIFOQ	# First-In First-Out Queue
166#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
167#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
168#options 	ALTQ_LOCALQ	# Local queueing discipline
169#options 	ALTQ_PRIQ	# Priority Queueing
170#options 	ALTQ_RED	# Random Early Detection
171#options 	ALTQ_RIO	# RED with IN/OUT
172#options 	ALTQ_WFQ	# Weighted Fair Queueing
173
174# Device options
175
176# These options enable verbose messages for several subsystems.
177# Warning, these may compile large string tables into the kernel!
178options 	MIIVERBOSE	# verbose PHY autoconfig messages
179#options 	PCIVERBOSE	# verbose PCI device autoconfig messages
180#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
181#options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
182#options 	SCSIVERBOSE	# Verbose SCSI errors
183#options 	USBVERBOSE	# verbose USB device autoconfig messages
184
185# Kernel root file system and dump configuration.
186config		netbsd	root on ? type ?
187
188options 		NFS_BOOT_BOOTP
189options 		NFS_BOOT_DHCP
190#options 		NFS_BOOT_BOOTPARAM
191#options 		NFS_BOOT_BOOTSTATIC
192#options 		NFS_BOOTSTATIC_MYIP="\"192.168.0.2\""
193#options 		NFS_BOOTSTATIC_GWIP="\"192.168.0.1\""
194#options 		NFS_BOOTSTATIC_MASK="\"255.255.255.0\""
195#options 		NFS_BOOTSTATIC_SERVADDR="\"192.168.0.3\""
196#options 		NFS_BOOTSTATIC_SERVER="\"192.168.0.3:/nfs/cubox\""
197
198
199#
200# Device configuration
201#
202
203mainbus0	at root
204
205cpu*		at mainbus?
206
207# Marvell 88AP510 Dove System-on-chip
208mvsoc0  at mainbus?
209#options 	MVSOC_CONSOLE_EARLY
210
211# On-chip Power Management Unit
212mvsocpmu* at mvsoc? offset ? irq ?
213
214# On-chip Gigabit Ethernet Controller
215mvgbec* at mvsoc? offset ?
216mvgbe*	at mvgbec? port ? irq ?
217
218# MII/PHY support
219makphy* at mii? phy ?
220
221# On-chip Cryptographic Engines and Security Accelerator (CESA)
222mvcesa* at mvsoc? offset ? irq ?
223
224# On-chip XOR DMA Engine
225gtidmac* at mvsoc? offset ? irq ?
226
227# On-chip PCI Express Interface
228mvpex*	at mvsoc? offset ? irq ?
229pci*	at mvpex?
230
231# PCI bus support
232options 	PCI_NETBSD_CONFIGURE
233#options 	PCI_CONFIG_DUMP		# verbosely dump PCI config space
234
235pchb*	at pci? dev ? function ?	# PCI-Host bridges
236
237# On-chip Serial-ATA (SATA) II Interface
238mvsata* at mvsoc? offset ? irq ?
239
240# ATA (IDE) bus support
241atabus* at ata?
242#options 	ATADEBUG
243
244# IDE drives
245wd*	at atabus? drive ? flags 0x0000
246
247# On-chip USB 2.0 Interface
248ehci*	at mvsoc? offset ? irq ?
249
250# On-chip Secure Digital Input/Output Host Controller
251sdhc*	at mvsoc? offset ? irq ?
252sdmmc*	at sdhc?
253
254ld*	at sdmmc?
255
256# On-chip Serial Peripheral Interface (SPI)
257mvspi*	at mvsoc? offset ? irq ?
258spi*	at mvspi?
259
260m25p0	at spi? slave 0
261spiflash0 at spiflashbus?
262
263# On-chip Two-Wire Serial Interface (TWSI)
264gttwsi* at mvsoc? offset ? irq ?
265iic*	at gttwsi?
266
267#TDA998x at iic? addr 0x34 # HDMI transmitters
268#Si5351A at iic? addr 0x60 # Programmable Any-Frequency CMOS Clock Generator
269#lcdc at iic? addr 0x70
270
271# On-chip UART Interface
272com*	at mvsoc? offset ? irq ?
273
274# On-chip Real Time Clock (RTC)
275mvsocrtc* at mvsoc? offset ? irq ?
276
277# On-chip Timers
278mvsoctmr* at mvsoc? offset ? irq ?
279
280
281# USB bus support
282usb*	at ehci?
283
284# USB Hubs
285uhub*	at usb?
286uhub*	at uhub? port ?
287
288# USB HID device
289uhidev* at uhub? port ? configuration ? interface ?
290
291# USB Mice
292ums*	at uhidev? reportid ?
293wsmouse* at ums? mux 0
294
295# USB Keyboards
296ukbd*	at uhidev? reportid ?
297wskbd*	at ukbd? console ? mux 1
298
299# USB Mass Storage
300umass*	at uhub? port ? configuration ? interface ?
301wd*	at umass?
302scsibus* at scsi?
303sd*	at scsibus? target ? lun ?	# SCSI disk drives
304cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
305
306# Serial adapters
307uftdi*	at uhub? port ?		# FTDI FT8U100AX serial adapter
308ucom*	at uftdi? portno ?
309
310uplcom* at uhub? port ? 	# I/O DATA USB-RSAQ2 serial adapter
311ucom*	at uplcom? portno ?
312
313# USB Generic driver
314ugen*	at uhub? port ?
315
316
317# Pseudo-Devices
318
319pseudo-device	crypto			# /dev/crypto device
320pseudo-device	swcrypto		# software crypto implementation
321
322# disk/mass storage pseudo-devices
323pseudo-device	bio			# RAID control device driver
324pseudo-device	ccd			# concatenated/striped disk devices
325pseudo-device	cgd			# cryptographic disk devices
326pseudo-device	raid			# RAIDframe disk driver
327#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
328#Options to enable various other RAIDframe RAID types.
329#options	RF_INCLUDE_EVENODD=1
330#options	RF_INCLUDE_RAID5_RS=1
331#options	RF_INCLUDE_PARITYLOGGING=1
332#options	RF_INCLUDE_CHAINDECLUSTER=1
333#options	RF_INCLUDE_INTERDECLUSTER=1
334#options	RF_INCLUDE_PARITY_DECLUSTERING=1
335#options	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
336pseudo-device	fss			# file system snapshot device
337pseudo-device	putter			# for puffs and pud
338
339pseudo-device	vnd			# disk-like interface to files
340options 	VND_COMPRESSION		# compressed vnd(4)
341
342
343# network pseudo-devices
344pseudo-device	bpfilter		# Berkeley packet filter
345#pseudo-device	carp			# Common Address Redundancy Protocol
346#pseudo-device	ipfilter		# IP filter (firewall) and NAT
347pseudo-device	loop			# network loopback
348#pseudo-device	ifmpls			# MPLS pseudo-interface
349pseudo-device	ppp			# Point-to-Point Protocol
350pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
351pseudo-device	sl			# Serial Line IP
352pseudo-device	strip			# Starmode Radio IP (Metricom)
353pseudo-device	irframetty		# IrDA frame line discipline
354pseudo-device	tun			# network tunneling over tty
355pseudo-device	tap			# virtual Ethernet
356pseudo-device	gre			# generic L3 over IP tunnel
357pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
358#pseudo-device	faith			# IPv[46] tcp relay translation i/f
359pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
360pseudo-device	vlan			# IEEE 802.1q encapsulation
361pseudo-device	bridge			# simple inter-network bridging
362#options 	BRIDGE_IPF		# bridge uses IP/IPv6 pfil hooks too
363pseudo-device	agr			# IEEE 802.3ad link aggregation
364#pseudo-device	pf			# PF packet filter
365#pseudo-device	pflog			# PF log if
366#pseudo-device	pfsync			# PF sync if
367#pseudo-device	npf			# NPF packet filter
368
369#
370# accept filters
371pseudo-device	accf_data		# "dataready" accept filter
372pseudo-device	accf_http		# "httpready" accept filter
373
374# miscellaneous pseudo-devices
375pseudo-device	pty			# pseudo-terminals
376pseudo-device	sequencer		# MIDI sequencer
377# rnd works; RND_COM does not on port i386 yet.
378#options 	RND_COM			# use "com" randomness as well (BROKEN)
379pseudo-device	clockctl		# user control of clock subsystem
380pseudo-device	ksyms			# /dev/ksyms
381
382# a pseudo device needed for Coda	# also needs CODA (above)
383pseudo-device	vcoda			# coda minicache <-> venus comm.
384
385# a pseudo device needed for SMBFS
386pseudo-device	nsmb			# experimental - SMB requester
387
388# wscons pseudo-devices
389pseudo-device	wsmux			# mouse & keyboard multiplexor
390pseudo-device	wsfont
391
392# pseudo audio device driver
393#pseudo-device	pad
394
395# userland interface to drivers, including autoconf and properties retrieval
396pseudo-device	drvctl
397
398options 	FILEASSOC		# fileassoc(9) - required for Veriexec
399
400# Veriexec
401#
402# a pseudo device needed for veriexec
403pseudo-device	veriexec
404#
405# Uncomment the fingerprint methods below that are desired. Note that
406# removing fingerprint methods will have almost no impact on the kernel
407# code size.
408#
409options VERIFIED_EXEC_FP_RMD160
410options VERIFIED_EXEC_FP_SHA256
411options VERIFIED_EXEC_FP_SHA384
412options VERIFIED_EXEC_FP_SHA512
413options VERIFIED_EXEC_FP_SHA1
414options VERIFIED_EXEC_FP_MD5
415
416options 	PAX_MPROTECT=0		# PaX mprotect(2) restrictions
417options 	PAX_ASLR=0		# PaX Address Space Layout Randomization
418