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