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 TCP_HHOOK # hhook(9) framework for TCP
59 options SCTP # Stream Control Transmission Protocol
60 options FFS # Berkeley Fast Filesystem
61 options SOFTUPDATES # Enable FFS soft updates support
62 options UFS_ACL # Support for access control lists
63 options UFS_DIRHASH # Improve performance on big directories
64 options UFS_GJOURNAL # Enable gjournal-based UFS journaling
65 options MD_ROOT # MD is a potential root device
66 options NFSCL # Network Filesystem Client
67 options NFSD # Network Filesystem Server
68 options NFSLOCKD # Network Lock Manager
69 options NFS_ROOT # NFS usable as /, requires NFSCL
70 options MSDOSFS # MSDOS Filesystem
71 options CD9660 # ISO 9660 Filesystem
72 options PROCFS # Process filesystem (requires PSEUDOFS)
73 options PSEUDOFS # Pseudo-filesystem framework
74 options GEOM_PART_GPT # GUID Partition Tables.
75 options GEOM_LABEL # Provides labelization
76 options COMPAT_FREEBSD32 # Compatible with o32 binaries
77 options COMPAT_FREEBSD10 # Compatible with FreeBSD10
78 options COMPAT_FREEBSD11 # Compatible with FreeBSD11
79 options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI
80 options KTRACE # ktrace(1) support
81 options STACK # stack(9) support
82 options SYSVSHM # SYSV-style shared memory
83 options SYSVMSG # SYSV-style message queues
84 options SYSVSEM # SYSV-style semaphores
85 options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
86 options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed.
87 options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4)
88 options AUDIT # Security event auditing
89 options MAC # TrustedBSD MAC Framework
90 #options KDTRACE_FRAME # Ensure frames are compiled in
91 #options KDTRACE_HOOKS # Kernel DTrace hooks
92 options INCLUDE_CONFIG_FILE # Include this file in kernel
93 options NO_SWAPPING # Disable support for paging
94 options TMPFS # Temporary file system
96 # Debugging for use in -current
97 #options KDB # Enable kernel debugger support.
98 #options DDB # Support DDB.
99 #options GDB # Support remote GDB.
100 #options DEADLKRES # Enable the deadlock resolver
101 #options INVARIANTS # Enable calls of extra sanity checking
102 #options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS
103 #options WITNESS # Enable checks to detect deadlocks and cycles
104 #options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed
105 #options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones
107 # Make an SMP-capable kernel by default
108 options SMP # Symmetric MultiProcessor Kernel
110 options ROOTDEVNAME=\"ufs:da0s2a\" # Default root filesystem.
112 # ATA/SCSI peripherals
113 device scbus # SCSI bus (required for ATA/SCSI)
114 device ch # SCSI media changers
115 device da # Direct Access (disks)
116 device sa # Sequential Access (tape etc)
118 device pass # Passthrough device (direct ATA/SCSI access)
119 device ses # Enclosure Services (SES and SAF-TE)
122 device uart # Generic UART driver
124 # On-board Cavium Octeon Ethernet.
125 # NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
128 # Cavium Octeon management Ethernet.
131 # Switch PHY support for the octe driver. These currently present a VLAN per
132 # physical port, but may eventually provide support for DSA or similar instead.
133 #device mv88e61xxphy # Marvell 88E61XX
136 device wlan # 802.11 support
137 options IEEE80211_DEBUG # enable debug msgs
138 options IEEE80211_AMPDU_AGE # age frames in AMPDU reorder q's
139 options IEEE80211_SUPPORT_MESH # enable 802.11s draft support
140 device wlan_wep # 802.11 WEP support
141 device wlan_ccmp # 802.11 CCMP support
142 device wlan_tkip # 802.11 TKIP support
143 device wlan_amrr # AMRR transmit rate control algorithm
144 #device ath # Atheros NIC's
145 #device ath_pci # Atheros pci/cardbus glue
146 #device ath_hal # pci/cardbus chip support
147 #options AH_SUPPORT_AR5416 # enable AR5416 tx/rx descriptors
148 #device ath_rate_sample # SampleRate tx rate control for ath
151 device loop # Network loopback
152 device random # Entropy device
153 device ether # Ethernet support
154 device vlan # 802.1Q VLAN support
155 device tun # Packet tunnel.
156 device md # Memory "disks"
157 device gif # IPv6 and IPv4 tunneling
158 device firmware # firmware assist module
160 # The `bpf' device enables the Berkeley Packet Filter.
161 # Be aware of the administrative consequences of enabling this!
162 # Note that 'bpf' is required for DHCP.
163 device bpf # Berkeley packet filter
165 # Hardware watchdog support.
166 #device octeon_wdog # Octeon hardware watchdog
169 options USB_DEBUG # enable debug msgs
170 device octusb # Cavium Octeon on-board USB interface (USB 2.0)
171 device uhci # UHCI PCI->USB interface
172 device ohci # OHCI PCI->USB interface
173 device ehci # EHCI PCI->USB interface (USB 2.0)
174 device usb # USB Bus (required)
175 #device udbp # USB Double Bulk Pipe devices
176 device uhid # "Human Interface Devices"
177 device ulpt # Printer
178 device umass # Disks/Mass storage - Requires scbus and da
180 device urio # Diamond Rio 500 MP3 player
182 device u3g # USB-based 3G modems (Option, Huawei, Sierra)
183 device uark # Technologies ARK3116 based serial adapters
184 device ubsa # Belkin F5U103 and compatible serial adapters
185 device uftdi # For FTDI usb serial adapters
186 device uipaq # Some WinCE based devices
187 device uplcom # Prolific PL-2303 serial adapters
188 device uslcom # SI Labs CP2101/CP2102 serial adapters
189 device uvisor # Visor and Palm devices
190 device uvscom # USB serial support for DDI pocket's PHS
191 # USB Ethernet, requires miibus
192 device miibus # MII bus support
193 device aue # ADMtek USB Ethernet
194 device axe # ASIX Electronics USB Ethernet
195 device cdce # Generic USB over Ethernet
196 device cue # CATC USB Ethernet
197 device kue # Kawasaki LSI USB Ethernet
198 device rue # RealTek RTL8150 USB Ethernet
199 device udav # Davicom DM9601E USB
201 device rum # Ralink Technology RT2501USB wireless NICs
202 device uath # Atheros AR5523 wireless NICs
203 device ural # Ralink Technology RT2500USB wireless NICs
204 device zyd # ZyDAS zd1211/zd1211b wireless NICs
207 device crypto # core crypto support
208 device cryptodev # /dev/crypto for access to h/w
209 device cryptocteon # Octeon coprocessor 2 crypto offload