2 # ERL - EdgeRouter Lite kernel config
3 # Based on configuration from http://rtfm.net/FreeBSD/ERL
5 # For more information on this file, please read the config(5) manual page,
6 # and/or the handbook section on Kernel Configuration Files:
8 # http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
10 # The handbook is also available locally in /usr/share/doc/handbook
11 # if you've installed the doc distribution, otherwise always see the
12 # FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
15 # An exhaustive list of options and more detailed explanations of the
16 # device lines is also present in the ../../conf/NOTES and NOTES files.
17 # If you are in doubt as to the purpose or necessity of a line, check first
24 makeoptions ARCH_FLAGS="-march=octeon -mabi=64"
25 makeoptions LDSCRIPT_NAME=ldscript.mips.octeon1
27 # Don't build any modules yet.
28 makeoptions MODULES_OVERRIDE=""
29 makeoptions KERNLOADADDR=0xffffffff80100000
31 # We don't need to build a trampolined version of the kernel.
32 makeoptions WITHOUT_KERNEL_TRAMPOLINE=1
34 include "../cavium/std.octeon1"
36 hints "OCTEON1.hints" #Default places to look for devices.
38 makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
40 # Board-specific support that cannot be auto-detected at runtime.
41 #options OCTEON_VENDOR_LANNER # Support for Lanner boards.
42 #options OCTEON_VENDOR_RADISYS # Support for Radisys boards.
43 options OCTEON_VENDOR_UBIQUITI # Support for Ubiquiti boards.
44 #options OCTEON_VENDOR_GEFES # Support for GE LANIC boards
45 #options OCTEON_BOARD_CAPK_0100ND # Support for CAPK-0100nd.
47 # Compile for a specified Octeon model. If not specified, support for
48 # detection at runtime will be used instead, which may give inferior
51 # See sys/contrib/octeon-sdk/octeon-model.h for possible values.
52 options OCTEON_MODEL=OCTEON_CN50XX_PASS1
54 options SCHED_ULE # ULE scheduler
55 options PREEMPTION # Enable kernel thread preemption
56 options INET # InterNETworking
57 options INET6 # IPv6 communications protocols
58 options SCTP # Stream Control Transmission Protocol
59 options FFS # Berkeley Fast Filesystem
60 options SOFTUPDATES # Enable FFS soft updates support
61 options UFS_ACL # Support for access control lists
62 options UFS_DIRHASH # Improve performance on big directories
63 options UFS_GJOURNAL # Enable gjournal-based UFS journaling
64 options MD_ROOT # MD is a potential root device
65 options NFSCL # Network Filesystem Client
66 options NFSD # Network Filesystem Server
67 options NFSLOCKD # Network Lock Manager
68 options NFS_ROOT # NFS usable as /, requires NFSCL
69 options MSDOSFS # MSDOS Filesystem
70 options CD9660 # ISO 9660 Filesystem
71 options PROCFS # Process filesystem (requires PSEUDOFS)
72 options PSEUDOFS # Pseudo-filesystem framework
73 options GEOM_PART_GPT # GUID Partition Tables.
74 options GEOM_LABEL # Provides labelization
75 options COMPAT_FREEBSD32 # Compatible with o32 binaries
76 options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI
77 options KTRACE # ktrace(1) support
78 options STACK # stack(9) support
79 options SYSVSHM # SYSV-style shared memory
80 options SYSVMSG # SYSV-style message queues
81 options SYSVSEM # SYSV-style semaphores
82 options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
83 options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed.
84 options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4)
85 options AUDIT # Security event auditing
86 options MAC # TrustedBSD MAC Framework
87 #options KDTRACE_FRAME # Ensure frames are compiled in
88 #options KDTRACE_HOOKS # Kernel DTrace hooks
89 options INCLUDE_CONFIG_FILE # Include this file in kernel
90 options NO_SWAPPING # Disable support for paging
91 options TMPFS # Temporary file system
93 # Debugging for use in -current
94 #options KDB # Enable kernel debugger support.
95 #options DDB # Support DDB.
96 #options GDB # Support remote GDB.
97 #options DEADLKRES # Enable the deadlock resolver
98 #options INVARIANTS # Enable calls of extra sanity checking
99 #options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS
100 #options WITNESS # Enable checks to detect deadlocks and cycles
101 #options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed
102 #options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones
104 # Make an SMP-capable kernel by default
105 options SMP # Symmetric MultiProcessor Kernel
107 options ROOTDEVNAME=\"ufs:da0s2a\" # Default root filesystem.
109 # ATA/SCSI peripherals
110 device scbus # SCSI bus (required for ATA/SCSI)
111 device ch # SCSI media changers
112 device da # Direct Access (disks)
113 device sa # Sequential Access (tape etc)
115 device pass # Passthrough device (direct ATA/SCSI access)
116 device ses # Enclosure Services (SES and SAF-TE)
119 device uart # Generic UART driver
121 # On-board Cavium Octeon Ethernet.
122 # NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
125 # Cavium Octeon management Ethernet.
128 # Switch PHY support for the octe driver. These currently present a VLAN per
129 # physical port, but may eventually provide support for DSA or similar instead.
130 #device mv88e61xxphy # Marvell 88E61XX
133 device wlan # 802.11 support
134 options IEEE80211_DEBUG # enable debug msgs
135 options IEEE80211_AMPDU_AGE # age frames in AMPDU reorder q's
136 options IEEE80211_SUPPORT_MESH # enable 802.11s draft support
137 device wlan_wep # 802.11 WEP support
138 device wlan_ccmp # 802.11 CCMP support
139 device wlan_tkip # 802.11 TKIP support
140 device wlan_amrr # AMRR transmit rate control algorithm
141 #device ath # Atheros NIC's
142 #device ath_pci # Atheros pci/cardbus glue
143 #device ath_hal # pci/cardbus chip support
144 #options AH_SUPPORT_AR5416 # enable AR5416 tx/rx descriptors
145 #device ath_rate_sample # SampleRate tx rate control for ath
148 device loop # Network loopback
149 device random # Entropy device
150 device ether # Ethernet support
151 device vlan # 802.1Q VLAN support
152 device tun # Packet tunnel.
153 device md # Memory "disks"
154 device gif # IPv6 and IPv4 tunneling
155 device firmware # firmware assist module
157 # The `bpf' device enables the Berkeley Packet Filter.
158 # Be aware of the administrative consequences of enabling this!
159 # Note that 'bpf' is required for DHCP.
160 device bpf # Berkeley packet filter
162 # Hardware watchdog support.
163 #device octeon_wdog # Octeon hardware watchdog
166 options USB_DEBUG # enable debug msgs
167 device octusb # Cavium Octeon on-board USB interface (USB 2.0)
168 device uhci # UHCI PCI->USB interface
169 device ohci # OHCI PCI->USB interface
170 device ehci # EHCI PCI->USB interface (USB 2.0)
171 device usb # USB Bus (required)
172 #device udbp # USB Double Bulk Pipe devices
173 device uhid # "Human Interface Devices"
174 device ulpt # Printer
175 device umass # Disks/Mass storage - Requires scbus and da
177 device urio # Diamond Rio 500 MP3 player
179 device u3g # USB-based 3G modems (Option, Huawei, Sierra)
180 device uark # Technologies ARK3116 based serial adapters
181 device ubsa # Belkin F5U103 and compatible serial adapters
182 device uftdi # For FTDI usb serial adapters
183 device uipaq # Some WinCE based devices
184 device uplcom # Prolific PL-2303 serial adapters
185 device uslcom # SI Labs CP2101/CP2102 serial adapters
186 device uvisor # Visor and Palm devices
187 device uvscom # USB serial support for DDI pocket's PHS
188 # USB Ethernet, requires miibus
189 device miibus # MII bus support
190 device aue # ADMtek USB Ethernet
191 device axe # ASIX Electronics USB Ethernet
192 device cdce # Generic USB over Ethernet
193 device cue # CATC USB Ethernet
194 device kue # Kawasaki LSI USB Ethernet
195 device rue # RealTek RTL8150 USB Ethernet
196 device udav # Davicom DM9601E USB
198 device rum # Ralink Technology RT2501USB wireless NICs
199 device uath # Atheros AR5523 wireless NICs
200 device ural # Ralink Technology RT2500USB wireless NICs
201 device zyd # ZyDAS zd1211/zd1211b wireless NICs
204 device crypto # core crypto support
205 device cryptodev # /dev/crypto for access to h/w
206 device cryptocteon # Octeon coprocessor 2 crypto offload