]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/amd64/conf/GENERIC
hid: Import usbhid - USB transport backend for HID subsystem.
[FreeBSD/FreeBSD.git] / sys / amd64 / conf / GENERIC
1 #
2 # GENERIC -- Generic kernel configuration file for FreeBSD/amd64
3 #
4 # For more information on this file, please read the config(5) manual page,
5 # and/or the handbook section on Kernel Configuration Files:
6 #
7 #    https://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
8 #
9 # The handbook is also available locally in /usr/share/doc/handbook
10 # if you've installed the doc distribution, otherwise always see the
11 # FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the
12 # latest information.
13 #
14 # An exhaustive list of options and more detailed explanations of the
15 # device lines is also present in the ../../conf/NOTES and NOTES files.
16 # If you are in doubt as to the purpose or necessity of a line, check first
17 # in NOTES.
18 #
19 # $FreeBSD$
20
21 cpu             HAMMER
22 ident           GENERIC
23
24 makeoptions     DEBUG=-g                # Build kernel with gdb(1) debug symbols
25 makeoptions     WITH_CTF=1              # Run ctfconvert(1) for DTrace support
26
27 options         SCHED_ULE               # ULE scheduler
28 options         NUMA                    # Non-Uniform Memory Architecture support
29 options         PREEMPTION              # Enable kernel thread preemption
30 options         VIMAGE                  # Subsystem virtualization, e.g. VNET
31 options         INET                    # InterNETworking
32 options         INET6                   # IPv6 communications protocols
33 options         IPSEC_SUPPORT           # Allow kldload of ipsec and tcpmd5
34 options         ROUTE_MPATH             # Multipath routing support
35 options         TCP_OFFLOAD             # TCP offload
36 options         TCP_BLACKBOX            # Enhanced TCP event logging
37 options         TCP_HHOOK               # hhook(9) framework for TCP
38 options         TCP_RFC7413             # TCP Fast Open
39 options         SCTP_SUPPORT            # Allow kldload of SCTP
40 options         FFS                     # Berkeley Fast Filesystem
41 options         SOFTUPDATES             # Enable FFS soft updates support
42 options         UFS_ACL                 # Support for access control lists
43 options         UFS_DIRHASH             # Improve performance on big directories
44 options         UFS_GJOURNAL            # Enable gjournal-based UFS journaling
45 options         QUOTA                   # Enable disk quotas for UFS
46 options         MD_ROOT                 # MD is a potential root device
47 options         NFSCL                   # Network Filesystem Client
48 options         NFSD                    # Network Filesystem Server
49 options         NFSLOCKD                # Network Lock Manager
50 options         NFS_ROOT                # NFS usable as /, requires NFSCL
51 options         MSDOSFS                 # MSDOS Filesystem
52 options         CD9660                  # ISO 9660 Filesystem
53 options         PROCFS                  # Process filesystem (requires PSEUDOFS)
54 options         PSEUDOFS                # Pseudo-filesystem framework
55 options         TMPFS                   # Efficient memory filesystem
56 options         GEOM_RAID               # Soft RAID functionality.
57 options         GEOM_LABEL              # Provides labelization
58 options         EFIRT                   # EFI Runtime Services support
59 options         COMPAT_FREEBSD32        # Compatible with i386 binaries
60 options         COMPAT_FREEBSD4         # Compatible with FreeBSD4
61 options         COMPAT_FREEBSD5         # Compatible with FreeBSD5
62 options         COMPAT_FREEBSD6         # Compatible with FreeBSD6
63 options         COMPAT_FREEBSD7         # Compatible with FreeBSD7
64 options         COMPAT_FREEBSD9         # Compatible with FreeBSD9
65 options         COMPAT_FREEBSD10        # Compatible with FreeBSD10
66 options         COMPAT_FREEBSD11        # Compatible with FreeBSD11
67 options         COMPAT_FREEBSD12        # Compatible with FreeBSD12
68 options         SCSI_DELAY=5000         # Delay (in ms) before probing SCSI
69 options         KTRACE                  # ktrace(1) support
70 options         STACK                   # stack(9) support
71 options         SYSVSHM                 # SYSV-style shared memory
72 options         SYSVMSG                 # SYSV-style message queues
73 options         SYSVSEM                 # SYSV-style semaphores
74 options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
75 options         PRINTF_BUFR_SIZE=128    # Prevent printf output being interspersed.
76 options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
77 options         HWPMC_HOOKS             # Necessary kernel hooks for hwpmc(4)
78 options         AUDIT                   # Security event auditing
79 options         CAPABILITY_MODE         # Capsicum capability mode
80 options         CAPABILITIES            # Capsicum capabilities
81 options         MAC                     # TrustedBSD MAC Framework
82 options         KDTRACE_FRAME           # Ensure frames are compiled in
83 options         KDTRACE_HOOKS           # Kernel DTrace hooks
84 options         DDB_CTF                 # Kernel ELF linker loads CTF data
85 options         INCLUDE_CONFIG_FILE     # Include this file in kernel
86 options         RACCT                   # Resource accounting framework
87 options         RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default
88 options         RCTL                    # Resource limits
89
90 # Debugging support.  Always need this:
91 options         KDB                     # Enable kernel debugger support.
92 options         KDB_TRACE               # Print a stack trace for a panic.
93 # For full debugger support use (turn off in stable branch):
94 options         BUF_TRACKING            # Track buffer history
95 options         DDB                     # Support DDB.
96 options         FULL_BUF_TRACKING       # Track more buffer history
97 options         GDB                     # Support remote GDB.
98 options         DEADLKRES               # Enable the deadlock resolver
99 options         INVARIANTS              # Enable calls of extra sanity checking
100 options         INVARIANT_SUPPORT       # Extra sanity checks of internal structures, required by INVARIANTS
101 options         QUEUE_MACRO_DEBUG_TRASH # Trash queue(2) internal pointers on invalidation
102 options         WITNESS                 # Enable checks to detect deadlocks and cycles
103 options         WITNESS_SKIPSPIN        # Don't run witness on spinlocks for speed
104 options         MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones
105 options         VERBOSE_SYSINIT=0       # Support debug.verbose_sysinit, off by default
106
107 # Kernel Sanitizers
108 #options        COVERAGE                # Generic kernel coverage. Used by KCOV
109 #options        KCOV                    # Kernel Coverage Sanitizer
110 # Warning: KUBSAN can result in a kernel too large for loader to load
111 #options        KUBSAN                  # Kernel Undefined Behavior Sanitizer
112 #options        KCSAN                   # Kernel Concurrency Sanitizer
113
114 # Kernel dump features.
115 options         EKCD                    # Support for encrypted kernel dumps
116 options         GZIO                    # gzip-compressed kernel and user dumps
117 options         ZSTDIO                  # zstd-compressed kernel and user dumps
118 options         DEBUGNET                # debugnet networking
119 options         NETDUMP                 # netdump(4) client support
120 options         NETGDB                  # netgdb(4) client support
121
122 # Make an SMP-capable kernel by default
123 options         SMP                     # Symmetric MultiProcessor Kernel
124 options         EARLY_AP_STARTUP
125
126 # CPU frequency control
127 device          cpufreq
128
129 # Bus support.
130 device          acpi
131 options         IOMMU
132 device          pci
133 options         PCI_HP                  # PCI-Express native HotPlug
134 options         PCI_IOV                 # PCI SR-IOV support
135
136 # Floppy drives
137 device          fdc
138
139 # ATA controllers
140 device          ahci                    # AHCI-compatible SATA controllers
141 device          ata                     # Legacy ATA/SATA controllers
142 device          mvs                     # Marvell 88SX50XX/88SX60XX/88SX70XX/SoC SATA
143 device          siis                    # SiliconImage SiI3124/SiI3132/SiI3531 SATA
144
145 # SCSI Controllers
146 device          ahc                     # AHA2940 and onboard AIC7xxx devices
147 device          ahd                     # AHA39320/29320 and onboard AIC79xx devices
148 device          esp                     # AMD Am53C974 (Tekram DC-390(T))
149 device          hptiop                  # Highpoint RocketRaid 3xxx series
150 device          isp                     # Qlogic family
151 #device         ispfw                   # Firmware for QLogic HBAs- normally a module
152 device          mpt                     # LSI-Logic MPT-Fusion
153 device          mps                     # LSI-Logic MPT-Fusion 2
154 device          mpr                     # LSI-Logic MPT-Fusion 3
155 device          sym                     # NCR/Symbios Logic
156 device          isci                    # Intel C600 SAS controller
157 device          ocs_fc                  # Emulex FC adapters
158 device          pvscsi                  # VMware PVSCSI
159
160 # ATA/SCSI peripherals
161 device          scbus                   # SCSI bus (required for ATA/SCSI)
162 device          ch                      # SCSI media changers
163 device          da                      # Direct Access (disks)
164 device          sa                      # Sequential Access (tape etc)
165 device          cd                      # CD
166 device          pass                    # Passthrough device (direct ATA/SCSI access)
167 device          ses                     # Enclosure Services (SES and SAF-TE)
168 #device         ctl                     # CAM Target Layer
169
170 # RAID controllers interfaced to the SCSI subsystem
171 device          amr                     # AMI MegaRAID
172 device          arcmsr                  # Areca SATA II RAID
173 device          ciss                    # Compaq Smart RAID 5*
174 device          iir                     # Intel Integrated RAID
175 device          ips                     # IBM (Adaptec) ServeRAID
176 device          mly                     # Mylex AcceleRAID/eXtremeRAID
177 device          twa                     # 3ware 9000 series PATA/SATA RAID
178 device          smartpqi                # Microsemi smartpqi driver
179 device          tws                     # LSI 3ware 9750 SATA+SAS 6Gb/s RAID controller
180
181 # RAID controllers
182 device          aac                     # Adaptec FSA RAID
183 device          aacp                    # SCSI passthrough for aac (requires CAM)
184 device          aacraid                 # Adaptec by PMC RAID
185 device          ida                     # Compaq Smart RAID
186 device          mfi                     # LSI MegaRAID SAS
187 device          mlx                     # Mylex DAC960 family
188 device          mrsas                   # LSI/Avago MegaRAID SAS/SATA, 6Gb/s and 12Gb/s
189 device          pmspcv                  # PMC-Sierra SAS/SATA Controller driver
190 #XXX pointer/int warnings
191 #device         pst                     # Promise Supertrak SX6000
192 device          twe                     # 3ware ATA RAID
193
194 # NVM Express (NVMe) support
195 device          nvme                    # base NVMe driver
196 device          nvd                     # expose NVMe namespaces as disks, depends on nvme
197
198 # Intel Volume Management Device (VMD) support
199 device          vmd                     # base VMD device
200 device          vmd_bus                 # bus for VMD children
201
202 # atkbdc0 controls both the keyboard and the PS/2 mouse
203 device          atkbdc                  # AT keyboard controller
204 device          atkbd                   # AT keyboard
205 device          psm                     # PS/2 mouse
206
207 device          kbdmux                  # keyboard multiplexer
208
209 device          vga                     # VGA video card driver
210 options         VESA                    # Add support for VESA BIOS Extensions (VBE)
211
212 device          splash                  # Splash screen and screen saver support
213
214 # syscons is the default console driver, resembling an SCO console
215 device          sc
216 options         SC_PIXEL_MODE           # add support for the raster text mode
217
218 # vt is the new video console driver
219 device          vt
220 device          vt_vga
221 device          vt_efifb
222 device          vt_vbefb
223
224 device          agp                     # support several AGP chipsets
225
226 # PCCARD (PCMCIA) support
227 # PCMCIA and cardbus bridge support
228 device          cbb                     # cardbus (yenta) bridge
229 device          pccard                  # PC Card (16-bit) bus
230 device          cardbus                 # CardBus (32-bit) bus
231
232 # Serial (COM) ports
233 device          uart                    # Generic UART driver
234
235 # Parallel port
236 device          ppc
237 device          ppbus                   # Parallel port bus (required)
238 device          lpt                     # Printer
239 device          ppi                     # Parallel port interface device
240 #device         vpo                     # Requires scbus and da
241
242 device          puc                     # Multi I/O cards and multi-channel UARTs
243
244 # PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure
245 device          iflib
246 device          em                      # Intel PRO/1000 Gigabit Ethernet Family
247 device          ix                      # Intel PRO/10GbE PCIE PF Ethernet
248 device          ixv                     # Intel PRO/10GbE PCIE VF Ethernet
249 device          ixl                     # Intel 700 Series Physical Function
250 device          iavf                    # Intel Adaptive Virtual Function
251 device          ice                     # Intel 800 Series Physical Function
252 device          vmx                     # VMware VMXNET3 Ethernet
253 device          axp                     # AMD EPYC integrated NIC
254
255 # PCI Ethernet NICs.
256 device          bxe                     # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE
257 device          le                      # AMD Am7900 LANCE and Am79C9xx PCnet
258 device          ti                      # Alteon Networks Tigon I/II gigabit Ethernet
259
260 # PCI Ethernet NICs that use the common MII bus controller code.
261 # NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
262 device          miibus                  # MII bus support
263 device          ae                      # Attansic/Atheros L2 FastEthernet
264 device          age                     # Attansic/Atheros L1 Gigabit Ethernet
265 device          alc                     # Atheros AR8131/AR8132 Ethernet
266 device          ale                     # Atheros AR8121/AR8113/AR8114 Ethernet
267 device          bce                     # Broadcom BCM5706/BCM5708 Gigabit Ethernet
268 device          bfe                     # Broadcom BCM440x 10/100 Ethernet
269 device          bge                     # Broadcom BCM570xx Gigabit Ethernet
270 device          cas                     # Sun Cassini/Cassini+ and NS DP83065 Saturn
271 device          dc                      # DEC/Intel 21143 and various workalikes
272 device          et                      # Agere ET1310 10/100/Gigabit Ethernet
273 device          fxp                     # Intel EtherExpress PRO/100B (82557, 82558)
274 device          gem                     # Sun GEM/Sun ERI/Apple GMAC
275 device          jme                     # JMicron JMC250 Gigabit/JMC260 Fast Ethernet
276 device          lge                     # Level 1 LXT1001 gigabit Ethernet
277 device          msk                     # Marvell/SysKonnect Yukon II Gigabit Ethernet
278 device          nfe                     # nVidia nForce MCP on-board Ethernet
279 device          nge                     # NatSemi DP83820 gigabit Ethernet
280 device          re                      # RealTek 8139C+/8169/8169S/8110S
281 device          rl                      # RealTek 8129/8139
282 device          sge                     # Silicon Integrated Systems SiS190/191
283 device          sis                     # Silicon Integrated Systems SiS 900/SiS 7016
284 device          sk                      # SysKonnect SK-984x & SK-982x gigabit Ethernet
285 device          ste                     # Sundance ST201 (D-Link DFE-550TX)
286 device          stge                    # Sundance/Tamarack TC9021 gigabit Ethernet
287 device          vge                     # VIA VT612x gigabit Ethernet
288 device          vr                      # VIA Rhine, Rhine II
289 device          xl                      # 3Com 3c90x (``Boomerang'', ``Cyclone'')
290
291 # Wireless NIC cards
292 device          wlan                    # 802.11 support
293 options         IEEE80211_DEBUG         # enable debug msgs
294 options         IEEE80211_SUPPORT_MESH  # enable 802.11s draft support
295 device          wlan_wep                # 802.11 WEP support
296 device          wlan_ccmp               # 802.11 CCMP support
297 device          wlan_tkip               # 802.11 TKIP support
298 device          wlan_amrr               # AMRR transmit rate control algorithm
299 device          an                      # Aironet 4500/4800 802.11 wireless NICs.
300 device          ath                     # Atheros NICs
301 device          ath_pci                 # Atheros pci/cardbus glue
302 device          ath_hal                 # pci/cardbus chip support
303 options         AH_AR5416_INTERRUPT_MITIGATION # AR5416 interrupt mitigation
304 options         ATH_ENABLE_11N          # Enable 802.11n support for AR5416 and later
305 device          ath_rate_sample         # SampleRate tx rate control for ath
306 #device         bwi                     # Broadcom BCM430x/BCM431x wireless NICs.
307 #device         bwn                     # Broadcom BCM43xx wireless NICs.
308 device          ipw                     # Intel 2100 wireless NICs.
309 device          iwi                     # Intel 2200BG/2225BG/2915ABG wireless NICs.
310 device          iwn                     # Intel 4965/1000/5000/6000 wireless NICs.
311 device          malo                    # Marvell Libertas wireless NICs.
312 device          mwl                     # Marvell 88W8363 802.11n wireless NICs.
313 device          ral                     # Ralink Technology RT2500 wireless NICs.
314 device          wi                      # WaveLAN/Intersil/Symbol 802.11 wireless NICs.
315 device          wpi                     # Intel 3945ABG wireless NICs.
316
317 # Pseudo devices.
318 device          crypto                  # core crypto support
319 device          loop                    # Network loopback
320 device          padlock_rng             # VIA Padlock RNG
321 device          rdrand_rng              # Intel Bull Mountain RNG
322 device          ether                   # Ethernet support
323 device          vlan                    # 802.1Q VLAN support
324 device          tuntap                  # Packet tunnel.
325 device          md                      # Memory "disks"
326 device          gif                     # IPv6 and IPv4 tunneling
327 device          firmware                # firmware assist module
328
329 # The `bpf' device enables the Berkeley Packet Filter.
330 # Be aware of the administrative consequences of enabling this!
331 # Note that 'bpf' is required for DHCP.
332 device          bpf                     # Berkeley packet filter
333
334 # USB support
335 options         USB_DEBUG               # enable debug msgs
336 device          uhci                    # UHCI PCI->USB interface
337 device          ohci                    # OHCI PCI->USB interface
338 device          ehci                    # EHCI PCI->USB interface (USB 2.0)
339 device          xhci                    # XHCI PCI->USB interface (USB 3.0)
340 device          usb                     # USB Bus (required)
341 device          ukbd                    # Keyboard
342 device          umass                   # Disks/Mass storage - Requires scbus and da
343
344 # Sound support
345 device          sound                   # Generic sound driver (required)
346 device          snd_cmi                 # CMedia CMI8338/CMI8738
347 device          snd_csa                 # Crystal Semiconductor CS461x/428x
348 device          snd_emu10kx             # Creative SoundBlaster Live! and Audigy
349 device          snd_es137x              # Ensoniq AudioPCI ES137x
350 device          snd_hda                 # Intel High Definition Audio
351 device          snd_ich                 # Intel, NVidia and other ICH AC'97 Audio
352 device          snd_via8233             # VIA VT8233x Audio
353
354 # MMC/SD
355 device          mmc                     # MMC/SD bus
356 device          mmcsd                   # MMC/SD memory card
357 device          sdhci                   # Generic PCI SD Host Controller
358 device          rtsx                    # Realtek SD card reader
359
360 # VirtIO support
361 device          virtio                  # Generic VirtIO bus (required)
362 device          virtio_pci              # VirtIO PCI device
363 device          vtnet                   # VirtIO Ethernet device
364 device          virtio_blk              # VirtIO Block device
365 device          virtio_scsi             # VirtIO SCSI device
366 device          virtio_balloon          # VirtIO Memory Balloon device
367
368 # HyperV drivers and enhancement support
369 device          hyperv                  # HyperV drivers 
370
371 # Xen HVM Guest Optimizations
372 # NOTE: XENHVM depends on xenpci.  They must be added or removed together.
373 options         XENHVM                  # Xen HVM kernel infrastructure
374 device          xenpci                  # Xen HVM Hypervisor services driver
375
376 # Netmap provides direct access to TX/RX rings on supported NICs
377 device          netmap                  # netmap(4) support
378
379 # evdev interface
380 options         EVDEV_SUPPORT           # evdev support in legacy drivers
381 device          evdev                   # input event device support
382 device          uinput                  # install /dev/uinput cdev
383
384 # HID support
385 options         HID_DEBUG               # enable debug msgs
386 device          hid                     # Generic HID support
387 options         IICHID_SAMPLING         # Workaround missing GPIO INTR support
388 #device         usbhid                  # USB transport support.
389 #device         hidbus                  # HID bus (required by usbhid/iichid)
390 #options        USBHID_ENABLED          # Prefer usbhid to other USB drivers