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