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