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