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