]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/arm64/conf/GENERIC
Tegra210: Connect to GENERIC kernel.
[FreeBSD/FreeBSD.git] / sys / arm64 / conf / GENERIC
1 #
2 # GENERIC -- Generic kernel configuration file for FreeBSD/arm64
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             ARM64
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         ROUTE_MPATH             # Multipath routing support
34 options         IPSEC_SUPPORT           # Allow kldload of ipsec and tcpmd5
35 options         TCP_HHOOK               # hhook(9) framework for TCP
36 options         TCP_OFFLOAD             # TCP offload
37 options         TCP_RFC7413             # TCP Fast Open
38 options         SCTP_SUPPORT            # Allow kldload of SCTP
39 options         FFS                     # Berkeley Fast Filesystem
40 options         SOFTUPDATES             # Enable FFS soft updates support
41 options         UFS_ACL                 # Support for access control lists
42 options         UFS_DIRHASH             # Improve performance on big directories
43 options         UFS_GJOURNAL            # Enable gjournal-based UFS journaling
44 options         QUOTA                   # Enable disk quotas for UFS
45 options         MD_ROOT                 # MD is a potential root device
46 options         NFSCL                   # Network Filesystem Client
47 options         NFSD                    # Network Filesystem Server
48 options         NFSLOCKD                # Network Lock Manager
49 options         NFS_ROOT                # NFS usable as /, requires NFSCL
50 options         MSDOSFS                 # MSDOS Filesystem
51 options         CD9660                  # ISO 9660 Filesystem
52 options         PROCFS                  # Process filesystem (requires PSEUDOFS)
53 options         PSEUDOFS                # Pseudo-filesystem framework
54 options         TMPFS                   # Efficient memory filesystem
55 options         GEOM_RAID               # Soft RAID functionality.
56 options         GEOM_LABEL              # Provides labelization
57 options         COMPAT_FREEBSD32        # Compatible with FreeBSD/arm
58 options         COMPAT_FREEBSD11        # Compatible with FreeBSD11
59 options         COMPAT_FREEBSD12        # Compatible with FreeBSD12
60 options         SCSI_DELAY=5000         # Delay (in ms) before probing SCSI
61 options         KTRACE                  # ktrace(1) support
62 options         STACK                   # stack(9) support
63 options         SYSVSHM                 # SYSV-style shared memory
64 options         SYSVMSG                 # SYSV-style message queues
65 options         SYSVSEM                 # SYSV-style semaphores
66 options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
67 options         PRINTF_BUFR_SIZE=128    # Prevent printf output being interspersed.
68 options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
69 options         HWPMC_HOOKS             # Necessary kernel hooks for hwpmc(4)
70 options         AUDIT                   # Security event auditing
71 options         CAPABILITY_MODE         # Capsicum capability mode
72 options         CAPABILITIES            # Capsicum capabilities
73 options         MAC                     # TrustedBSD MAC Framework
74 options         KDTRACE_FRAME           # Ensure frames are compiled in
75 options         KDTRACE_HOOKS           # Kernel DTrace hooks
76 options         DDB_CTF                 # Kernel ELF linker loads CTF data
77 options         VFP                     # Floating-point support
78 options         RACCT                   # Resource accounting framework
79 options         RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default
80 options         RCTL                    # Resource limits
81 options         SMP
82 options         INTRNG
83 options         LINUX_BOOT_ABI          # Boot using booti command from U-Boot
84
85 # Debugging support.  Always need this:
86 options         KDB                     # Enable kernel debugger support.
87 options         KDB_TRACE               # Print a stack trace for a panic.
88 # For full debugger support use (turn off in stable branch):
89 options         DDB                     # Support DDB.
90 #options        GDB                     # Support remote GDB.
91 options         DEADLKRES               # Enable the deadlock resolver
92 options         INVARIANTS              # Enable calls of extra sanity checking
93 options         INVARIANT_SUPPORT       # Extra sanity checks of internal structures, required by INVARIANTS
94 options         WITNESS                 # Enable checks to detect deadlocks and cycles
95 options         WITNESS_SKIPSPIN        # Don't run witness on spinlocks for speed
96 options         MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones
97 options         ALT_BREAK_TO_DEBUGGER   # Enter debugger on keyboard escape sequence
98 options         USB_DEBUG               # enable debug msgs
99 options         VERBOSE_SYSINIT=0       # Support debug.verbose_sysinit, off by default
100
101 # Kernel Sanitizers
102 #options        COVERAGE                # Generic kernel coverage. Used by KCOV
103 #options        KCOV                    # Kernel Coverage Sanitizer
104 # Warning: KUBSAN can result in a kernel too large for loader to load
105 #options        KUBSAN                  # Kernel Undefined Behavior Sanitizer
106 #options        KCSAN                   # Kernel Concurrency Sanitizer
107
108 # Kernel dump features.
109 options         EKCD                    # Support for encrypted kernel dumps
110 options         GZIO                    # gzip-compressed kernel and user dumps
111 options         ZSTDIO                  # zstd-compressed kernel and user dumps
112 options         DEBUGNET                # debugnet networking
113 options         NETDUMP                 # netdump(4) client support
114
115 # SoC support
116 options         SOC_ALLWINNER_A64
117 options         SOC_ALLWINNER_H5
118 options         SOC_ALLWINNER_H6
119 options         SOC_CAVM_THUNDERX
120 options         SOC_FREESCALE_IMX8
121 options         SOC_HISI_HI6220
122 options         SOC_INTEL_STRATIX10
123 options         SOC_BRCM_BCM2837
124 options         SOC_BRCM_BCM2838
125 options         SOC_MARVELL_8K
126 options         SOC_NVIDIA_TEGRA210
127 options         SOC_NXP_LS
128 options         SOC_ROCKCHIP_RK3328
129 options         SOC_ROCKCHIP_RK3399
130 options         SOC_XILINX_ZYNQ
131
132 # Timer drivers
133 device          a10_timer
134
135 # Annapurna Alpine drivers
136 device          al_ccu                  # Alpine Cache Coherency Unit
137 device          al_nb_service           # Alpine North Bridge Service
138 device          al_iofic                # I/O Fabric Interrupt Controller
139 device          al_serdes               # Serializer/Deserializer
140 device          al_udma                 # Universal DMA
141
142 # Qualcomm Snapdragon drivers
143 device          qcom_gcc                # Global Clock Controller
144
145 # VirtIO support
146 device          virtio
147 device          virtio_pci
148 device          virtio_mmio
149 device          virtio_blk
150 device          vtnet
151
152 # CPU frequency control
153 device          cpufreq
154
155 # Bus drivers
156 device          pci
157 device          pci_n1sdp       # ARM Neoverse N1 SDP PCI
158 device          al_pci          # Annapurna Alpine PCI-E
159 options         PCI_HP                  # PCI-Express native HotPlug
160 options         PCI_IOV         # PCI SR-IOV support
161
162 # PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure
163 device          iflib
164 device          em              # Intel PRO/1000 Gigabit Ethernet Family
165 device          ix              # Intel 10Gb Ethernet Family
166
167 # Ethernet NICs
168 device          mdio
169 device          mii
170 device          miibus          # MII bus support
171 device          awg             # Allwinner EMAC Gigabit Ethernet
172 device          axa             # AMD Opteron A1100 integrated NIC
173 device          msk             # Marvell/SysKonnect Yukon II Gigabit Ethernet
174 device          neta            # Marvell Armada 370/38x/XP/3700 NIC
175 device          re              # RealTek 8139C+/8169/8169S/8110S
176 device          smc             # SMSC LAN91C111
177 device          vnic            # Cavium ThunderX NIC
178 device          al_eth          # Annapurna Alpine Ethernet NIC
179 device          dwc_rk          # Rockchip Designware
180 device          dwc_socfpga     # Altera SOCFPGA Ethernet MAC
181 device          genet           # Broadcom on RPi4
182 device          ffec            # iMX FFEC
183
184 # Etherswitch devices
185 device          etherswitch     # Enable etherswitch support
186 device          miiproxy        # Required for etherswitch
187 device          e6000sw         # Marvell mv88e6085 based switches
188
189 # Block devices
190 device          ahci
191 device          scbus
192 device          da
193
194 # ATA/SCSI peripherals
195 device          cd              # CD
196 device          pass            # Passthrough device (direct ATA/SCSI access)
197
198 # NVM Express (NVMe) support
199 device          nvme            # base NVMe driver
200 options         NVME_USE_NVD=0  # prefer the cam(4) based nda(4) driver
201 device          nvd             # expose NVMe namespaces as disks, depends on nvme
202
203 # MMC/SD/SDIO Card slot support
204 device          sdhci
205 device          sdhci_xenon             # Marvell Xenon SD/MMC controller
206 device          aw_mmc                  # Allwinner SD/MMC controller
207 device          mmc                     # mmc/sd bus
208 device          mmcsd                   # mmc/sd flash cards
209 device          dwmmc
210 device          dwmmc_altera
211 device          dwmmc_hisi
212 device          rk_dwmmc
213 device          rk_emmcphy
214
215 # Serial (COM) ports
216 device          uart            # Generic UART driver
217 device          uart_imx        # iMX8 UART
218 device          uart_msm        # Qualcomm MSM UART driver
219 device          uart_mu         # RPI3 aux port
220 device          uart_mvebu      # Armada 3700 UART driver
221 device          uart_ns8250     # ns8250-type UART driver
222 device          uart_snps
223 device          pl011
224
225 # USB support
226 options         USB_HOST_ALIGN=64       # Align usb buffers to cache line size.
227 device          aw_usbphy               # Allwinner USB PHY
228 device          rk_usb2phy              # Rockchip USB2PHY
229 device          rk_typec_phy            # Rockchip TypeC PHY
230 device          dwcotg                  # DWC OTG controller
231 device          musb                    # Mentor Graphics USB OTG controller
232 device          ohci                    # OHCI USB interface
233 device          uhci                    # UHCI USB interface
234 device          ehci                    # EHCI USB interface (USB 2.0)
235 device          ehci_mv                 # Marvell EHCI USB interface
236 device          xhci                    # XHCI USB interface (USB 3.0)
237 device          dwc3                    # Synopsys DWC controller
238 device          aw_dwc3                 # Allwinner DWC3 controller
239 device          rk_dwc3                 # Rockchip DWC3 controller
240 device          usb                     # USB Bus (required)
241 device          ukbd                    # Keyboard
242 device          umass                   # Disks/Mass storage - Requires scbus and da
243 device          tegra210_xusb_fw        # Tegra XUSB firmware
244
245 # USB ethernet support
246 device          muge
247 device          smcphy
248 device          smsc
249 device          ure
250
251 # Sound support
252 device sound
253 device a10_codec
254
255 # DMA controller
256 device          a31_dmac
257
258 # GPIO / PINCTRL
259 device          a37x0_gpio      # Marvell Armada 37x0 GPIO controller
260 device          aw_gpio         # Allwinner GPIO controller
261 device          dwgpio          # Synopsys DesignWare APB GPIO Controller
262 device          gpio
263 device          gpioled
264 device          fdt_pinctrl
265 device          gpioregulator
266 device          ls1046_gpio     # LS1046A GPIO controller
267 device          mv_gpio         # Marvell GPIO controller
268 device          mvebu_pinctrl   # Marvell Pinmux Controller
269 device          pl061           # Arm PL061 GPIO controller
270 device          rk_gpio         # RockChip GPIO Controller
271 device          rk_pinctrl      # RockChip Pinmux Controller
272
273 # I2C
274 device          a37x0_iic       # Armada 37x0 I2C controller
275 device          aw_rsb          # Allwinner Reduced Serial Bus
276 device          bcm2835_bsc     # Broadcom BCM283x I2C bus
277 device          iicbus
278 device          iicmux
279 device          iic
280 device          icee            # Generic IIC eeprom
281 device          twsi            # Allwinner I2C controller
282 device          pca9547         # NPX I2C bus multiplexer
283 device          pcf8563         # NXP Real-time clock/calendar
284 device          rk_i2c          # RockChip I2C controller
285 device          syr827          # Silergy SYR827 PMIC
286 device          sy8106a         # SY8106A Buck Regulator
287 device          vf_i2c          # Freescale Vybrid I2C controller
288 device          fsliic          # Freescale iMX I2C controller
289
290 # Clock and reset controllers
291 device          aw_ccu          # Allwinner clock controller
292
293 # Interrupt controllers
294 device          aw_nmi          # Allwinner NMI support
295 device          mv_cp110_icu    # Marvell CP110 ICU
296 device          mv_ap806_gicp   # Marvell AP806 GICP
297 device          mv_ap806_sei    # Marvell AP806 SEI
298
299 # Real-time clock support
300 device          aw_rtc          # Allwinner Real-time Clock
301 device          mv_rtc          # Marvell Real-time Clock
302
303 # Crypto accelerators
304 device          safexcel        # Inside Secure EIP-97
305
306 # Watchdog controllers
307 device          aw_wdog         # Allwinner Watchdog
308
309 # Power management controllers
310 device          axp81x          # X-Powers AXP81x PMIC
311 device          rk805           # RockChip RK805 PMIC
312
313 # EFUSE
314 device          aw_sid          # Allwinner Secure ID EFUSE
315
316 # Thermal sensors
317 device          aw_thermal      # Allwinner Thermal Sensor Controller
318 device          mv_thermal      # Marvell Thermal Sensor Controller
319
320 # SPI
321 device          spibus
322 device          a37x0_spi       # Marvell Armada 37x0 SPI Controller
323 device          bcm2835_spi     # Broadcom BCM283x SPI bus
324 device          rk_spi          # RockChip SPI controller
325
326 # PWM
327 device          pwm
328 device          aw_pwm
329 device          rk_pwm
330
331 # Console
332 device          vt
333 device          kbdmux
334
335 device          vt_efifb
336
337 # EVDEV support
338 device          evdev                   # input event device support
339 options         EVDEV_SUPPORT           # evdev support in legacy drivers
340 device          uinput                  # install /dev/uinput cdev
341 device          aw_cir
342
343 # Pseudo devices.
344 device          crypto          # core crypto support
345 device          loop            # Network loopback
346 device          ether           # Ethernet support
347 device          vlan            # 802.1Q VLAN support
348 device          tuntap          # Packet tunnel.
349 device          md              # Memory "disks"
350 device          gif             # IPv6 and IPv4 tunneling
351 device          firmware        # firmware assist module
352 options         EFIRT           # EFI Runtime Services
353
354 # EXT_RESOURCES pseudo devices
355 options         EXT_RESOURCES
356 device          clk
357 device          phy
358 device          hwreset
359 device          nvmem
360 device          regulator
361 device          syscon
362 device          aw_syscon
363
364 # IO Domains
365 device          rk_iodomain
366
367 # The `bpf' device enables the Berkeley Packet Filter.
368 # Be aware of the administrative consequences of enabling this!
369 # Note that 'bpf' is required for DHCP.
370 device          bpf             # Berkeley packet filter
371
372 # Chip-specific errata
373 options         THUNDERX_PASS_1_1_ERRATA
374
375 options         FDT
376 device          acpi
377
378 # DTBs
379 makeoptions     MODULES_EXTRA="dtb/allwinner dtb/freescale dtb/imx8 dtb/nvidia dtb/mv dtb/rockchip dtb/rpi"