GENERIC64 revision 1.81
1#
2#	$NetBSD: GENERIC64,v 1.81 2019/03/05 11:44:22 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
11#
12# FDT files supported by this kernel - add to DTSSUBDIR and DTS as
13# appropriate
14#
15makeoptions 	DTSARCH="arm aarch64"
16makeoptions	DTSGNUARCH="arm arm64"
17makeoptions	DTSSUBDIR="allwinner amlogic broadcom nvidia rockchip"
18makeoptions	DTS="
19	bcm2837-rpi-3-b.dts
20	bcm2837-rpi-3-b-plus.dts
21	bcm2837-rpi-cm3-io3.dts
22
23	meson-gxbb-nanopi-k2.dts
24	meson-gxbb-nexbox-a95x.dts
25	meson-gxbb-odroidc2.dts
26	meson-gxbb-p200.dts
27	meson-gxbb-p201.dts
28	meson-gxbb-vega-s95-meta.dts
29	meson-gxbb-vega-s95-pro.dts
30	meson-gxbb-vega-s95-telos.dts
31	meson-gxbb-wetek-hub.dts
32	meson-gxbb-wetek-play2.dts
33
34	rk3328-evb.dts
35	rk3328-roc-cc.dts
36	rk3328-rock64.dts
37
38	rk3399-evb.dts
39	rk3399-ficus.dts
40	rk3399-firefly.dts
41	rk3399-gru-bob.dts
42	rk3399-gru-kevin.dts
43	rk3399-puma-haikou.dts
44	rk3399-roc-pc.dts
45	rk3399-rock960.dts
46	rk3399-rockpro64.dts
47	rk3399-sapphire-excavator.dts
48	rk3399-sapphire.dts
49
50	sun50i-a64-bananapi-m64.dts
51	sun50i-a64-nanopi-a64.dts
52	sun50i-a64-olinuxino.dts
53	sun50i-a64-orangepi-win.dts
54	sun50i-a64-pine64-plus.dts
55	sun50i-a64-pine64.dts
56	sun50i-a64-pinebook.dts
57	sun50i-a64-sopine-baseboard.dts
58	sun50i-a64-teres-i.dts
59
60	sun50i-h5-bananapi-m2-plus-v1.2.dts
61	sun50i-h5-bananapi-m2-plus.dts
62	sun50i-h5-libretech-all-h3-cc.dts
63	sun50i-h5-nanopi-neo-plus2.dts
64	sun50i-h5-nanopi-neo2.dts
65	sun50i-h5-orangepi-pc2.dts
66	sun50i-h5-orangepi-prime.dts
67	sun50i-h5-orangepi-zero-plus.dts
68	sun50i-h5-orangepi-zero-plus2.dts
69
70	sun50i-h6-orangepi-one-plus.dts
71	sun50i-h6-pine-h64.dts
72
73	tegra210-p2371-0000.dts
74	tegra210-p2371-2180.dts
75	tegra210-p2571.dts
76	tegra210-smaug.dts
77"
78options 	CPU_CORTEXA53
79options 	CPU_CORTEXA57
80options 	CPU_THUNDERX
81options 	SOC_BCM2837
82options 	SOC_MESONGXBB
83options 	SOC_RK3328
84options 	SOC_RK3399
85options 	SOC_SUN50I_A64
86options 	SOC_SUN50I_H5
87options 	SOC_SUN50I_H6
88options 	SOC_TEGRA210
89#options 	SOC_THUNDERX
90options 	SOC_VIRT
91options 	MULTIPROCESSOR
92
93pseudo-device 	openfirm	# /dev/openfirm
94
95#options 	DIAGNOSTIC	# internal consistency checks
96#options 	DEBUG
97#options 	LOCKDEBUG
98#options 	PMAP_DEBUG	# Enable pmap_debug_level code
99options 	VERBOSE_INIT_ARM # verbose bootstrapping messages
100options 	INCLUDE_CONFIG_FILE
101# EARLYCONS is required for early init messages from VERBOSE_INIT_ARM.
102#options 	EARLYCONS=bcm2837
103#options 	EARLYCONS=meson, CONSADDR=0xc81004c0
104#options 	EARLYCONS=rk3328, CONSADDR=0xff130000
105#options 	EARLYCONS=rk3399, CONSADDR=0xff1a0000
106#options 	EARLYCONS=sunxi, CONSADDR=0x01c28000
107#options 	EARLYCONS=tegra, CONSADDR=0x70006000
108#options 	EARLYCONS=thunderx, CONSADDR=0x87e024000000
109#options 	EARLYCONS=virt
110
111# Kernel Address Sanitizer (kASan).
112#makeoptions 	KASAN=1		# Kernel Address Sanitizer
113#options 	KASAN
114
115makeoptions	DEBUG="-g"	# compile full symbol table
116makeoptions	COPY_SYMTAB=1
117
118config		netbsd		root on ? type ?
119
120options 	COMPAT_NETBSD32
121options 	EXEC_ELF32
122
123# EFI runtime support
124options 	EFI_RUNTIME
125
126# Device tree support
127armfdt0		at root
128simplebus*	at fdt? pass 0
129
130# ACPI support
131acpifdt*	at fdt? pass 1
132acpi*		at acpifdt?
133acpibut*	at acpi?
134acpiged*	at acpi?
135acpilid*	at acpi?
136
137# CPUs
138cpus*		at fdt? pass 0
139cpu*		at fdt? pass 0
140cpu*		at acpi?
141
142# Performance monitors
143armpmu*		at fdt?
144pseudo-device	tprof
145
146# CPU frequency scaling
147cpufreqdt*	at cpu?
148
149# Power State Coordination Interface (PSCI)
150psci*		at fdt?
151
152fclock*		at fdt? pass 1
153ffclock*	at fdt? pass 1
154fregulator*	at fdt? pass 4
155gregulator*	at fdt? pass 4
156gpiokeys*	at fdt?
157wskbd*		at gpiokeys? console ? mux 1
158gpioleds*	at fdt?
159
160# System Controller
161syscon*		at fdt? pass 1		# Generic System Controller
162sunxisramc*	at fdt? pass 1		# Allwinner System Control
163
164# Timer
165gtmr*		at fdt? pass 1		# ARM Generic Timer
166gtmr*		at acpi?
167armgtmr0	at gtmr?
168tegratimer*	at fdt?			# Timers
169
170# Watchdog
171sbsawdt*	at acpi?		# ARM SBSA-compliant watchdog
172sunxiwdt*	at fdt?			# Allwinner watchdog
173watchdog*	at fdt?			# Broadcom BCM283x watchdog
174
175# Interrupt controller
176bcmicu*		at fdt? pass 1		# Broadcom BCM283x ICU
177tegralic*	at fdt? pass 1		# NVIDIA Tegra LIC
178gic*		at fdt? pass 1		# ARM GICv2
179gic*		at acpi?
180armgic0		at gic?
181gicvthree*	at fdt? pass 1		# ARM GICv3
182gicvthree*	at acpi?
183sunxinmi*	at fdt? pass 2		# Allwinner NMI / R_INTC
184
185# Memory controller
186tegramc*	at fdt?	pass 4		# NVIDIA Tegra MC
187
188# Firmware devices
189bcmmbox*	at fdt?			# Broadcom VideoCore IV mailbox
190vcmbox*		at bcmmbox?
191qemufwcfg*	at fdt?			# QEMU Firmware Configuration device
192qemufwcfg*	at acpi?
193
194# DMA controller
195bcmdmac*	at fdt?			# Broadcom BCM283x DMA controller
196sun6idma*	at fdt?			# Allwinner DMA controller (sun6i)
197tegraapbdma*	at fdt? pass 4		# NVIDIA Tegra APB DMA
198
199# FUSE controller
200sunxisid*	at fdt? pass 4		# Allwinner SID
201tegrafuse*	at fdt? pass 4		# NVIDIA Tegra FUSE
202
203# Power management controller
204tegrapmc*	at fdt? pass 4		# NVIDIA Tegra PMC
205
206# Clock and Reset controller
207bcmcprman*	at fdt? pass 1		# Broadcom BCM283x Clock Manager
208bcmaux*		at fdt? pass 1		# Broadcom BCM283x Aux Periph Clocks
209gxbbaoclkc*	at fdt? pass 2		# Amlogic Meson GXBB AO clock controller
210gxbbclkc*	at fdt? pass 2		# Amlogic Meson GXBB EE clock controller
211mesonresets*	at fdt? pass 2		# Amlogic Meson misc. clock resets
212rkcru*		at fdt? pass 2		# Rockchip RK3328 CRU
213sun8ih3ccu*	at fdt? pass 2		# Allwinner H3/H5 CCU
214sun8ih3rccu*	at fdt? pass 2		# Allwinner H3/H5 CCU (PRCM)
215sun50ia64ccu*	at fdt? pass 2		# Allwinner A64 CCU
216sun50ia64rccu*	at fdt? pass 2		# Allwinner A64 CCU (PRCM)
217sun50ih6ccu*	at fdt? pass 2		# Allwinner H6 CCU
218sun50ih6rccu*	at fdt? pass 2		# Allwinner H6 CCU (PRCM)
219sunxide2ccu*	at fdt? pass 3		# Allwinner DE2 clock controller
220sunxiresets*	at fdt? pass 1		# Allwinner misc. resets
221sunxigates*	at fdt? pass 1		# Allwinner misc. gates
222sunxigmacclk*	at fdt? pass 2		# Allwinner GMAC MII/RGMII clock mux
223tegra210car*	at fdt? pass 3		# NVIDIA Tegra CAR (T210)
224
225# GPIO controller
226bcmgpio*	at fdt?			# Broadcom BCM283x GPIO
227mesonpinctrl*	at fdt? pass 2		# Amlogic Meson GPIO
228plgpio*		at fdt?			# ARM PrimeCell PL061 GPIO
229plgpio*		at acpi?
230sunxigpio*	at fdt? pass 3		# Allwinner GPIO
231tegragpio*	at fdt? pass 2		# NVIDIA Tegra GPIO
232rkgpio*		at rkiomux?		# Rockchip GPIO
233gpio*		at gpiobus?
234
235# PWM controller
236sunxipwm*	at fdt? pass 3		# Allwinner PWM
237
238# MPIO / Pinmux
239rkiomux*	at fdt?	pass 3		# Rockchip IOMUX
240tegrapinmux*	at fdt?			# NVIDIA Tegra MPIO
241
242# XUSB PADCTL
243tegra210xpad*	at fdt?			# NVIDIA Tegra XUSB PADCTL (T210)
244tegra210xphy*	at tegra210xpad?
245
246# PCIE
247pcihost*	at fdt?			# Generic PCI host controller
248acpipchb*	at acpi?		# ACPI PCIe host bridge
249tegrapcie0	at fdt?			# NVIDIA Tegra PCIE
250pci*		at pcibus?
251ppb*		at pci? dev ? function ?
252pci*		at ppb?
253
254# Ethernet
255awge*		at fdt?				# DesignWare Gigabit Ethernet
256emac*		at fdt?				# Allwinner Gigabit Ethernet (EMAC)
257ena*		at pci? dev ? function ?	# Amazon.com Elastic Network Adapter
258mskc*		at pci? dev ? function ?	# Marvell Yukon 2 Gigabit Ethernet
259msk*		at mskc?
260re*		at pci? dev ? function ?	# Realtek RTL8111GS
261
262# MII/PHY support
263exphy* 		at mii? phy ?		# 3Com internal PHYs
264gentbi* 	at mii? phy ?		# Generic Ten-Bit 1000BASE-[CLS]X PHYs
265glxtphy*	at mii? phy ?		# Level One LXT-1000 PHYs
266gphyter* 	at mii? phy ?		# NS83861 Gig-E PHY
267icsphy*		at mii? phy ?		# Integrated Circuit Systems ICS189x
268igphy*		at mii? phy ?		# Intel IGP01E1000
269ihphy*		at mii? phy ?		# Intel 82577 PHYs
270ikphy*		at mii? phy ?		# Intel 82563 PHYs
271inphy*		at mii? phy ?		# Intel 82555 PHYs
272iophy*		at mii? phy ?		# Intel 82553 PHYs
273lxtphy*		at mii? phy ?		# Level One LXT-970 PHYs
274makphy*		at mii? phy ?		# Marvell Semiconductor 88E1000 PHYs
275nsphy*		at mii? phy ?		# NS83840 PHYs
276nsphyter*	at mii? phy ? 		# NS83843 PHYs
277pnaphy*		at mii? phy ?		# generic HomePNA PHYs
278qsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
279rdcphy*		at mii? phy ?		# RDC R6040 10/100 PHY
280rgephy*		at mii? phy ?		# Realtek 8169S/8110S internal PHYs
281rlphy*		at mii? phy ?		# Realtek 8139/8201L PHYs
282sqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
283tlphy*		at mii? phy ?		# ThunderLAN PHYs
284tqphy*		at mii? phy ?		# TDK Semiconductor PHYs
285urlphy*		at mii? phy ?		# Realtek RTL8150L internal PHYs
286ukphy*		at mii? phy ?		# generic unknown PHYs
287
288# Mini-PCIe Wireless
289#options 	ATHHAL_AR5212,ATHHAL_RF2425	# AR5BHB63
290#ath*		at pci? dev ? function ?	# Atheros IEEE 802.11
291#athn*		at pci? dev ? function ?	# Atheros IEEE 802.11
292
293# UART
294com*		at fdt?	pass 4			# UART
295com*		at acpi?
296mesonuart*	at fdt? pass 4			# Amlogic Meson UART
297plcom*		at fdt?	pass 4			# ARM PL011 UART
298plcom*		at acpi?
299puc*		at pci? dev ? function ?	# PCI "universal" comm. cards
300com*		at puc? port ?
301
302# I2C controllers
303bsciic*		at fdt?			# Broadcom BCM283x Serial Control
304dwiic*		at fdt?			# Designware I2C
305dwiic*		at acpi?
306rkiic*		at fdt?			# Rockchip I2C
307sunxirsb*	at fdt?	pass 4		# Allwinner RSB
308sunxitwi*	at fdt?			# Allwinner TWI
309tegrai2c*	at fdt? pass 4		# NVIDIA Tegra I2C
310iic*		at i2cbus?
311
312# I2C devices
313titemp*		at iic?
314seeprom*	at iic?
315spdmem*		at iic?			# memory module SPD EEPROM decoder
316as3722pmic*	at iic?
317as3722reg*	at as3722pmic?
318axppmic*	at iic?			# X-Powers AXP Power Management IC
319axpreg*		at axppmic?
320fan53555reg*	at iic?			# FAN53555 / SY82x regulator
321max77620pmic*	at iic?
322pcf8563rtc*	at iic?			# PCF8563 RTC
323rkpmic*		at iic?			# Rockchip Power Management IC
324rkreg*		at rkpmic?
325tcagpio*	at iic?
326
327# Random number generators
328bcmrng*		at fdt?			# Broadcom BCM283x RNG
329amdccp*		at fdt?			# AMD Cryptograhic Coprocessor RNG
330amdccp*		at acpi?
331
332# RTC
333plrtc*		at fdt?			# ARM PrimeCell RTC
334sunxirtc*	at fdt?			# Allwinner RTC
335tegrartc*	at fdt?			# NVIDIA Tegra RTC
336
337# SDMMC
338dwcmmc*		at fdt?			# Designware SD/MMC
339mesongxmmc*	at fdt?			# Amlogic Meson GX eMMC/SD/SDIO controller
340mmcpwrseq*	at fdt?			# Simple MMC power sequence provider
341sdhc*		at fdt?			# SD Host Controller Interface
342sdhost*		at fdt?			# Broadcom BCM283x SD Host Interface
343sunximmc*	at fdt?			# Allwinner SD/MMC
344sdmmc*		at sdmmcbus?
345ld0		at sdmmc0
346ld1		at sdmmc1
347ld2		at sdmmc2
348ld3		at sdmmc3
349ld*		at sdmmc?
350
351# SATA
352ahcisata*	at fdt?			# AHCI SATA
353ahcisata*	at acpi?
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
365spi*		at spibus?
366
367# Audio support
368hdaudio*	at fdt?			# Intel HDA
369hdafg*		at hdaudiobus?
370options 	HDAUDIOVERBOSE
371options 	HDAUDIO_32BIT_ACCESS
372options 	HDAUDIO_ENABLE_HDMI
373options 	HDAUDIO_ENABLE_DISPLAYPORT
374ausoc*		at fdt?			# Simple SoC audio card
375sunxicodec*	at fdt?			# Allwinner audio codec
376sun8icodec*	at fdt?			# Allwinner audio codec (sun8i/sun50i)
377h3codec*	at fdt?			# Allwinner H3 audio codec (analog part)
378a64acodec*	at fdt?			# Allwinner A64 audio codec (analog part)
379sunxii2s*	at fdt?			# Allwinner I2S/PCM
380audio*		at audiobus?
381
382spkr*		at audio?		# PC speaker (synthesized)
383
384# HDMI CEC
385tegracec0	at fdt?			# NVIDIA Tegra HDMI CEC
386hdmicec*	at hdmicecbus?
387
388# Display
389anxedp*		at iic?			# Analogix eDP TX
390dispcon*	at fdt?			# Display connector devices
391dwhdmi* 	at fdt?			# Designware HDMI TX
392sunxide2bus*	at fdt? pass 4		# Allwinner DE2 bus
393sunxidrm*	at fdt?	pass 5		# Allwinner Display Pipeline
394sunxifb*	at sunxidrm?		# Allwinner DRM framebuffer
395sunxihdmiphy*	at fdt? pass 9		# Allwinner HDMI TX PHY
396sunxilcdc*	at fdt?			# Allwinner DE2 timing controller
397sunximixer*	at fdt?			# Allwinner DE2 mixer
398#tegradrm*	at fdt?			# NVIDIA Tegra Display
399#tegrafb*	at tegrafbbus?
400genfb*		at fdt?			# Simple Framebuffer
401wsdisplay*	at wsemuldisplaydev?
402options 	VCONS_DRAW_INTR
403options 	WSEMUL_VT100
404options 	WS_DEFAULT_FG=WSCOL_WHITE
405options 	WS_DEFAULT_BG=WSCOL_BLACK
406options 	WS_KERNEL_FG=WSCOL_GREEN
407options 	WS_KERNEL_BG=WSCOL_BLACK
408options 	WSDISPLAY_COMPAT_PCVT
409options 	WSDISPLAY_COMPAT_SYSCONS
410options 	WSDISPLAY_COMPAT_USL
411options 	WSDISPLAY_COMPAT_RAWKBD
412options 	WSDISPLAY_DEFAULTSCREENS=4
413options 	WSDISPLAY_MULTICONS
414pseudo-device	wsmux
415pseudo-device	wsfont
416
417# GPU
418#nouveau*	at fdt?			# NVIDIA GPU
419
420# Backlight
421pwmbacklight*	at fdt?			# PWM Backlight controls
422
423# Thermal throttling controller
424sunxithermal*	at fdt?			# Allwinner thermal sensor controller
425tegrasoctherm*	at fdt?			# NVIDIA Tegra SOC_THERM
426
427# USB
428mesonusbphy*	at fdt? pass 9		# Amlogic Meson USB2 PHY
429rkusb*		at fdt? pass 9		# Rockchip USB PHY
430rkusbphy*	at rkusb?
431sunxiusbphy*	at fdt? pass 9		# Allwinner USB PHY
432sunxiusb3phy*	at fdt? pass 9		# Allwinner USB3 PHY
433tegrausbphy*	at fdt?			# NVIDIA Tegra USB PHY
434dwctwo*		at fdt?			# Designware USB DRD
435ehci*		at fdt?			# EHCI
436ehci*		at pci?			# EHCI
437ehci*		at acpi?		# EHCI
438motg*		at fdt?			# Mentor Graphics USB OTG
439ohci*		at fdt?			# OHCI
440ohci*		at pci?			# OHCI
441xhci*		at fdt?			# XHCI
442xhci*		at pci?			# XHCI
443xhci*		at acpi?		# XHCI
444usb*		at usbus?
445
446include "dev/usb/usbdevices.config"
447midi*		at midibus?
448
449# Virtio devices
450virtio*		at fdt?			# Virtio MMIO device
451virtio*		at acpi?
452virtio*		at pci? dev ? function ?
453#viomb*		at virtio?		# Virtio memory balloon device
454ld*		at virtio?		# Virtio disk device
455vioif*		at virtio?		# Virtio network device
456viornd*		at virtio?		# Virtio entropy device
457vioscsi*	at virtio?		# Virtio SCSI device
458
459# SCSI bus support
460scsibus*	at scsi?
461sd*		at scsibus? target ? lun ?	# SCSI disk drives
462
463cinclude "arch/evbarm/conf/GENERIC64.local"
464