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