freebsd-dev/sys/mips/conf/ERL
Vladimir Kondratyev 1975878673 hid: Import functions and constants required by new subsystem
This does an import of quirk stubs, debugging macros from USB code and
numerous usage constants used by dependent drivers.

Besides, this change renames some functions to get a better matching
with userland library and NetBSD/OpenBSD HID code. Namely:

- Old hid_report_size() renamed to hid_report_size_max()
- New hid_report_size() calculates size of given report rather than
  maximum size of all reports.
- hid_get_data_unsigned() renamed to hid_get_udata()
- hid_put_data_unsigned() renamed to hid_put_udata()

Compat shim functions are provided in usbhid.h to make possible compile
of legacy code unmodified after this change.

Reviewed by:	manu, hselasky
Differential revision:	https://reviews.freebsd.org/D27887
2021-01-08 02:18:42 +03:00

219 lines
8.3 KiB
Plaintext

#
# ERL - EdgeRouter Lite kernel config
# Based on configuration from http://rtfm.net/FreeBSD/ERL
#
# For more information on this file, please read the config(5) manual page,
# and/or the handbook section on Kernel Configuration Files:
#
# https://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
#
# The handbook is also available locally in /usr/share/doc/handbook
# if you've installed the doc distribution, otherwise always see the
# FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the
# latest information.
#
# An exhaustive list of options and more detailed explanations of the
# device lines is also present in the ../../conf/NOTES and NOTES files.
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
# $FreeBSD$
ident ERL
makeoptions ARCH_FLAGS="-march=octeon+"
makeoptions LDSCRIPT_NAME=ldscript.mips.octeon1
makeoptions KERNLOADADDR=0xffffffff80100000
# We don't need to build a trampolined version of the kernel.
makeoptions WITHOUT_KERNEL_TRAMPOLINE=1
include "../cavium/std.octeon1"
hints "OCTEON1.hints" #Default places to look for devices.
makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
# Board-specific support that cannot be auto-detected at runtime.
#options OCTEON_VENDOR_LANNER # Support for Lanner boards.
#options OCTEON_VENDOR_RADISYS # Support for Radisys boards.
options OCTEON_VENDOR_UBIQUITI # Support for Ubiquiti boards.
#options OCTEON_VENDOR_GEFES # Support for GE LANIC boards
#options OCTEON_BOARD_CAPK_0100ND # Support for CAPK-0100nd.
# Compile for a specified Octeon model. If not specified, support for
# detection at runtime will be used instead, which may give inferior
# performance.
#
# See sys/contrib/octeon-sdk/octeon-model.h for possible values.
options OCTEON_MODEL=OCTEON_CN50XX_PASS1
options SCHED_ULE # ULE scheduler
options PREEMPTION # Enable kernel thread preemption
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options IPSEC # IP (v4/v6) security
options TCP_HHOOK # hhook(9) framework for TCP
options SCTP_SUPPORT # Allow kldload of SCTP
options FFS # Berkeley Fast Filesystem
options SOFTUPDATES # Enable FFS soft updates support
options UFS_ACL # Support for access control lists
options UFS_DIRHASH # Improve performance on big directories
options UFS_GJOURNAL # Enable gjournal-based UFS journaling
options MD_ROOT # MD is a potential root device
options NFSCL # Network Filesystem Client
options NFSD # Network Filesystem Server
options NFSLOCKD # Network Lock Manager
options NFS_ROOT # NFS usable as /, requires NFSCL
options MSDOSFS # MSDOS Filesystem
options CD9660 # ISO 9660 Filesystem
options PROCFS # Process filesystem (requires PSEUDOFS)
options PSEUDOFS # Pseudo-filesystem framework
options GEOM_PART_GPT # GUID Partition Tables.
options GEOM_LABEL # Provides labelization
options COMPAT_FREEBSD32 # Compatible with o32 binaries
options COMPAT_FREEBSD10 # Compatible with FreeBSD10
options COMPAT_FREEBSD11 # Compatible with FreeBSD11
options COMPAT_FREEBSD12 # Compatible with FreeBSD12
options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI
options KTRACE # ktrace(1) support
options STACK # stack(9) support
options SYSVSHM # SYSV-style shared memory
options SYSVMSG # SYSV-style message queues
options SYSVSEM # SYSV-style semaphores
options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed.
options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4)
options AUDIT # Security event auditing
options MAC # TrustedBSD MAC Framework
options KDTRACE_FRAME # Ensure frames are compiled in
options KDTRACE_HOOKS # Kernel DTrace hooks
options DDB_CTF # Kernel ELF linker loads CTF data
options INCLUDE_CONFIG_FILE # Include this file in kernel
options TMPFS # Temporary file system
options CAPABILITY_MODE # Capsicum capability mode
options CAPABILITIES # Capsicum capabilities
# Debugging for use in -current
#options KDB # Enable kernel debugger support.
options DDB # Support DDB.
#options GDB # Support remote GDB.
#options DEADLKRES # Enable the deadlock resolver
#options INVARIANTS # Enable calls of extra sanity checking
#options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS
#options WITNESS # Enable checks to detect deadlocks and cycles
#options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed
#options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones
# Make an SMP-capable kernel by default
options SMP # Symmetric MultiProcessor Kernel
options ROOTDEVNAME=\"ufs:da0s2a\" # Default root filesystem.
# ATA/SCSI peripherals
device scbus # SCSI bus (required for ATA/SCSI)
device ch # SCSI media changers
device da # Direct Access (disks)
device sa # Sequential Access (tape etc)
device cd # CD
device pass # Passthrough device (direct ATA/SCSI access)
device ses # Enclosure Services (SES and SAF-TE)
# Serial (COM) ports
device uart # Generic UART driver
# On-board Cavium Octeon Ethernet.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device octe
# Cavium Octeon management Ethernet.
device octm
# Switch PHY support for the octe driver. These currently present a VLAN per
# physical port, but may eventually provide support for DSA or similar instead.
#device mv88e61xxphy # Marvell 88E61XX
# Wireless NIC cards
device wlan # 802.11 support
options IEEE80211_DEBUG # enable debug msgs
options IEEE80211_SUPPORT_MESH # enable 802.11s draft support
device wlan_wep # 802.11 WEP support
device wlan_ccmp # 802.11 CCMP support
device wlan_tkip # 802.11 TKIP support
device wlan_amrr # AMRR transmit rate control algorithm
#device ath # Atheros NIC's
#device ath_pci # Atheros pci/cardbus glue
#device ath_hal # pci/cardbus chip support
#device ath_rate_sample # SampleRate tx rate control for ath
# Pseudo devices.
device loop # Network loopback
device ether # Ethernet support
device vlan # 802.1Q VLAN support
device tuntap # Packet tunnel.
device md # Memory "disks"
device gif # IPv6 and IPv4 tunneling
device firmware # firmware assist module
# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# Note that 'bpf' is required for DHCP.
device bpf # Berkeley packet filter
# Hardware watchdog support.
#device octeon_wdog # Octeon hardware watchdog
# USB support
options USB_DEBUG # enable debug msgs
device octusb # Cavium Octeon on-board USB interface (USB 2.0)
device uhci # UHCI PCI->USB interface
device ohci # OHCI PCI->USB interface
device ehci # EHCI PCI->USB interface (USB 2.0)
device usb # USB Bus (required)
#device udbp # USB Double Bulk Pipe devices
device uhid # "Human Interface Devices"
device ulpt # Printer
device umass # Disks/Mass storage - Requires scbus and da
device ums # Mouse
device urio # Diamond Rio 500 MP3 player
# USB Serial devices
device u3g # USB-based 3G modems (Option, Huawei, Sierra)
device uark # Technologies ARK3116 based serial adapters
device ubsa # Belkin F5U103 and compatible serial adapters
device uftdi # For FTDI usb serial adapters
device uipaq # Some WinCE based devices
device uplcom # Prolific PL-2303 serial adapters
device uslcom # SI Labs CP2101/CP2102 serial adapters
device uvisor # Visor and Palm devices
device uvscom # USB serial support for DDI pocket's PHS
# USB Ethernet, requires miibus
device miibus # MII bus support
device aue # ADMtek USB Ethernet
device axe # ASIX Electronics USB Ethernet
device cdce # Generic USB over Ethernet
device cue # CATC USB Ethernet
device kue # Kawasaki LSI USB Ethernet
device rue # RealTek RTL8150 USB Ethernet
device udav # Davicom DM9601E USB
# USB Wireless
device rum # Ralink Technology RT2501USB wireless NICs
device uath # Atheros AR5523 wireless NICs
device ural # Ralink Technology RT2500USB wireless NICs
device zyd # ZyDAS zd1211/zd1211b wireless NICs
# crypto subsystem
device crypto # core crypto support (required for IPSEC)
device cryptodev # /dev/crypto for access to h/w
device cryptocteon # Octeon coprocessor 2 crypto offload
# GPIO support
#device gpio
# PMC support
#device hwpmc
# HID support
options HID_DEBUG # enable debug msgs
device hid # Generic HID support