SAM9260EK revision 266331
157580Smjacob# Kernel configuration for Atmel SAM9260-EK eval board
257580Smjacob#
357580Smjacob# For more information on this file, please read the config(5) manual page,
457580Smjacob# and/or the handbook section on Kernel Configuration Files:
557580Smjacob#
657580Smjacob#    http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
757580Smjacob#
857580Smjacob# The handbook is also available locally in /usr/share/doc/handbook
957580Smjacob# if you've installed the doc distribution, otherwise always see the
1057580Smjacob# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
1157580Smjacob# latest information.
1257580Smjacob#
1357580Smjacob# An exhaustive list of options and more detailed explanations of the
1457580Smjacob# device lines is also present in the ../../conf/NOTES and NOTES files.
1557580Smjacob# If you are in doubt as to the purpose or necessity of a line, check first
1657580Smjacob# in NOTES.
1757580Smjacob#
1857580Smjacob# $FreeBSD: stable/10/sys/arm/conf/SAM9260EK 266331 2014-05-17 17:34:37Z ian $
1957580Smjacob
2057580Smjacobident		SAM9260EK
2157580Smjacob
2257580Smjacobinclude "../at91/std.sam9260ek"
2357580Smjacob
2457580Smjacob# To statically compile in device wiring instead of /boot/device.hints
2557580Smjacobhints		"SAM9260EK.hints"
2657580Smjacob
2757580Smjacob#makeoptions	DEBUG=-g		# Build kernel with gdb(1) debug symbols
2857580Smjacobmakeoptions	MODULES_OVERRIDE=""
2957580Smjacob
3057580Smjacoboptions 	SCHED_4BSD		# 4BSD scheduler
3157580Smjacob#options 	PREEMPTION		# Enable kernel thread preemption
3257580Smjacoboptions 	INET			# InterNETworking
3357580Smjacob#options 	INET6			# IPv6 communications protocols
3457580Smjacob#options 	SCTP			# Stream Control Transmission Protocol
3557580Smjacoboptions 	FFS			# Berkeley Fast Filesystem
36235911Smavoptions 	SOFTUPDATES		# Enable FFS soft updates support
37235911Smav#options 	UFS_ACL			# Support for access control lists
3857580Smjacoboptions 	UFS_DIRHASH		# Improve performance on big directories
3957580Smjacob#options 	UFS_GJOURNAL		# Enable gjournal-based UFS journaling
40198929Sdelphij#options 	MD_ROOT			# MD is a potential root device
4157580Smjacoboptions 	NANDFS			# NAND file system
4257580Smjacoboptions 	NFSCL			# New Network Filesystem Client
43235911Smav#options 	NFSD			# New Network Filesystem Server
44235911Smavoptions 	NFSLOCKD		# Network Lock Manager
4557580Smjacoboptions 	NFS_ROOT		# NFS usable as /, requires NFSCL
46198934Sdelphijoptions 	TMPFS			# Efficient memory filesystem
4757580Smjacob#options 	MSDOSFS			# MSDOS Filesystem
4857580Smjacob#options 	CD9660			# ISO 9660 Filesystem
49198934Sdelphij#options 	PROCFS			# Process filesystem (requires PSEUDOFS)
5057580Smjacob#options 	PSEUDOFS		# Pseudo-filesystem framework
51235911Smavoptions 	GEOM_PART_BSD		# BSD partition scheme
52235911Smavoptions 	GEOM_PART_MBR		# MBR partition scheme
53235911Smav#options 	GEOM_PART_GPT		# GUID Partition Tables.
54235911Smav#options 	GEOM_LABEL		# Provides labelization
5557580Smjacob#options 	COMPAT_FREEBSD5		# Compatible with FreeBSD5
5657580Smjacob#options 	COMPAT_FREEBSD6		# Compatible with FreeBSD6
5757580Smjacob#options 	COMPAT_FREEBSD7		# Compatible with FreeBSD7
5857580Smjacoboptions 	SCSI_DELAY=5000		# Delay (in ms) before probing SCSI
5957580Smjacoboptions 	KTRACE			# ktrace(1) support
6057580Smjacob#options 	STACK			# stack(9) support
6157580Smjacoboptions 	SYSVSHM			# SYSV-style shared memory
6257580Smjacoboptions 	SYSVMSG			# SYSV-style message queues
6357580Smjacoboptions 	SYSVSEM			# SYSV-style semaphores
6457580Smjacoboptions 	_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
6557580Smjacoboptions 	PRINTF_BUFR_SIZE=128	# Prevent printf output being interspersed.
6657580Smjacob#options 	HWPMC_HOOKS		# Necessary kernel hooks for hwpmc(4)
6757580Smjacob#options 	AUDIT			# Security event auditing
6857580Smjacob#options 	CAPABILITY_MODE		# Capsicum capability mode
6957580Smjacob#options 	CAPABILITIES		# Capsicum capabilities
7057580Smjacob#options 	MAC			# TrustedBSD MAC Framework
7157580Smjacob#options 	INCLUDE_CONFIG_FILE	# Include this file in kernel
7257580Smjacob
7357580Smjacob# required for netbooting
7457580Smjacob#options 	BOOTP
7557580Smjacob#options 	BOOTP_COMPAT
7657580Smjacob#options 	BOOTP_NFSROOT
7757580Smjacob#options 	BOOTP_NFSV3
7857580Smjacob#options 	BOOTP_WIRED_TO=ate0
7957580Smjacob
8057580Smjacob# alternatively, boot from a MMC/SD memory card
81235911Smav#options 	ROOTDEVNAME=\"ufs:/dev/mmcsd0s1a\"
82235911Smav
8357580Smjacob# Alternatively, boot from a USB card.
8457580Smjacoboptions 	ROOTDEVNAME=\"ufs:/dev/da0s1a\"
8557580Smjacob
86235911Smav# kernel/memory size reduction
87235911Smavoptions 	MUTEX_NOINLINE
8857580Smjacoboptions 	NO_FFS_SNAPSHOT
8957580Smjacoboptions 	NO_SWAPPING
9057580Smjacoboptions 	NO_SYSCTL_DESCR
9157580Smjacoboptions 	RWLOCK_NOINLINE
9257580Smjacob
9357580Smjacob# Debugging support.  Always need this:
9457580Smjacob#options 	KDB			# Enable kernel debugger support.
9557580Smjacob# For minimum debugger support (stable branch) use:
9657580Smjacob#options 	KDB_TRACE		# Print a stack trace for a panic.
9757580Smjacob# For full debugger support use this instead:
9857580Smjacob#options 	DDB			# Support DDB.
9957580Smjacob#options 	GDB			# Support remote GDB.
10057580Smjacob#options 	DEADLKRES		# Enable the deadlock resolver
10157580Smjacob#options 	INVARIANTS		# Enable calls of extra sanity checking
10257580Smjacob#options 	INVARIANT_SUPPORT	# Extra sanity checks of internal structures, required by INVARIANTS
10357580Smjacob#options 	WITNESS			# Enable checks to detect deadlocks and cycles
10457580Smjacob#options 	WITNESS_SKIPSPIN	# Don't run witness on spinlocks for speed
10557580Smjacob#options 	MALLOC_DEBUG_MAXZONES=8	# Separate malloc(9) zones
10657580Smjacob
10757580Smjacob# The `bpf' device enables the Berkeley Packet Filter.
10857580Smjacob# Be aware of the administrative consequences of enabling this!
10957580Smjacob# Note that 'bpf' is required for DHCP.
11057580Smjacobdevice		bpf			# Berkeley packet filter
11157580Smjacob
11257580Smjacob# Ethernet
11357580Smjacobdevice		mii			# Minimal MII support
11457580Smjacobdevice		ate			# Atmel AT91 Ethernet driver
11557580Smjacob
11657580Smjacob# I2C
11757580Smjacobdevice		at91_twi		# Atmel AT91 Two-wire Interface
11857580Smjacobdevice		iic			# I2C generic I/O device driver
11957580Smjacobdevice		iicbus			# I2C bus system
12057580Smjacobdevice		icee			# I2C eeprom
121235911Smav
12257580Smjacob# MMC/SD
12357580Smjacob# See comment for DataFlash below
12457580Smjacobdevice		at91_mci		# Atmel AT91 Multimedia Card Interface
12557580Smjacoboptions 	AT91_MCI_HAS_4WIRE	# 4 wires
12657580Smjacoboptions 	AT91_MCI_SLOT_B		# Wired to slot B
127235911Smavdevice		mmc			# MMC/SD bus
128235911Smavdevice		mmcsd			# MMC/SD memory card
12957580Smjacob
13057580Smjacob# DataFlash
13157580Smjacob# The DataFlash and MMC card are wired together, so we must pick one or the
13257580Smjacob# other.  This is due to pin mux, and also due to the design of the
133235911Smav# SAM9260EK board.  SLOT A wouldn't have this issue.
134235911Smav#device		at91_spi		# Atmel AT91 Serial Peripheral Interface
135235911Smav#device		spibus			# SPI bus
13657580Smjacob#device		at45d			# Atmel AT45D
13757580Smjacob#device		geom_map		# GEOM partition mapping
13857580Smjacob
139235911Smav# Pseudo devices.
140235911Smavdevice		loop			# Network loopback
141235911Smavdevice		random			# Entropy device
142235911Smavdevice		ether			# Ethernet support
143235911Smav#device		vlan			# 802.1Q VLAN support
144235911Smav#device		tun			# Packet tunnel.
145235911Smav#device		md			# Memory "disks"
14657580Smjacob#device		gif			# IPv6 and IPv4 tunneling
14757580Smjacob#device		faith			# IPv6-to-IPv4 relaying (translation)
148235911Smav#device		firmware		# firmware assist module
149235911Smav
150235911Smav# SCSI peripherals
151235911Smavdevice		scbus			# SCSI bus (required for ATA/SCSI)
152235911Smav#device		ch			# SCSI media changers
153235911Smavdevice		da			# Direct Access (disks)
154235911Smav#device		sa			# Sequential Access (tape etc)
155235911Smavdevice		cd			# CD/DVD
156235911Smavdevice		pass			# Passthrough device (direct ATA/SCSI access)
157235911Smavdevice		ses			# Enclosure Services (SES and SAF-TE)
158235911Smav#device		ctl			# CAM Target Layer
159235911Smav
160235911Smav# Serial (COM) ports
161235911Smavdevice		uart			# Multi-uart driver
162235911Smavoptions 	ALT_BREAK_TO_DEBUGGER
163235911Smav
164235911Smav# USB support
165235911Smav#options 	USB_DEBUG		# enable debug msgs
166235911Smavdevice		ohci			# OHCI USB interface
167235911Smavdevice		usb			# USB Bus (required)
168235911Smavdevice		umass			# Disks/Mass storage - Requires scbus and da
169235911Smav
170235911Smav# watchdog
171235911Smavdevice		at91_wdt		# Atmel AT91 Watchdog Timer
172235911Smav
173235911Smav# NAND Flash - Reference design has Samsung 256MB but others possible
174235911Smavdevice		nand			# NAND interface on CS3
175235911Smav
176235911Smav# Coming soon, but not yet
177235911Smav#options 	FDT
178235911Smav#options 	FDT_DTB_STATIC
17957580Smjacob#makeoptions	FDT_DTS_FILE=sam9260ek.dts
18057580Smjacob
18157580Smjacoboptions 	EARLY_PRINTF
18257580Smjacoboptions  	SOCDEV_PA=0xfc000000
18357580Smjacoboptions 	SOCDEV_VA=0xdc000000
18457580Smjacob