1#
2# RPI-B -- Custom configuration for the Raspberry Pi
3#
4# For more information on this file, please read the config(5) manual page,
5# and/or the handbook section on Kernel Configuration Files:
6#
7#    http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
8#
9# The handbook is also available locally in /usr/share/doc/handbook
10# if you've installed the doc distribution, otherwise always see the
11# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
12# latest information.
13#
14# An exhaustive list of options and more detailed explanations of the
15# device lines is also present in the ../../conf/NOTES and NOTES files.
16# If you are in doubt as to the purpose or necessity of a line, check first
17# in NOTES.
18#
19# $FreeBSD: releng/10.2/sys/arm/conf/RPI-B 285132 2015-07-04 14:50:32Z gjb $
20
21ident		RPI-B
22
23include		"../broadcom/bcm2835/std.rpi"
24
25options 	HZ=100
26options 	SCHED_4BSD		# 4BSD scheduler
27options 	PREEMPTION		# Enable kernel thread preemption
28options 	INET			# InterNETworking
29options 	INET6			# IPv6 communications protocols
30options 	SCTP			# Stream Control Transmission Protocol
31options 	FFS			# Berkeley Fast Filesystem
32options 	SOFTUPDATES		# Enable FFS soft updates support
33options 	UFS_ACL			# Support for access control lists
34options 	UFS_DIRHASH		# Improve performance on big directories
35options 	UFS_GJOURNAL		# Enable gjournal-based UFS journaling
36options 	QUOTA			# Enable disk quotas for UFS
37options 	NFSCL			# New Network Filesystem Client
38options 	NFSLOCKD		# Network Lock Manager
39options 	NFS_ROOT		# NFS usable as /, requires NFSCL
40options 	MSDOSFS			# MSDOS Filesystem
41options 	CD9660			# ISO 9660 Filesystem
42options 	PROCFS			# Process filesystem (requires PSEUDOFS)
43options 	PSEUDOFS		# Pseudo-filesystem framework
44options 	TMPFS			# Efficient memory filesystem
45options 	GEOM_PART_GPT		# GUID Partition Tables
46options 	GEOM_PART_BSD		# BSD partition scheme
47options 	GEOM_PART_MBR		# MBR partition scheme
48options 	GEOM_LABEL		# Provides labelization 
49options 	COMPAT_43		# Compatible with BSD 4.3 [KEEP THIS!]
50options 	SCSI_DELAY=5000		# Delay (in ms) before probing SCSI
51options 	KTRACE			# ktrace(1) support
52options 	SYSVSHM			# SYSV-style shared memory
53options 	SYSVMSG			# SYSV-style message queues
54options 	SYSVSEM			# SYSV-style semaphores
55options 	_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
56options 	KBD_INSTALL_CDEV	# install a CDEV entry in /dev
57options 	FREEBSD_BOOT_LOADER	# Process metadata passed from loader(8)
58options 	VFP			# Enable floating point hardware support
59
60# Debugging for use in -current
61makeoptions	DEBUG=-g		# Build kernel with gdb(1) debug symbols
62options 	BREAK_TO_DEBUGGER
63options 	ALT_BREAK_TO_DEBUGGER
64#options 	VERBOSE_SYSINIT		# Enable verbose sysinit messages
65options 	KDB			# Enable kernel debugger support
66# For minimum debugger support (stable branch) use:
67#options 	KDB_TRACE		# Print a stack trace for a panic
68# For full debugger support use this instead:
69options 	DDB			# Enable the kernel debugger
70options 	INVARIANTS		# Enable calls of extra sanity checking
71options 	INVARIANT_SUPPORT	# Extra sanity checks of internal structures, required by INVARIANTS
72#options 	WITNESS			# Enable checks to detect deadlocks and cycles
73#options 	WITNESS_SKIPSPIN	# Don't run witness on spinlocks for speed
74#options 	DIAGNOSTIC
75
76# NFS root from boopt/dhcp
77#options 	BOOTP
78#options 	BOOTP_NFSROOT
79#options 	BOOTP_COMPAT
80#options 	BOOTP_NFSV3
81#options 	BOOTP_WIRED_TO=ue0
82
83#options 	ROOTDEVNAME=\"ufs:mmcsd0s2\"
84
85device		bpf
86device		loop
87device		ether
88device		uart
89device		pty
90device		snp
91device		pl011
92
93# Comment following lines for boot console on serial port
94device		vt
95device		kbdmux
96device		ukbd
97
98device		sdhci
99device		mmc
100device		mmcsd
101
102device		gpio
103device		gpioled
104
105# I2C
106device		iic
107device		iicbus
108device		bcm2835_bsc
109
110options 	KDB
111options 	DDB			# Enable the kernel debugger
112#options 	INVARIANTS		# Enable calls of extra sanity checking
113#options 	INVARIANT_SUPPORT	# Extra sanity checks of internal structures, required by INVARIANTS
114
115device		md
116device		random			# Entropy device
117
118# USB support
119device		usb
120options 	USB_DEBUG
121device		dwcotg			# DWC OTG controller
122
123# USB storage support
124device		scbus
125device		da
126device		umass
127
128# USB ethernet support
129device		smcphy
130device		mii
131device		smsc
132
133# SPI
134device		spibus
135device		bcm2835_spi
136
137# Flattened Device Tree
138options 	FDT			# Configure using FDT/DTB data
139# Note:  DTB is normally loaded and modified by RPi boot loader, then
140# handed to kernel via U-Boot and ubldr.
141#options 	FDT_DTB_STATIC
142#makeoptions	FDT_DTS_FILE=rpi.dts
143makeoptions	MODULES_EXTRA=dtb/rpi
144