Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

#
#	$NetBSD: GENERIC.common,v 1.51 2023/02/06 12:59:13 simonb Exp $
#
#	GENERIC evbarm kernel config (template)
#

# estimated number of users

maxusers	32

# Standard system options

options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
options 	NTP		# NTP phase/frequency locked loop

# CPU options
#options 	PMAPCOUNTERS
options 	BUSDMA_COUNTERS

# Architecture options

# File systems
include "conf/filesystems.config"
no file-system 	LFS
no file-system 	CODA
no pseudo-device vcoda

# File system options
# ffs
options 	FFS_EI		# FFS Endian Independent support
#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
options 	QUOTA		# legacy UFS quotas
options 	QUOTA2		# new, in-filesystem UFS quotas
options 	UFS_ACL		# UFS Access Control Lists
options 	UFS_DIRHASH	# UFS Large Directory Hashing
options 	UFS_EXTATTR	# Extended attribute support for UFS1
options 	WAPBL		# File system journaling support
# lfs
#options 	LFS_DIRHASH	# LFS version of UFS_DIRHASH
# ext2fs
#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
				# immutable) behave as system flags.
# other
options 	DISKLABEL_EI	# disklabel Endian Independent support
options 	NFSSERVER	# Network File System server

# Networking options

#options 	GATEWAY		# packet forwarding
options 	INET		# IP + ICMP + TCP + UDP
options 	INET6		# IPV6
options 	IPSEC		# IP security
#options 	IPSEC_DEBUG	# debug for IP security
#options 	MROUTING	# IP multicast routing
#options 	PIM		# Protocol Independent Multicast
#options 	NETATALK	# AppleTalk networking
options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
options 	PPP_DEFLATE	# Deflate compression support for PPP
options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG

# JIT compiler for bpfilter
#options 	SLJIT
options 	BPFJIT

#options 	NFS_BOOT_BOOTP
options 	NFS_BOOT_DHCP
#options 	NFS_BOOT_BOOTSTATIC
#options 	NFS_BOOTSTATIC_MYIP="\"192.168.1.4\""
#options 	NFS_BOOTSTATIC_GWIP="\"192.168.1.1\""
#options 	NFS_BOOTSTATIC_MASK="\"255.255.255.0\""
#options 	NFS_BOOTSTATIC_SERVADDR="\"192.168.1.1\""
#options 	NFS_BOOTSTATIC_SERVER="\"192.168.1.1:/nfs/sdp2430\""

options 	NFS_BOOT_RWSIZE=1024

# Compatibility options

include 	"conf/compat_netbsd60.config"
options 	COMPAT_NETBSD32	# allow running arm (e.g. non-earm) binaries
				# on arm or arm binaries on arm64

# Shared memory options

options 	SYSVMSG		# System V-like message queues
options 	SYSVSEM		# System V-like semaphores
#options 	SEMMNI=10	# number of semaphore identifiers
#options 	SEMMNS=60	# number of semaphores in system
#options 	SEMUME=10	# max number of undo entries per process
#options 	SEMMNU=30	# number of undo structures in system
options 	SYSVSHM		# System V-like memory sharing

# Device options

#options 	MEMORY_DISK_HOOKS	# boottime setup of ramdisk
#options 	MEMORY_DISK_ROOT_SIZE=8192	# Size in blocks
#options 	MEMORY_DISK_DYNAMIC
#options 	MINIROOTSIZE=1000	# Size in blocks
#options 	MEMORY_DISK_IS_ROOT	# use memory disk as root
#options 	MEMORY_DISK_FBFLAGS=RB_SINGLE

# Miscellaneous kernel options
options 	KTRACE			# system call tracing, a la ktrace(1)
#options 	SCSIVERBOSE		# Verbose SCSI errors
#options 	MIIVERBOSE		# Verbose MII autoconfuration messages
options 	USERCONF		# userconf(4) support
#options 	PIPE_SOCKETPAIR		# smaller, but slower pipe(2)

# Wedge support
options 	DKWEDGE_AUTODISCOVER	# Automatically add dk(4) instances
options 	DKWEDGE_METHOD_GPT	# Supports GPT partitions as wedges

# Alternate buffer queue strategies for better responsiveness under high
# disk I/O load.
#options 	BUFQ_READPRIO
options 	BUFQ_PRIOCSCAN

# Development and Debugging options

options 	DIAGNOSTIC	# internal consistency checks
#options 	DEBUG
options 	KDTRACE_HOOKS	# kernel DTrace hooks
#options 	LOCKDEBUG
#options 	UVMHIST		# kernhist for uvm/pmap subsystems
#options 	VERBOSE_INIT_ARM # verbose bootstraping messages
options 	DDB		# in-kernel debugger
options 	DDB_ONPANIC=1
options 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
#options 	DDB_COMMANDONENTER="bt"
#options 	KGDB

# Pseudo-Devices

# crypto pseudo-devices
pseudo-device	crypto			# /dev/crypto device
pseudo-device	swcrypto		# software crypto implementation

# disk/mass storage pseudo-devices
#pseudo-device	md			# memory disk device (ramdisk)
pseudo-device	vnd			# disk-like interface to files
options 	VND_COMPRESSION		# compressed vnd(4)
pseudo-device	fss			# file system snapshot device
pseudo-device	drvctl			# driver control
pseudo-device	cgd			# cryptographic disk devices
pseudo-device	raid			# RAIDframe disk driver
options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
#Options to enable various other RAIDframe RAID types.
#options 	RF_INCLUDE_EVENODD=1
#options 	RF_INCLUDE_RAID5_RS=1
#options 	RF_INCLUDE_PARITYLOGGING=1
#options 	RF_INCLUDE_CHAINDECLUSTER=1
#options 	RF_INCLUDE_INTERDECLUSTER=1
#options 	RF_INCLUDE_PARITY_DECLUSTERING=1
#options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1

# network pseudo-devices
pseudo-device	bpfilter		# Berkeley packet filter
pseudo-device 	carp			# Common Address Redundancy Protocol
pseudo-device	loop			# network loopback
pseudo-device	bridge			# simple inter-network bridging
pseudo-device	vether			# Virtual Ethernet for bridge
pseudo-device	vlan			# IEEE 802.1q encapsulation
pseudo-device	ppp			# Point-to-Point Protocol
pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
pseudo-device	tun			# network tunneling over tty
pseudo-device	tap			# virtual Ethernet
pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC 1933)
pseudo-device	ipsecif			# interface for routing-based ipsec
pseudo-device	gre			# generic L3 over IP tunnel
pseudo-device	npf			# NPF packet filter

# miscellaneous pseudo-devices
pseudo-device	pad			# pseudo audio device
pseudo-device	pty			# pseudo-terminals
#options 	RND_COM
pseudo-device	clockctl		# user control of clock subsystem
pseudo-device	ksyms			# /dev/ksyms
pseudo-device	lockstat		# lock profiling
pseudo-device 	swwdog			# software watchdog timer -- swwdog(4)

include "dev/veriexec.config"

options 	PAX_ASLR_DEBUG=1	# PaX ASLR debug
options 	PAX_SEGVGUARD=0		# PaX Segmentation fault guard
options 	PAX_MPROTECT=1		# PaX mprotect(2) restrictions
options 	PAX_MPROTECT_DEBUG=1	# PaX mprotect debug
options 	PAX_ASLR=1		# PaX Address Space Layout Randomization