1# 2# NOTES -- Lines that can be cut/pasted into kernel and hints configs. 3# 4# This file contains machine dependent kernel configuration notes. For 5# machine independent notes, look in /sys/conf/NOTES. 6# 7# $FreeBSD$ 8# 9 10# 11# We want LINT to cover profiling as well. 12# Except it's broken. 13#profile 2 14 15# 16# Enable the kernel DTrace hooks which are required to load the DTrace 17# kernel modules. 18# 19options KDTRACE_HOOKS 20 21# 22# Most of the following is copied from ARM64 GENERIC. 23cpu ARM64 24 25makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols 26makeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support 27 28options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed. 29options KDTRACE_FRAME # Ensure frames are compiled in 30options VFP # Floating-point support 31options RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default 32 33# SoC support 34options SOC_ALLWINNER_A64 35options SOC_ALLWINNER_H5 36options SOC_ALLWINNER_H6 37options SOC_BRCM_BCM2837 38options SOC_BRCM_BCM2838 39options SOC_BRCM_NS2 40options SOC_CAVM_THUNDERX 41options SOC_FREESCALE_IMX8 42options SOC_HISI_HI6220 43options SOC_INTEL_STRATIX10 44options SOC_MARVELL_8K 45options SOC_NVIDIA_TEGRA210 46options SOC_NXP_LS 47options SOC_ROCKCHIP_RK3328 48options SOC_ROCKCHIP_RK3399 49options SOC_XILINX_ZYNQ 50 51# Timer drivers 52device a10_timer 53 54# Annapurna Alpine drivers 55device al_ccu # Alpine Cache Coherency Unit 56device al_nb_service # Alpine North Bridge Service 57device al_iofic # I/O Fabric Interrupt Controller 58device al_serdes # Serializer/Deserializer 59device al_udma # Universal DMA 60 61# Qualcomm Snapdragon drivers 62device qcom_gcc # Global Clock Controller 63 64# VirtIO support 65device virtio 66device virtio_pci 67device virtio_mmio 68device virtio_blk 69device vtnet 70 71# Microsoft Hyper-V 72device hyperv 73 74# CPU frequency control 75device cpufreq 76 77# Accelerated software crypto 78device armv8crypto # ARMv8 OpenCrypto module 79device ossl # OpenSSL OpenCrypto module 80 81# Bus drivers 82device al_pci # Annapurna Alpine PCI-E 83options PCI_HP # PCI-Express native HotPlug 84options PCI_IOV # PCI SR-IOV support 85 86# Ethernet NICs 87device mdio 88device awg # Allwinner EMAC Gigabit Ethernet 89device axa # AMD Opteron A1100 integrated NIC 90device neta # Marvell Armada 370/38x/XP/3700 NIC 91device smc # SMSC LAN91C111 92device vnic # Cavium ThunderX NIC 93device al_eth # Annapurna Alpine Ethernet NIC 94device dwc_rk # Rockchip Designware 95device dwc_socfpga # Altera SOCFPGA Ethernet MAC 96device ice # Intel 800 Series Physical Function 97device ice_ddp # Intel 800 Series DDP Package 98 99# Etherswitch devices 100device e6000sw # Marvell mv88e6085 based switches 101 102# NVM Express (NVMe) support 103device nvme # base NVMe driver 104options NVME_USE_NVD=0 # prefer the cam(4) based nda(4) driver 105device nvd # expose NVMe namespaces as disks, depends on nvme 106 107# MMC/SD/SDIO Card slot support 108device sdhci_xenon # Marvell Xenon SD/MMC controller 109device aw_mmc # Allwinner SD/MMC controller 110device dwmmc 111device dwmmc_altera 112device rk_emmcphy 113 114# Serial (COM) ports 115device uart_msm # Qualcomm MSM UART driver 116device uart_mu # RPI3 aux port 117device uart_mvebu # Armada 3700 UART driver 118device uart_ns8250 # ns8250-type UART driver 119device uart_snps 120device pl011 121 122# USB support 123device aw_usbphy # Allwinner USB PHY 124device dwcotg # DWC OTG controller 125device ehci_mv # Marvell EHCI USB interface 126 127# USB ethernet support 128device muge 129device smsc 130 131# Sound support 132device a10_codec 133 134# DMA controller 135device a31_dmac 136 137# GPIO / PINCTRL 138device a37x0_gpio # Marvell Armada 37x0 GPIO controller 139device aw_gpio # Allwinner GPIO controller 140device fdt_pinctrl 141device mv_gpio # Marvell GPIO controller 142device mvebu_pinctrl # Marvell Pinmux Controller 143device rk_gpio # RockChip GPIO Controller 144device rk_pinctrl # RockChip Pinmux Controller 145 146# I2C 147device aw_rsb # Allwinner Reduced Serial Bus 148device bcm2835_bsc # Broadcom BCM283x I2C bus 149device twsi # Allwinner I2C controller 150device rk_i2c # RockChip I2C controller 151 152# Clock and reset controllers 153device aw_ccu # Allwinner clock controller 154 155# Interrupt controllers 156device aw_nmi # Allwinner NMI support 157device mv_cp110_icu # Marvell CP110 ICU 158device mv_ap806_gicp # Marvell AP806 GICP 159 160# Real-time clock support 161device aw_rtc # Allwinner Real-time Clock 162device mv_rtc # Marvell Real-time Clock 163 164# Watchdog controllers 165device aw_wdog # Allwinner Watchdog 166 167# Power management controllers 168device axp81x # X-Powers AXP81x PMIC 169device rk805 # RockChip RK805 PMIC 170 171# EFUSE 172device aw_sid # Allwinner Secure ID EFUSE 173 174# Thermal sensors 175device aw_thermal # Allwinner Thermal Sensor Controller 176device mv_thermal # Marvell Thermal Sensor Controller 177 178# SPI 179device bcm2835_spi # Broadcom BCM283x SPI bus 180 181# PWM 182device pwm 183device aw_pwm 184 185device vt_efifb 186 187# EVDEV support 188options EVDEV_SUPPORT # evdev support in legacy drivers 189device aw_cir 190 191# Pseudo devices. 192options EFIRT # EFI Runtime Services 193device clk 194device phy 195device hwreset 196device nvmem 197device regulator 198device syscon 199device aw_syscon 200 201# Backlight subsystem 202device backlight 203 204# Misc devices. 205device pl330 # ARM PL330 dma controller 206device xdma # xDMA framework for SoC on-chip dma controllers 207 208# Chip-specific errata 209options THUNDERX_PASS_1_1_ERRATA 210 211options FDT 212device acpi 213 214# DTBs 215makeoptions MODULES_EXTRA="dtb/allwinner dtb/rockchip dtb/rpi" 216 217# Add CAMDEBUG stuff 218options CAMDEBUG 219options CAM_DEBUG_FLAGS=(CAM_DEBUG_INFO|CAM_DEBUG_PROBE|CAM_DEBUG_PERIPH) 220 221# bring in camified MMC too 222options MMCCAM 223 224# arm64 doesn't support inb/outb, so disable chipset probing which needs it 225nooptions PPC_PROBE_CHIPSET 226 227# These cause weird issues, not sure why 228nooptions DEBUG 229 230# Makes assumptions about bus tags that aren't true on arm64 231nodevice snd_cmi 232 233# arm64 didn't exist for these releases, so doesn't have the required compat 234# support. Just disable them because they are meaningless. 235nooptions COMPAT_FREEBSD4 236nooptions COMPAT_FREEBSD5 237nooptions COMPAT_FREEBSD6 238nooptions COMPAT_FREEBSD7 239nooptions COMPAT_FREEBSD9 240nooptions COMPAT_FREEBSD10 241 242# arm64 supports 32-bit FreeBSD/arm binaries (armv[67] ABIs) 243options COMPAT_FREEBSD32 # Compatible with FreeBSD/arm 244 245##################################################################### 246# ZFS support 247 248options ZFS 249 250# 251# HID-over-I2C support 252# 253device iichid # HID-over-I2C support 254options IICHID_DEBUG # Enable HID-over-I2C debug messages 255options IICHID_SAMPLING # Workaround missing GPIO INTR support 256