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