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