2 # NOTES -- Lines that can be cut/pasted into kernel and hints configs.
4 # This file contains machine dependent kernel configuration notes. For
5 # machine independent notes, look in /sys/conf/NOTES.
11 # We want LINT to cover profiling as well.
16 # Enable the kernel DTrace hooks which are required to load the DTrace
22 # Most of the following is copied from ARM64 GENERIC.
25 makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
26 makeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support
28 options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed.
29 options KDTRACE_FRAME # Ensure frames are compiled in
30 options VFP # Floating-point support
31 options RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default
34 nooptions GDB # Support remote GDB -- not supported
37 options SOC_ALLWINNER_A64
38 options SOC_ALLWINNER_H5
39 options SOC_CAVM_THUNDERX
40 options SOC_HISI_HI6220
41 options SOC_BRCM_BCM2837
42 options SOC_BRCM_BCM2838
43 options SOC_MARVELL_8K
44 options SOC_ROCKCHIP_RK3328
45 options SOC_ROCKCHIP_RK3399
46 options SOC_XILINX_ZYNQ
51 # Annapurna Alpine drivers
52 device al_ccu # Alpine Cache Coherency Unit
53 device al_nb_service # Alpine North Bridge Service
54 device al_iofic # I/O Fabric Interrupt Controller
55 device al_serdes # Serializer/Deserializer
56 device al_udma # Universal DMA
58 # Qualcomm Snapdragon drivers
59 device qcom_gcc # Global Clock Controller
68 # CPU frequency control
72 device al_pci # Annapurna Alpine PCI-E
73 options PCI_HP # PCI-Express native HotPlug
74 options PCI_IOV # PCI SR-IOV support
78 device awg # Allwinner EMAC Gigabit Ethernet
79 device axgbe # AMD Opteron A1100 integrated NIC
80 device neta # Marvell Armada 370/38x/XP/3700 NIC
81 device smc # SMSC LAN91C111
82 device vnic # Cavium ThunderX NIC
83 device al_eth # Annapurna Alpine Ethernet NIC
84 device dwc_rk # Rockchip Designware
85 device dwc_socfpga # Altera SOCFPGA Ethernet MAC
86 device ice # Intel 800 Series Physical Function
87 device ice_ddp # Intel 800 Series DDP Package
90 device e6000sw # Marvell mv88e6085 based switches
92 # NVM Express (NVMe) support
93 device nvme # base NVMe driver
94 options NVME_USE_NVD=0 # prefer the cam(4) based nda(4) driver
95 device nvd # expose NVMe namespaces as disks, depends on nvme
97 # MMC/SD/SDIO Card slot support
98 device sdhci_xenon # Marvell Xenon SD/MMC controller
99 device aw_mmc # Allwinner SD/MMC controller
105 device uart_msm # Qualcomm MSM UART driver
106 device uart_mu # RPI3 aux port
107 device uart_mvebu # Armada 3700 UART driver
108 device uart_ns8250 # ns8250-type UART driver
113 device aw_usbphy # Allwinner USB PHY
114 device dwcotg # DWC OTG controller
115 device ehci_mv # Marvell EHCI USB interface
117 # USB ethernet support
128 device a37x0_gpio # Marvell Armada 37x0 GPIO controller
129 device aw_gpio # Allwinner GPIO controller
131 device mv_gpio # Marvell GPIO controller
132 device mvebu_pinctrl # Marvell Pinmux Controller
133 device rk_gpio # RockChip GPIO Controller
134 device rk_pinctrl # RockChip Pinmux Controller
137 device aw_rsb # Allwinner Reduced Serial Bus
138 device bcm2835_bsc # Broadcom BCM283x I2C bus
139 device twsi # Allwinner I2C controller
140 device rk_i2c # RockChip I2C controller
142 # Clock and reset controllers
143 device aw_ccu # Allwinner clock controller
145 # Interrupt controllers
146 device aw_nmi # Allwinner NMI support
147 device mv_cp110_icu # Marvell CP110 ICU
148 device mv_ap806_gicp # Marvell AP806 GICP
150 # Real-time clock support
151 device aw_rtc # Allwinner Real-time Clock
152 device mv_rtc # Marvell Real-time Clock
154 # Watchdog controllers
155 device aw_wdog # Allwinner Watchdog
157 # Power management controllers
158 device axp81x # X-Powers AXP81x PMIC
159 device rk805 # RockChip RK805 PMIC
162 device aw_sid # Allwinner Secure ID EFUSE
165 device aw_thermal # Allwinner Thermal Sensor Controller
166 device mv_thermal # Marvell Thermal Sensor Controller
169 device bcm2835_spi # Broadcom BCM283x SPI bus
178 options EVDEV_SUPPORT # evdev support in legacy drivers
182 options EFIRT # EFI Runtime Services
184 # EXT_RESOURCES pseudo devices
185 options EXT_RESOURCES
195 device pl330 # ARM PL330 dma controller
196 device xdma # xDMA framework for SoC on-chip dma controllers
198 # Chip-specific errata
199 options THUNDERX_PASS_1_1_ERRATA
205 makeoptions MODULES_EXTRA="dtb/allwinner dtb/rockchip dtb/rpi"
209 options CAM_DEBUG_FLAGS=(CAM_DEBUG_INFO|CAM_DEBUG_PROBE|CAM_DEBUG_PERIPH)
211 # bring in camified MMC too
214 # arm64 doesn't support inb/outb, so disable chipset probing which needs it
215 nooptions PPC_PROBE_CHIPSET
217 # These cause weird issues, not sure why
220 # Makes assumptions about bus tags that aren't true on arm64
223 # arm64 didn't exist for these releases, so doesn't have the required compat
224 # support. Just disable them because they are meaningless.
225 nooptions COMPAT_FREEBSD4
226 nooptions COMPAT_FREEBSD5
227 nooptions COMPAT_FREEBSD6
228 nooptions COMPAT_FREEBSD7
229 nooptions COMPAT_FREEBSD9
230 nooptions COMPAT_FREEBSD10
232 # arm64 supports 32-bit FreeBSD/arm binaries (armv[67] ABIs)
233 options COMPAT_FREEBSD32 # Compatible with FreeBSD/arm