1266087Sian# Kernel configuration for Atmel SAM9260-EK eval board
2235348Smarius#
3235348Smarius# For more information on this file, please read the config(5) manual page,
4235348Smarius# and/or the handbook section on Kernel Configuration Files:
5235348Smarius#
6235348Smarius#    http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
7235348Smarius#
8235348Smarius# The handbook is also available locally in /usr/share/doc/handbook
9235348Smarius# if you've installed the doc distribution, otherwise always see the
10235348Smarius# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
11235348Smarius# latest information.
12235348Smarius#
13235348Smarius# An exhaustive list of options and more detailed explanations of the
14235348Smarius# device lines is also present in the ../../conf/NOTES and NOTES files.
15235348Smarius# If you are in doubt as to the purpose or necessity of a line, check first
16235348Smarius# in NOTES.
17235348Smarius#
18235348Smarius# $FreeBSD$
19235348Smarius
20266383Sian#NO_UNIVERSE
21266383Sian
22238785Simpident		SAM9260EK
23235348Smarius
24238785Simpinclude "../at91/std.sam9260ek"
25235348Smarius
26235348Smarius# To statically compile in device wiring instead of /boot/device.hints
27238785Simphints		"SAM9260EK.hints"
28235348Smarius
29235348Smarius#makeoptions	DEBUG=-g		# Build kernel with gdb(1) debug symbols
30266277Sianmakeoptions	MODULES_OVERRIDE=""
31235348Smarius
32235348Smariusoptions 	SCHED_4BSD		# 4BSD scheduler
33235348Smarius#options 	PREEMPTION		# Enable kernel thread preemption
34235348Smariusoptions 	INET			# InterNETworking
35235348Smarius#options 	INET6			# IPv6 communications protocols
36235348Smarius#options 	SCTP			# Stream Control Transmission Protocol
37235348Smariusoptions 	FFS			# Berkeley Fast Filesystem
38235348Smariusoptions 	SOFTUPDATES		# Enable FFS soft updates support
39235348Smarius#options 	UFS_ACL			# Support for access control lists
40235348Smariusoptions 	UFS_DIRHASH		# Improve performance on big directories
41235348Smarius#options 	UFS_GJOURNAL		# Enable gjournal-based UFS journaling
42235348Smarius#options 	MD_ROOT			# MD is a potential root device
43266087Sianoptions 	NANDFS			# NAND file system
44235348Smariusoptions 	NFSCL			# New Network Filesystem Client
45235348Smarius#options 	NFSD			# New Network Filesystem Server
46235348Smariusoptions 	NFSLOCKD		# Network Lock Manager
47235348Smariusoptions 	NFS_ROOT		# NFS usable as /, requires NFSCL
48266331Sianoptions 	TMPFS			# Efficient memory filesystem
49235348Smarius#options 	MSDOSFS			# MSDOS Filesystem
50235348Smarius#options 	CD9660			# ISO 9660 Filesystem
51235348Smarius#options 	PROCFS			# Process filesystem (requires PSEUDOFS)
52235348Smarius#options 	PSEUDOFS		# Pseudo-filesystem framework
53266328Sianoptions 	GEOM_PART_BSD		# BSD partition scheme
54266328Sianoptions 	GEOM_PART_MBR		# MBR partition scheme
55235348Smarius#options 	GEOM_PART_GPT		# GUID Partition Tables.
56235348Smarius#options 	GEOM_LABEL		# Provides labelization
57235348Smarius#options 	COMPAT_FREEBSD5		# Compatible with FreeBSD5
58235348Smarius#options 	COMPAT_FREEBSD6		# Compatible with FreeBSD6
59235348Smarius#options 	COMPAT_FREEBSD7		# Compatible with FreeBSD7
60235348Smariusoptions 	SCSI_DELAY=5000		# Delay (in ms) before probing SCSI
61235348Smariusoptions 	KTRACE			# ktrace(1) support
62235348Smarius#options 	STACK			# stack(9) support
63235348Smariusoptions 	SYSVSHM			# SYSV-style shared memory
64235348Smariusoptions 	SYSVMSG			# SYSV-style message queues
65235348Smariusoptions 	SYSVSEM			# SYSV-style semaphores
66235348Smariusoptions 	_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
67235348Smariusoptions 	PRINTF_BUFR_SIZE=128	# Prevent printf output being interspersed.
68235348Smarius#options 	HWPMC_HOOKS		# Necessary kernel hooks for hwpmc(4)
69235348Smarius#options 	AUDIT			# Security event auditing
70235348Smarius#options 	CAPABILITY_MODE		# Capsicum capability mode
71235348Smarius#options 	CAPABILITIES		# Capsicum capabilities
72235348Smarius#options 	MAC			# TrustedBSD MAC Framework
73235348Smarius#options 	INCLUDE_CONFIG_FILE	# Include this file in kernel
74235348Smarius
75235348Smarius# required for netbooting
76238823Simp#options 	BOOTP
77238823Simp#options 	BOOTP_COMPAT
78238823Simp#options 	BOOTP_NFSROOT
79238823Simp#options 	BOOTP_NFSV3
80238823Simp#options 	BOOTP_WIRED_TO=ate0
81235348Smarius
82235348Smarius# alternatively, boot from a MMC/SD memory card
83238823Simp#options 	ROOTDEVNAME=\"ufs:/dev/mmcsd0s1a\"
84235348Smarius
85238823Simp# Alternatively, boot from a USB card.
86238823Simpoptions 	ROOTDEVNAME=\"ufs:/dev/da0s1a\"
87238823Simp
88235348Smarius# kernel/memory size reduction
89235348Smariusoptions 	MUTEX_NOINLINE
90235348Smariusoptions 	NO_FFS_SNAPSHOT
91235348Smariusoptions 	NO_SWAPPING
92235348Smariusoptions 	NO_SYSCTL_DESCR
93235348Smariusoptions 	RWLOCK_NOINLINE
94235348Smarius
95235348Smarius# Debugging support.  Always need this:
96235348Smarius#options 	KDB			# Enable kernel debugger support.
97235348Smarius# For minimum debugger support (stable branch) use:
98235348Smarius#options 	KDB_TRACE		# Print a stack trace for a panic.
99235348Smarius# For full debugger support use this instead:
100235348Smarius#options 	DDB			# Support DDB.
101235348Smarius#options 	GDB			# Support remote GDB.
102235348Smarius#options 	DEADLKRES		# Enable the deadlock resolver
103235348Smarius#options 	INVARIANTS		# Enable calls of extra sanity checking
104235348Smarius#options 	INVARIANT_SUPPORT	# Extra sanity checks of internal structures, required by INVARIANTS
105235348Smarius#options 	WITNESS			# Enable checks to detect deadlocks and cycles
106235348Smarius#options 	WITNESS_SKIPSPIN	# Don't run witness on spinlocks for speed
107235348Smarius#options 	MALLOC_DEBUG_MAXZONES=8	# Separate malloc(9) zones
108235348Smarius
109235348Smarius# The `bpf' device enables the Berkeley Packet Filter.
110235348Smarius# Be aware of the administrative consequences of enabling this!
111235348Smarius# Note that 'bpf' is required for DHCP.
112266328Siandevice		bpf			# Berkeley packet filter
113235348Smarius
114235348Smarius# Ethernet
115266328Siandevice		mii			# Minimal MII support
116266328Siandevice		ate			# Atmel AT91 Ethernet driver
117235348Smarius
118235348Smarius# I2C
119266328Siandevice		at91_twi		# Atmel AT91 Two-wire Interface
120266328Siandevice		iic			# I2C generic I/O device driver
121266328Siandevice		iicbus			# I2C bus system
122266328Siandevice		icee			# I2C eeprom
123235348Smarius
124235348Smarius# MMC/SD
125238823Simp# See comment for DataFlash below
126266328Siandevice		at91_mci		# Atmel AT91 Multimedia Card Interface
127238823Simpoptions 	AT91_MCI_HAS_4WIRE	# 4 wires
128238823Simpoptions 	AT91_MCI_SLOT_B		# Wired to slot B
129266328Siandevice		mmc			# MMC/SD bus
130266328Siandevice		mmcsd			# MMC/SD memory card
131235348Smarius
132236497Smarius# DataFlash
133238823Simp# The DataFlash and MMC card are wired together, so we must pick one or the
134238823Simp# other.  This is due to pin mux, and also due to the design of the
135238823Simp# SAM9260EK board.  SLOT A wouldn't have this issue.
136266328Sian#device		at91_spi		# Atmel AT91 Serial Peripheral Interface
137266328Sian#device		spibus			# SPI bus
138266328Sian#device		at45d			# Atmel AT45D
139266328Sian#device		geom_map		# GEOM partition mapping
140235348Smarius
141235348Smarius# Pseudo devices.
142266328Siandevice		loop			# Network loopback
143266328Siandevice		random			# Entropy device
144266328Siandevice		ether			# Ethernet support
145266328Sian#device		vlan			# 802.1Q VLAN support
146266328Sian#device		tun			# Packet tunnel.
147266328Sian#device		md			# Memory "disks"
148266328Sian#device		gif			# IPv6 and IPv4 tunneling
149266328Sian#device		faith			# IPv6-to-IPv4 relaying (translation)
150266328Sian#device		firmware		# firmware assist module
151235348Smarius
152235348Smarius# SCSI peripherals
153266328Siandevice		scbus			# SCSI bus (required for ATA/SCSI)
154266328Sian#device		ch			# SCSI media changers
155266328Siandevice		da			# Direct Access (disks)
156266328Sian#device		sa			# Sequential Access (tape etc)
157266328Siandevice		cd			# CD/DVD
158266328Siandevice		pass			# Passthrough device (direct ATA/SCSI access)
159266328Siandevice		ses			# Enclosure Services (SES and SAF-TE)
160266328Sian#device		ctl			# CAM Target Layer
161235348Smarius
162235348Smarius# Serial (COM) ports
163266328Siandevice		uart			# Multi-uart driver
164235348Smariusoptions 	ALT_BREAK_TO_DEBUGGER
165235348Smarius
166235348Smarius# USB support
167266328Sian#options 	USB_DEBUG		# enable debug msgs
168266328Siandevice		ohci			# OHCI USB interface
169266328Siandevice		usb			# USB Bus (required)
170266328Siandevice		umass			# Disks/Mass storage - Requires scbus and da
171235348Smarius
172235348Smarius# watchdog
173266328Siandevice		at91_wdt		# Atmel AT91 Watchdog Timer
174266087Sian
175266087Sian# NAND Flash - Reference design has Samsung 256MB but others possible
176266087Siandevice		nand			# NAND interface on CS3
177266277Sian
178266277Sian# Coming soon, but not yet
179266277Sian#options 	FDT
180266277Sian#options 	FDT_DTB_STATIC
181266277Sian#makeoptions	FDT_DTS_FILE=sam9260ek.dts
182266277Sian
183266277Sianoptions 	EARLY_PRINTF
184266277Sianoptions  	SOCDEV_PA=0xfc000000
185266277Sianoptions 	SOCDEV_VA=0xdc000000
186