GENERIC64 revision 1.68
1#
2#	$NetBSD: GENERIC64,v 1.68 2018/11/30 16:28: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
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?
268puc*		at pci? dev ? function ?	# PCI "universal" comm. cards
269com*		at puc? port ?
270
271# I2C controllers
272bsciic*		at fdt?			# Broadcom BCM283x Serial Control
273dwiic*		at fdt?			# Designware I2C
274dwiic*		at acpi?
275rkiic*		at fdt?			# Rockchip I2C
276sunxirsb*	at fdt?			# Allwinner RSB
277sunxitwi*	at fdt?			# Allwinner TWI
278tegrai2c*	at fdt? pass 4		# NVIDIA Tegra I2C
279iic*		at i2cbus?
280
281# I2C devices
282titemp*		at iic?
283seeprom*	at iic?
284spdmem*		at iic?			# memory module SPD EEPROM decoder
285as3722pmic*	at iic?
286as3722reg*	at as3722pmic?
287axppmic*	at iic?			# X-Powers AXP Power Management IC
288axpreg*		at axppmic?
289fan53555reg*	at iic?			# FAN53555 / SY82x regulator
290max77620pmic*	at iic?
291pcf8563rtc*	at iic?			# PCF8563 RTC
292rkpmic*		at iic?			# Rockchip Power Management IC
293rkreg*		at rkpmic?
294tcagpio*	at iic?
295
296# Random number generators
297bcmrng*		at fdt?			# Broadcom BCM283x RNG
298amdccp*		at fdt?			# AMD Cryptograhic Coprocessor RNG
299amdccp*		at acpi?
300
301# RTC
302plrtc*		at fdt?			# ARM PrimeCell RTC
303sunxirtc*	at fdt?			# Allwinner RTC
304tegrartc*	at fdt?			# NVIDIA Tegra RTC
305
306# SDMMC
307dwcmmc*		at fdt?			# Designware SD/MMC
308mmcpwrseq*	at fdt?			# Simple MMC power sequence provider
309sdhc*		at fdt?			# SD Host Controller Interface
310sdhost*		at fdt?			# Broadcom BCM283x SD Host Interface
311sunximmc*	at fdt?			# Allwinner SD/MMC
312sdmmc*		at sdmmcbus?
313ld0		at sdmmc0
314ld1		at sdmmc1
315ld2		at sdmmc2
316ld3		at sdmmc3
317ld*		at sdmmc?
318
319# SATA
320ahcisata*	at fdt?			# AHCI SATA
321ahcisata*	at acpi?
322atabus*		at ata?
323atapibus*	at atapi?
324wd*		at atabus? drive ?
325cd*		at atapibus? drive ?
326
327# NVMe
328nvme*		at pci? dev ? function ?
329ld*		at nvme? nsid ?
330
331# SPI controllers
332bcmspi*		at fdt?			# Broadcom BCM283x SPI
333spi*		at spibus?
334
335# Audio support
336hdaudio*	at fdt?			# Intel HDA
337hdafg*		at hdaudiobus?
338options 	HDAUDIOVERBOSE
339options 	HDAUDIO_32BIT_ACCESS
340options 	HDAUDIO_ENABLE_HDMI
341options 	HDAUDIO_ENABLE_DISPLAYPORT
342ausoc*		at fdt?			# Simple SoC audio card
343sunxicodec*	at fdt?			# Allwinner audio codec
344sun8icodec*	at fdt?			# Allwinner audio codec (sun8i/sun50i)
345h3codec*	at fdt?			# Allwinner H3 audio codec (analog part)
346a64acodec*	at fdt?			# Allwinner A64 audio codec (analog part)
347sunxii2s*	at fdt?			# Allwinner I2S/PCM
348audio*		at audiobus?
349
350spkr*		at audio?		# PC speaker (synthesized)
351
352# HDMI CEC
353tegracec0	at fdt?			# NVIDIA Tegra HDMI CEC
354hdmicec*	at hdmicecbus?
355
356# Display
357#tegradrm*	at fdt?			# NVIDIA Tegra Display
358#tegrafb*	at tegrafbbus?
359genfb*		at fdt?			# Simple Framebuffer
360wsdisplay*	at wsemuldisplaydev?
361options 	VCONS_DRAW_INTR
362options 	WSEMUL_VT100
363options 	WS_DEFAULT_FG=WSCOL_WHITE
364options 	WS_DEFAULT_BG=WSCOL_BLACK
365options 	WS_KERNEL_FG=WSCOL_GREEN
366options 	WS_KERNEL_BG=WSCOL_BLACK
367options 	WSDISPLAY_COMPAT_PCVT
368options 	WSDISPLAY_COMPAT_SYSCONS
369options 	WSDISPLAY_COMPAT_USL
370options 	WSDISPLAY_COMPAT_RAWKBD
371options 	WSDISPLAY_DEFAULTSCREENS=4
372options 	WSDISPLAY_MULTICONS
373pseudo-device	wsmux
374pseudo-device	wsfont
375
376# GPU
377#nouveau*	at fdt?			# NVIDIA GPU
378
379# Backlight
380pwmbacklight*	at fdt?			# PWM Backlight controls
381
382# Thermal throttling controller
383sunxithermal*	at fdt?			# Allwinner thermal sensor controller
384tegrasoctherm*	at fdt?			# NVIDIA Tegra SOC_THERM
385
386# USB
387rkusb*		at fdt? pass 9		# Rockchip USB PHY
388rkusbphy*	at rkusb?
389sunxiusbphy*	at fdt? pass 9		# Allwinner USB PHY
390sunxiusb3phy*	at fdt? pass 9		# Allwinner USB3 PHY
391tegrausbphy*	at fdt?			# NVIDIA Tegra USB PHY
392dwctwo*		at fdt?			# Designware USB DRD
393ehci*		at fdt?			# EHCI
394ehci*		at pci?			# EHCI
395ehci*		at acpi?		# EHCI
396motg*		at fdt?			# Mentor Graphics USB OTG
397ohci*		at fdt?			# OHCI
398ohci*		at pci?			# OHCI
399xhci*		at fdt?			# XHCI
400xhci*		at pci?			# XHCI
401xhci*		at acpi?		# XHCI
402usb*		at usbus?
403
404include "dev/usb/usbdevices.config"
405midi*		at midibus?
406
407# Virtio devices
408virtio*		at fdt?			# Virtio MMIO device
409virtio*		at acpi?
410virtio*		at pci? dev ? function ?
411#viomb*		at virtio?		# Virtio memory balloon device
412ld*		at virtio?		# Virtio disk device
413vioif*		at virtio?		# Virtio network device
414viornd*		at virtio?		# Virtio entropy device
415vioscsi*	at virtio?		# Virtio SCSI device
416
417# SCSI bus support
418scsibus*	at scsi?
419sd*		at scsibus? target ? lun ?	# SCSI disk drives
420
421cinclude "arch/evbarm/conf/GENERIC64.local"
422