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