xref: /netbsd-src/sys/arch/evbarm/conf/GENERIC64 (revision eceb233b9bd0dfebb902ed73b531ae6964fa3f9b)
1#
2#	$NetBSD: GENERIC64,v 1.161 2020/08/02 06:58:16 maxv Exp $
3#
4#	GENERIC ARM (aarch64) kernel
5#
6
7include	"arch/evbarm/conf/std.generic64"
8include "arch/evbarm/conf/files.generic64"
9include	"arch/evbarm/conf/GENERIC.common"
10
11maxusers	64
12
13options 	CPU_CORTEXA53
14options 	CPU_CORTEXA57
15options 	CPU_THUNDERX
16options 	SOC_BCM2837
17options 	SOC_MESONGXBB
18options 	SOC_MESONGXL
19options 	SOC_RK3328
20options 	SOC_RK3399
21options 	SOC_SUN50I_A64
22options 	SOC_SUN50I_H5
23options 	SOC_SUN50I_H6
24options 	SOC_TEGRA210
25options 	SOC_VIRT
26options 	MULTIPROCESSOR
27
28pseudo-device 	openfirm	# /dev/openfirm
29
30#options 	DIAGNOSTIC	# internal consistency checks
31#options 	DEBUG
32#options 	LOCKDEBUG
33#options 	VERBOSE_INIT_ARM # verbose bootstrapping messages
34options 	INCLUDE_CONFIG_FILE
35#options 	UVMHIST		# kernhist for uvm/pmap subsystems
36#options 	UVMHIST_PRINT,KERNHIST_DELAY=0
37
38# EARLYCONS is required for early init messages from VERBOSE_INIT_ARM.
39#options 	EARLYCONS=bcm2837, CONSADDR=0x3f215040
40#options 	EARLYCONS=bcm2711, CONSADDR=0xfe215040
41#options 	EARLYCONS=meson, CONSADDR=0xc81004c0
42#options 	EARLYCONS=rk3328, CONSADDR=0xff130000
43#options 	EARLYCONS=rk3399, CONSADDR=0xff1a0000
44#options 	EARLYCONS=sunxi, CONSADDR=0x01c28000
45#options 	EARLYCONS=tegra, CONSADDR=0x70006000
46#options 	EARLYCONS=thunderx, CONSADDR=0x87e024000000
47#options 	EARLYCONS=virt, CONSADDR=0x09000000
48
49# Privileged Access Never (PAN).
50options 	ARMV81_PAN
51
52# Pointer Authentication (PAC).
53#makeoptions 	ARMV83_PAC=1
54#options 	ARMV83_PAC
55
56# Branch Target Identification (BTI).
57#makeoptions 	ARMV85_BTI=1
58#options 	ARMV85_BTI
59
60# Kernel Undefined Behavior Sanitizer (kUBSan). Use UBSAN_ALWAYS_FATAL
61# if you want panics instead of warnings.
62#options 	KUBSAN			# mandatory
63#options 	UBSAN_ALWAYS_FATAL	# optional
64
65# Kernel Address Sanitizer (kASan). The quarantine is optional and can
66# help KASAN find more use-after-frees. Use KASAN_PANIC if you want panics
67# instead of warnings.
68#makeoptions 	KASAN=1		# mandatory
69#options 	KASAN		# mandatory
70#options 	POOL_QUARANTINE	# optional
71#options 	KASAN_PANIC	# optional
72
73makeoptions	DEBUG="-g"	# compile full symbol table
74makeoptions	COPY_SYMTAB=1
75
76config		netbsd		root on ? type ?
77
78options 	COMPAT_NETBSD32
79options 	EXEC_ELF32
80
81# EFI runtime support
82options 	EFI_RUNTIME
83
84# Device tree support
85armfdt0		at root
86simplebus*	at fdt? pass 0
87
88# ACPI support
89acpifdt*	at fdt? pass 1
90acpi*		at acpifdt?
91acpiacad*	at acpi?
92acpibat*	at acpi?
93acpibut*	at acpi?
94acpifan*	at acpi?
95acpiged*	at acpi?
96acpilid*	at acpi?
97acpitz*		at acpi?
98
99# CPUs
100cpus*		at fdt? pass 0
101cpu*		at fdt? pass 0
102cpu*		at acpi?
103
104# Performance monitors
105armpmu*		at fdt?
106pseudo-device	tprof
107
108# CPU frequency scaling
109cpufreqdt*	at cpu?
110
111# Power State Coordination Interface (PSCI)
112psci*		at fdt? pass 0
113
114fclock*		at fdt? pass 1
115ffclock*	at fdt? pass 1
116fregulator*	at fdt? pass 4
117gregulator*	at fdt? pass 4
118gpiokeys*	at fdt?
119wskbd*		at gpiokeys? console ? mux 1
120gpioleds*	at fdt?
121
122# System Controller
123syscon*		at fdt? pass 1		# Generic System Controller
124sunxisramc*	at fdt? pass 1		# Allwinner System Control
125
126# Timer
127gtmr*		at fdt? pass 1		# ARM Generic Timer
128gtmr*		at acpi?
129armgtmr0	at gtmr?
130tegratimer*	at fdt?			# Timers
131
132# Watchdog
133bcmpmwdog*	at fdt?			# Broadcom BCM283x watchdog
134dwcwdt* 	at fdt?			# DesignWare watchdog
135mesongxwdt*	at fdt?			# Amlogic Meson GX watchdog
136sbsawdt*	at acpi?		# ARM SBSA-compliant watchdog
137sunxiwdt*	at fdt?			# Allwinner watchdog
138
139# Interrupt controller
140bcmicu*		at fdt? pass 1		# Broadcom BCM283x ICU
141tegralic*	at fdt? pass 1		# NVIDIA Tegra LIC
142gic*		at fdt? pass 1		# ARM GICv2
143gic*		at acpi?
144armgic0		at gic?
145gicvthree*	at fdt? pass 1		# ARM GICv3
146gicvthree*	at acpi?
147imx7gpc*	at fdt? pass 2		# IMX GPCv2
148sunxinmi*	at fdt? pass 2		# Allwinner NMI / R_INTC
149
150# Memory controller
151tegramc*	at fdt?	pass 4		# NVIDIA Tegra MC
152
153# Firmware devices
154bcmmbox*	at fdt?			# Broadcom VideoCore IV mailbox
155bcmmbox*	at acpi?
156vcmbox*		at bcmmbox?
157qemufwcfg*	at fdt?			# QEMU Firmware Configuration device
158qemufwcfg*	at acpi?
159
160# DMA controller
161bcmdmac*	at fdt?			# Broadcom BCM283x DMA controller
162sun6idma*	at fdt?	pass 4		# Allwinner DMA controller (sun6i)
163tegraapbdma*	at fdt? pass 4		# NVIDIA Tegra APB DMA
164
165# FUSE controller
166sunxisid*	at fdt? pass 4		# Allwinner SID
167tegrafuse*	at fdt? pass 4		# NVIDIA Tegra FUSE
168
169# Power management controller
170tegrapmc*	at fdt? pass 4		# NVIDIA Tegra PMC
171
172# Clock and Reset controller
173bcmcprman*	at fdt? pass 1		# Broadcom BCM283x Clock Manager
174bcmaux*		at fdt? pass 1		# Broadcom BCM283x Aux Periph Clocks
175gxbbaoclkc*	at fdt? pass 2		# Amlogic Meson GXBB AO clock controller
176gxbbclkc*	at fdt? pass 2		# Amlogic Meson GXBB/GXL EE clock controller
177imx8mqccm*	at fdt? pass 2		# NXP iMX8MQ CCM
178mesonresets*	at fdt? pass 2		# Amlogic Meson misc. clock resets
179rkcru*		at fdt? pass 2		# Rockchip RK3328 CRU
180sun8ih3ccu*	at fdt? pass 2		# Allwinner H3/H5 CCU
181sun8ih3rccu*	at fdt? pass 2		# Allwinner H3/H5 CCU (PRCM)
182sun50ia64ccu*	at fdt? pass 2		# Allwinner A64 CCU
183sun50ia64rccu*	at fdt? pass 2		# Allwinner A64 CCU (PRCM)
184sun50ih6ccu*	at fdt? pass 2		# Allwinner H6 CCU
185sun50ih6rccu*	at fdt? pass 2		# Allwinner H6 CCU (PRCM)
186sunxide2ccu*	at fdt? pass 3		# Allwinner DE2 clock controller
187sunxiresets*	at fdt? pass 1		# Allwinner misc. resets
188sunxigates*	at fdt? pass 1		# Allwinner misc. gates
189sunxigmacclk*	at fdt? pass 2		# Allwinner GMAC MII/RGMII clock mux
190tegra210car*	at fdt? pass 3		# NVIDIA Tegra CAR (T210)
191
192# GPIO controller
193bcmgpio*	at fdt? pass 3		# Broadcom BCM283x GPIO
194imxgpio*	at fdt? pass 3		# IMX GPIO
195mesonpinctrl*	at fdt? pass 2		# Amlogic Meson GPIO
196plgpio*		at fdt?			# ARM PrimeCell PL061 GPIO
197plgpio*		at acpi?
198sunxigpio*	at fdt? pass 3		# Allwinner GPIO
199tegragpio*	at fdt? pass 2		# NVIDIA Tegra GPIO
200rkgpio*		at rkiomux?		# Rockchip GPIO
201gpio*		at gpiobus?
202
203# PWM controller
204rkpwm*		at fdt? pass 3		# Rockchip PWM
205sunxipwm*	at fdt? pass 3		# Allwinner PWM
206
207# MPIO / Pinmux
208imxiomux*	at fdt? pass 2		# IMX IOMUX
209rkiomux*	at fdt?	pass 3		# Rockchip IOMUX
210tegrapinmux*	at fdt?			# NVIDIA Tegra MPIO
211
212# XUSB PADCTL
213tegra210xpad*	at fdt?			# NVIDIA Tegra XUSB PADCTL (T210)
214tegra210xphy*	at tegra210xpad?
215
216# PCIE
217pcihost*	at fdt?			# Generic PCI host controller
218acpipchb*	at acpi?		# ACPI PCIe host bridge
219rkpcie*		at fdt?			# Rockchip AXI PCIE
220rkpciephy*	at fdt? pass 9		# Rockchip AXI PCIE PHY
221tegrapcie0	at fdt?			# NVIDIA Tegra PCIE
222pci*		at pcibus?
223ppb*		at pci? dev ? function ?
224pci*		at ppb?
225
226# Ethernet
227awge*		at fdt?				# DesignWare Gigabit Ethernet
228emac*		at fdt?				# Allwinner Gigabit Ethernet (EMAC)
229enet*		at fdt?				# IMX FEC
230genet*		at acpi?			# Broadcom GENET v5
231genet*		at fdt?
232#scx*		at acpi?			# Socionext Gigabit Ethernet
233#scx*		at fdt?
234aq*		at pci? dev ? function ?	# Aquantia AQC 10 gigabit
235ena*		at pci? dev ? function ?	# Amazon.com Elastic Network Adapter
236mcx*		at pci? dev ? function ?	# Mellanox 5th generation Ethernet
237mskc*		at pci? dev ? function ?	# Marvell Yukon 2 Gigabit Ethernet
238msk*		at mskc?
239re*		at pci? dev ? function ?	# Realtek RTL8111GS
240wm*		at pci? dev ? function ?	# Intel Gigabit Ethernet
241
242# MII/PHY support
243atphy*		at mii? phy ?		# Attansic/Atheros PHYs
244brgphy*		at mii? phy ?		# Broadcom BCM5400-family PHYs
245exphy* 		at mii? phy ?		# 3Com internal PHYs
246gentbi* 	at mii? phy ?		# Generic Ten-Bit 1000BASE-[CLS]X PHYs
247glxtphy*	at mii? phy ?		# Level One LXT-1000 PHYs
248gphyter* 	at mii? phy ?		# NS83861 Gig-E PHY
249gxlphy*		at mii? phy ?		# Amlogic Meson GX internal PHY
250icsphy*		at mii? phy ?		# Integrated Circuit Systems ICS189x
251igphy*		at mii? phy ?		# Intel IGP01E1000
252ihphy*		at mii? phy ?		# Intel 82577 PHYs
253ikphy*		at mii? phy ?		# Intel 82563 PHYs
254inphy*		at mii? phy ?		# Intel 82555 PHYs
255iophy*		at mii? phy ?		# Intel 82553 PHYs
256lxtphy*		at mii? phy ?		# Level One LXT-970 PHYs
257makphy*		at mii? phy ?		# Marvell Semiconductor 88E1000 PHYs
258nsphy*		at mii? phy ?		# NS83840 PHYs
259nsphyter*	at mii? phy ? 		# NS83843 PHYs
260pnaphy*		at mii? phy ?		# generic HomePNA PHYs
261rdcphy*		at mii? phy ?		# RDC R6040 10/100 PHY
262rgephy*		at mii? phy ?		# Realtek 8169S/8110S internal PHYs
263rlphy*		at mii? phy ?		# Realtek 8139/8201L PHYs
264sqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
265tlphy*		at mii? phy ?		# ThunderLAN PHYs
266tqphy*		at mii? phy ?		# TDK Semiconductor PHYs
267urlphy*		at mii? phy ?		# Realtek RTL8150L internal PHYs
268ukphy*		at mii? phy ?		# generic unknown PHYs
269
270# Mini-PCIe Wireless
271#options 	ATHHAL_AR5212,ATHHAL_RF2425	# AR5BHB63
272#ath*		at pci? dev ? function ?	# Atheros IEEE 802.11
273#athn*		at pci? dev ? function ?	# Atheros IEEE 802.11
274
275# UART
276com*		at fdt?	pass 4			# UART
277com*		at acpi?
278imxuart*	at fdt? pass 4			# IMX UART
279options 	IMXUARTCONSOLE
280mesonuart*	at fdt? pass 4			# Amlogic Meson UART
281plcom*		at fdt?	pass 4			# ARM PL011 UART
282plcom*		at acpi?
283puc*		at pci? dev ? function ?	# PCI "universal" comm. cards
284com*		at puc? port ?
285
286# I2C controllers
287options 	I2C_MAX_ADDR=0xfff
288bsciic*		at fdt?			# Broadcom BCM283x Serial Control
289bsciic*		at acpi?
290dwiic*		at fdt?			# Designware I2C
291dwiic*		at acpi?
292imxi2c*		at fdt? pass 4		# IMX I2C
293rkiic*		at fdt? pass 4		# Rockchip I2C
294sunxirsb*	at fdt?	pass 4		# Allwinner RSB
295sunxitwi*	at fdt?			# Allwinner TWI
296tegrai2c*	at fdt? pass 4		# NVIDIA Tegra I2C
297#sniiic*	at fdt?			# Socionext SC2A11 I2C
298#sniiic*	at acpi?
299iic*		at i2cbus?
300
301# I2C devices
302titemp*		at iic?
303seeprom*	at iic?
304spdmem*		at iic?			# memory module SPD EEPROM decoder
305as3722pmic*	at iic?
306as3722reg*	at as3722pmic?
307axppmic*	at iic?			# X-Powers AXP Power Management IC
308axpreg*		at axppmic?
309cwfg*		at iic?			# CellWise CW2015 Fuel Gauge IC
310es8316ac*	at iic?			# Everest Semi ES8316 Audio CODEC
311fan53555reg*	at iic?			# FAN53555 / SY82x regulator
312max77620pmic*	at iic?
313pcf8563rtc*	at iic?			# PCF8563 RTC
314rkpmic*		at iic?			# Rockchip Power Management IC
315rkreg*		at rkpmic?
316tcagpio*	at iic?
317
318# Random number generators
319amdccp*		at fdt?			# AMD Cryptograhic Coprocessor RNG
320amdccp*		at acpi?
321bcmrng*		at fdt?			# Broadcom BCM283x RNG
322mesonrng*	at fdt?			# Amlogic Meson RNG
323sun8icrypto* 	at fdt?			# Allwinner Crypto Engine
324rkv1crypto* 	at fdt?			# Rockchip Crypto v1
325
326# RTC
327plrtc*		at fdt?			# ARM PrimeCell RTC
328sunxirtc*	at fdt? pass 4		# Allwinner RTC
329tegrartc*	at fdt?			# NVIDIA Tegra RTC
330
331# SDMMC
332bcmsdhost*	at fdt?			# Broadcom BCM283x SD Host Interface
333dwcmmc*		at fdt?			# Designware SD/MMC
334mesongxmmc*	at fdt?			# Amlogic Meson GX eMMC/SD/SDIO controller
335mmcpwrseq*	at fdt? pass 5		# Simple MMC power sequence provider
336rkemmcphy*	at fdt?			# Rockchip eMMC PHY
337sdhc*		at fdt?			# SD Host Controller Interface
338sdhc*		at acpi?
339sunximmc*	at fdt?			# Allwinner SD/MMC
340#sniemmc*	at fdt?			# Socionext SC2A11 eMMC
341#sniemmc*	at acpi?
342sdmmc*		at sdmmcbus?
343ld0		at sdmmc0
344ld1		at sdmmc1
345ld2		at sdmmc2
346ld3		at sdmmc3
347ld*		at sdmmc?
348bwfm*		at sdmmc?		# Broadcom BCM43xxx WiFi Interface
349
350# SATA
351ahcisata*	at fdt?			# AHCI SATA
352ahcisata*	at acpi?
353ahcisata*	at pci? dev ? function ?
354atabus*		at ata?
355atapibus*	at atapi?
356wd*		at atabus? drive ?
357cd*		at atapibus? drive ?
358
359# NVMe
360nvme*		at pci? dev ? function ?
361ld*		at nvme? nsid ?
362
363# SPI controllers
364bcmspi*		at fdt?			# Broadcom BCM283x SPI
365rkspi*		at fdt?			# Rockchip SPI
366sun6ispi*	at fdt?			# Allwinner SPI
367spi*		at spibus?
368m25p*		at spi?
369spiflash*	at spiflashbus?
370
371# Audio support
372hdaudio*	at fdt?			# Intel HDA
373hdaudio*	at pci? dev ? function ?
374hdafg*		at hdaudiobus?
375options 	HDAUDIOVERBOSE
376options 	HDAUDIO_ENABLE_HDMI
377options 	HDAUDIO_ENABLE_DISPLAYPORT
378ausoc*		at fdt?			# Simple SoC audio card
379simpleamp*	at fdt?			# Simple amplifier
380spdiftx*	at fdt?			# SPDIF transmitter
381rki2s*		at fdt?			# Rockchip I2S/PCM
382sunxicodec*	at fdt?			# Allwinner audio codec
383sun8icodec*	at fdt?			# Allwinner audio codec (sun8i/sun50i)
384h3codec*	at fdt?			# Allwinner H3 audio codec (analog part)
385a64acodec*	at fdt?			# Allwinner A64 audio codec (analog part)
386sunxii2s*	at fdt?			# Allwinner I2S/PCM
387audio*		at audiobus?
388
389spkr*		at audio?		# PC speaker (synthesized)
390
391# HDMI CEC
392tegracec0	at fdt?			# NVIDIA Tegra HDMI CEC
393hdmicec*	at hdmicecbus?
394
395# Display
396anxdp*		at fdt?			# Analogix-based (e)DP
397anxedp*		at iic?			# Analogix eDP TX
398dispcon*	at fdt?			# Display connector devices
399panel*		at fdt?			# Display panels
400dwhdmi* 	at fdt?			# Designware HDMI TX
401rkdrm*		at fdt? pass 5		# Rockchip DRM master
402rkfb*		at rkdrm?		# Rockchip DRM framebuffer
403rkvop*		at fdt?			# Rockchip Visual Output Processor
404sunxide2bus*	at fdt? pass 4		# Allwinner DE2 bus
405sunxidrm*	at fdt?	pass 5		# Allwinner Display Pipeline
406sunxifb*	at sunxidrm?		# Allwinner DRM framebuffer
407sunxihdmiphy*	at fdt? pass 9		# Allwinner HDMI TX PHY
408sunxilcdc*	at fdt?			# Allwinner DE2 timing controller
409sunximixer*	at fdt?			# Allwinner DE2 mixer
410#tegradrm*	at fdt?			# NVIDIA Tegra Display
411#tegrafb*	at tegrafbbus?
412genfb*		at fdt?			# Simple Framebuffer
413wsdisplay*	at wsemuldisplaydev?
414options 	VCONS_DRAW_INTR
415options 	WSEMUL_VT100
416options 	WS_DEFAULT_FG=WSCOL_WHITE
417options 	WS_DEFAULT_BG=WSCOL_BLACK
418options 	WS_KERNEL_FG=WSCOL_GREEN
419options 	WS_KERNEL_BG=WSCOL_BLACK
420options 	WSDISPLAY_COMPAT_PCVT
421options 	WSDISPLAY_COMPAT_SYSCONS
422options 	WSDISPLAY_COMPAT_USL
423options 	WSDISPLAY_COMPAT_RAWKBD
424options 	WSDISPLAY_DEFAULTSCREENS=4
425options 	WSDISPLAY_MULTICONS
426options 	WSDISPLAY_SCROLLSUPPORT
427pseudo-device	wsmux
428pseudo-device	wsfont
429options 	FONT_BOLD8x16
430options 	FONT_BOLD16x32
431
432# GPU
433#nouveau*	at fdt?			# NVIDIA GPU
434nouveau*	at pci? dev ? function ?
435nouveaufb*	at nouveaufbbus?
436radeon*		at pci? dev ? function ? # AMD Radeon
437radeondrmkmsfb*	at radeonfbbus?
438
439# Backlight
440pwmbacklight*	at fdt?			# PWM Backlight controls
441
442# Fan
443pwmfan*		at fdt?			# PWM Fan controls
444
445# Thermal throttling controller
446sunxithermal*	at fdt?			# Allwinner thermal sensor controller
447tegrasoctherm*	at fdt?			# NVIDIA Tegra SOC_THERM
448rktsadc*	at fdt?			# RockChip TSASC
449
450# USB
451imx8mqusbphy*	at fdt? pass 9		# IMX USB PHY
452mesonusbphy*	at fdt? pass 9		# Amlogic Meson USB2 PHY
453mesongxlu2phy*	at fdt? pass 9		# Amlogic Meson GXL USB2 PHY
454mesongxlu3phy*	at fdt? pass 9		# Amlogic Meson GXL USB3 PHY
455rkusb*		at fdt? pass 9		# Rockchip USB PHY
456rkusbphy*	at rkusb?
457sunxiusbphy*	at fdt? pass 9		# Allwinner USB PHY
458sunxiusb3phy*	at fdt? pass 9		# Allwinner USB3 PHY
459tegrausbphy*	at fdt?			# NVIDIA Tegra USB PHY
460dwctwo*		at fdt?			# Designware USB DRD
461ehci*		at fdt?			# EHCI
462ehci*		at pci?			# EHCI
463ehci*		at acpi?		# EHCI
464motg*		at fdt?			# Mentor Graphics USB OTG
465ohci*		at fdt?			# OHCI
466ohci*		at pci?			# OHCI
467xhci*		at fdt?			# XHCI
468xhci*		at pci?			# XHCI
469xhci*		at acpi?		# XHCI
470usb*		at usbus?
471
472include "dev/usb/usbdevices.config"
473midi*		at midibus?
474pseudo-device	sequencer			# MIDI sequencer
475
476# Virtio devices
477virtio*		at fdt?			# Virtio MMIO device
478virtio*		at acpi?
479virtio*		at pci? dev ? function ?
480#viomb*		at virtio?		# Virtio memory balloon device
481ld*		at virtio?		# Virtio disk device
482vioif*		at virtio?		# Virtio network device
483viornd*		at virtio?		# Virtio entropy device
484vioscsi*	at virtio?		# Virtio SCSI device
485
486# SCSI controllers
487mpt*		at pci? dev ? function ?
488
489# SCSI bus support
490scsibus*	at scsi?
491sd*		at scsibus? target ? lun ?	# SCSI disk drives
492
493cinclude "arch/evbarm/conf/GENERIC64.local"
494