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