]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/arm64/conf/NOTES
MFV r361938:
[FreeBSD/FreeBSD.git] / sys / arm64 / conf / NOTES
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 #
19 options         KDTRACE_HOOKS
20
21 #
22 # Most of the following is copied from ARM64 GENERIC.
23 cpu             ARM64
24
25 makeoptions     DEBUG=-g                # Build kernel with gdb(1) debug symbols
26 makeoptions     WITH_CTF=1              # Run ctfconvert(1) for DTrace support
27
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
32 options         INTRNG
33
34 nooptions       GDB                     # Support remote GDB -- not supported
35
36 # SoC support
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
47
48 # Timer drivers
49 device          a10_timer
50
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
57
58 # Qualcomm Snapdragon drivers
59 device          qcom_gcc                # Global Clock Controller
60
61 # VirtIO support
62 device          virtio
63 device          virtio_pci
64 device          virtio_mmio
65 device          virtio_blk
66 device          vtnet
67
68 # CPU frequency control
69 device          cpufreq
70
71 # Bus drivers
72 device          al_pci          # Annapurna Alpine PCI-E
73 options         PCI_HP                  # PCI-Express native HotPlug
74 options         PCI_IOV         # PCI SR-IOV support
75
76 # Ethernet NICs
77 device          mdio
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
88
89 # Etherswitch devices
90 device          e6000sw         # Marvell mv88e6085 based switches
91
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
96
97 # MMC/SD/SDIO Card slot support
98 device          sdhci_xenon             # Marvell Xenon SD/MMC controller
99 device          aw_mmc                  # Allwinner SD/MMC controller
100 device          dwmmc
101 device          dwmmc_altera
102 device          rk_emmcphy
103
104 # Serial (COM) ports
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
109 device          uart_snps
110 device          pl011
111
112 # USB support
113 device          aw_usbphy               # Allwinner USB PHY
114 device          dwcotg                  # DWC OTG controller
115 device          ehci_mv                 # Marvell EHCI USB interface
116
117 # USB ethernet support
118 device          muge
119 device          smsc
120
121 # Sound support
122 device a10_codec
123
124 # DMA controller
125 device          a31_dmac
126
127 # GPIO / PINCTRL
128 device          a37x0_gpio      # Marvell Armada 37x0 GPIO controller
129 device          aw_gpio         # Allwinner GPIO controller
130 device          fdt_pinctrl
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
135
136 # I2C
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
141
142 # Clock and reset controllers
143 device          aw_ccu          # Allwinner clock controller
144
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
149
150 # Real-time clock support
151 device          aw_rtc          # Allwinner Real-time Clock
152 device          mv_rtc          # Marvell Real-time Clock
153
154 # Watchdog controllers
155 device          aw_wdog         # Allwinner Watchdog
156
157 # Power management controllers
158 device          axp81x          # X-Powers AXP81x PMIC
159 device          rk805           # RockChip RK805 PMIC
160
161 # EFUSE
162 device          aw_sid          # Allwinner Secure ID EFUSE
163
164 # Thermal sensors
165 device          aw_thermal      # Allwinner Thermal Sensor Controller
166 device          mv_thermal      # Marvell Thermal Sensor Controller
167
168 # SPI
169 device          bcm2835_spi     # Broadcom BCM283x SPI bus
170
171 # PWM
172 device          pwm
173 device          aw_pwm
174
175 device          vt_efifb
176
177 # EVDEV support
178 options         EVDEV_SUPPORT           # evdev support in legacy drivers
179 device          aw_cir
180
181 # Pseudo devices.
182 options         EFIRT           # EFI Runtime Services
183
184 # EXT_RESOURCES pseudo devices
185 options         EXT_RESOURCES
186 device          clk
187 device          phy
188 device          hwreset
189 device          nvmem
190 device          regulator
191 device          syscon
192 device          aw_syscon
193
194 # Misc devices.
195 device          pl330           # ARM PL330 dma controller
196 device          xdma            # xDMA framework for SoC on-chip dma controllers
197
198 # Chip-specific errata
199 options         THUNDERX_PASS_1_1_ERRATA
200
201 options         FDT
202 device          acpi
203
204 # DTBs
205 makeoptions     MODULES_EXTRA="dtb/allwinner dtb/rockchip dtb/rpi"
206
207 # Add CAMDEBUG stuff
208 options         CAMDEBUG
209 options         CAM_DEBUG_FLAGS=(CAM_DEBUG_INFO|CAM_DEBUG_PROBE|CAM_DEBUG_PERIPH)
210
211 # bring in camified MMC too
212 options         MMCCAM
213
214 # arm64 doesn't support inb/outb, so disable chipset probing which needs it
215 nooptions       PPC_PROBE_CHIPSET
216
217 # These cause weird issues, not sure why
218 nooptions       DEBUG
219
220 # Makes assumptions about bus tags that aren't true on arm64
221 nodevice        snd_cmi
222
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
231
232 # arm64 supports 32-bit FreeBSD/arm binaries (armv[67] ABIs)
233 options         COMPAT_FREEBSD32        # Compatible with FreeBSD/arm