GENERIC64 revision 1.42
11.1Sryo#
21.42Sskrll#	$NetBSD: GENERIC64,v 1.42 2018/10/03 05:45:49 skrll Exp $
31.1Sryo#
41.1Sryo#	GENERIC ARM (aarch64) kernel
51.1Sryo#
61.1Sryo
71.1Sryoinclude	"arch/evbarm/conf/std.generic64"
81.1Sryoinclude "arch/evbarm/conf/files.generic64"
91.1Sryoinclude	"arch/evbarm/conf/GENERIC.common"
101.1Sryo
111.1Sryo#
121.1Sryo# FDT files supported by this kernel - add to DTSSUBDIR and DTS as
131.1Sryo# appropriate
141.1Sryo#
151.1Sryomakeoptions 	DTSARCH="arm aarch64"
161.1Sryomakeoptions	DTSGNUARCH="arm arm64"
171.17Sjmcneillmakeoptions	DTSSUBDIR="allwinner broadcom nvidia rockchip"
181.1Sryomakeoptions	DTS="
191.1Sryo	bcm2837-rpi-3-b.dts
201.24Sskrll	bcm2837-rpi-3-b-plus.dts
211.1Sryo
221.17Sjmcneill	rk3328-evb.dts
231.17Sjmcneill	rk3328-roc-cc.dts
241.17Sjmcneill	rk3328-rock64.dts
251.17Sjmcneill
261.30Sjmcneill	rk3399-evb.dts
271.30Sjmcneill	rk3399-firefly.dts
281.30Sjmcneill	rk3399-gru-kevin.dts
291.30Sjmcneill	rk3399-puma-haikou.dts
301.31Sjmcneill	rk3399-rockpro64.dts
311.30Sjmcneill	rk3399-sapphire-excavator.dts
321.30Sjmcneill	rk3399-sapphire.dts
331.30Sjmcneill
341.1Sryo	sun50i-a64-bananapi-m64.dts
351.1Sryo	sun50i-a64-nanopi-a64.dts
361.1Sryo	sun50i-a64-olinuxino.dts
371.1Sryo	sun50i-a64-orangepi-win.dts
381.1Sryo	sun50i-a64-pine64-plus.dts
391.1Sryo	sun50i-a64-pine64.dts
401.1Sryo	sun50i-a64-pinebook.dts
411.1Sryo	sun50i-a64-sopine-baseboard.dts
421.2Sjmcneill	sun50i-a64-teres-i.dts
431.1Sryo
441.19Sjmcneill	sun50i-h5-libretech-all-h3-cc.dts
451.1Sryo	sun50i-h5-nanopi-neo-plus2.dts
461.1Sryo	sun50i-h5-nanopi-neo2.dts
471.1Sryo	sun50i-h5-orangepi-pc2.dts
481.1Sryo	sun50i-h5-orangepi-prime.dts
491.2Sjmcneill	sun50i-h5-orangepi-zero-plus.dts
501.1Sryo	sun50i-h5-orangepi-zero-plus2.dts
511.1Sryo
521.5Sjmcneill	sun50i-h6-pine-h64.dts
531.5Sjmcneill
541.1Sryo	tegra210-p2371-0000.dts
551.1Sryo	tegra210-p2371-2180.dts
561.1Sryo	tegra210-p2571.dts
571.1Sryo	tegra210-smaug.dts
581.1Sryo"
591.1Sryooptions 	CPU_CORTEXA53
601.1Sryooptions 	CPU_CORTEXA57
611.1Sryooptions 	SOC_BCM2837
621.17Sjmcneilloptions 	SOC_RK3328
631.30Sjmcneilloptions 	SOC_RK3399
641.1Sryooptions 	SOC_TEGRA210
651.1Sryooptions 	SOC_SUN50I_A64
661.1Sryooptions 	SOC_SUN50I_H5
671.5Sjmcneilloptions 	SOC_SUN50I_H6
681.16Sjmcneilloptions 	SOC_VIRT
691.26Sjmcneilloptions 	MULTIPROCESSOR
701.1Sryo
711.1Sryopseudo-device 	openfirm	# /dev/openfirm
721.1Sryo
731.1Sryooptions 	DIAGNOSTIC	# internal consistency checks
741.1Sryooptions 	DEBUG
751.1Sryo#options 	LOCKDEBUG
761.1Sryo#options 	PMAP_DEBUG	# Enable pmap_debug_level code
771.1Sryooptions 	VERBOSE_INIT_ARM # verbose bootstrapping messages
781.1Sryo# EARLYCONS is required for early init messages from VERBOSE_INIT_ARM.
791.1Sryo#options 	EARLYCONS=bcm2837
801.18Sjmcneill#options 	EARLYCONS=rk3328, CONSADDR=0xff130000
811.33Sjmcneill#options 	EARLYCONS=rk3399, CONSADDR=0xff1a0000
821.1Sryo#options 	EARLYCONS=sunxi, CONSADDR=0x01c28000
831.1Sryo#options 	EARLYCONS=tegra, CONSADDR=0x70006000
841.42Sskrll#options 	EARLYCONS=thunderx, CONSADDR=0x87e024000000
851.16Sjmcneill#options 	EARLYCONS=virt
861.1Sryo
871.1Sryomakeoptions	DEBUG="-g"	# compile full symbol table
881.1Sryomakeoptions	COPY_SYMTAB=1
891.1Sryo
901.1Sryoconfig		netbsd		root on ? type ?
911.1Sryo
921.1Sryo# Device tree support
931.1Sryoarmfdt0		at root
941.23Sjmcneillsimplebus*	at fdt? pass 0
951.1Sryo
961.1Sryo# CPUs
971.1Sryocpus*		at fdt? pass 0
981.22Sjmcneillcpu*		at fdt? pass 0
991.1Sryo
1001.28Sjmcneill# Performance monitors
1011.28Sjmcneillarmpmu*		at fdt?
1021.29Sjmcneillpseudo-device	tprof
1031.28Sjmcneill
1041.1Sryo# CPU frequency scaling
1051.1Sryocpufreqdt*	at cpu?
1061.1Sryo
1071.1Sryo# Power State Coordination Interface (PSCI)
1081.1Sryopsci*		at fdt?
1091.1Sryo
1101.1Sryofclock*		at fdt? pass 1
1111.1Sryoffclock*	at fdt? pass 1
1121.1Sryofregulator*	at fdt? pass 4
1131.1Sryogregulator*	at fdt? pass 4
1141.1Sryogpiokeys*	at fdt?
1151.1Sryowskbd*		at gpiokeys? console ? mux 1
1161.1Sryogpioleds*	at fdt?
1171.1Sryo
1181.20Sjmcneill# System Controller
1191.20Sjmcneillsyscon*		at fdt? pass 1		# Generic System Controller
1201.20Sjmcneill
1211.1Sryo# Timer
1221.1Sryogtmr*		at fdt? pass 1		# ARM Generic Timer
1231.1Sryoarmgtmr0	at gtmr?
1241.1Sryotegratimer*	at fdt?			# Timers
1251.1Sryo
1261.1Sryo# Watchdog
1271.1Sryosunxiwdt*	at fdt?			# Allwinner watchdog
1281.1Sryowatchdog*	at fdt?			# Broadcom BCM283x watchdog
1291.1Sryo
1301.1Sryo# Interrupt controller
1311.1Sryobcmicu*		at fdt? pass 1		# Broadcom BCM283x ICU
1321.1Sryotegralic*	at fdt? pass 1		# NVIDIA Tegra LIC
1331.30Sjmcneillgic*		at fdt? pass 1		# ARM GICv2
1341.1Sryoarmgic0		at gic?
1351.30Sjmcneillgicvthree*	at fdt? pass 1		# ARM GICv3
1361.9Sjmcneillsunxinmi*	at fdt? pass 2		# Allwinner NMI / R_INTC
1371.1Sryo
1381.1Sryo# Memory controller
1391.1Sryotegramc*	at fdt?	pass 4		# NVIDIA Tegra MC
1401.1Sryo
1411.1Sryo# Firmware devices
1421.1Sryobcmmbox*	at fdt?			# Broadcom VideoCore IV mailbox
1431.1Sryovcmbox*		at bcmmbox?
1441.41Sjmcneillqemufwcfg*	at fdt?			# QEMU Firmware Configuration device
1451.1Sryo
1461.1Sryo# DMA controller
1471.1Sryobcmdmac*	at fdt?			# Broadcom BCM283x DMA controller
1481.1Sryosun6idma*	at fdt?			# Allwinner DMA controller (sun6i)
1491.1Sryotegraapbdma*	at fdt? pass 4		# NVIDIA Tegra APB DMA
1501.1Sryo
1511.1Sryo# FUSE controller
1521.3Sjmcneillsunxisid*	at fdt? pass 4		# Allwinner SID
1531.1Sryotegrafuse*	at fdt? pass 4		# NVIDIA Tegra FUSE
1541.1Sryo
1551.1Sryo# Power management controller
1561.1Sryotegrapmc*	at fdt? pass 4		# NVIDIA Tegra PMC
1571.1Sryo
1581.1Sryo# Clock and Reset controller
1591.1Sryobcmcprman*	at fdt? pass 1		# Broadcom BCM283x Clock Manager
1601.1Sryobcmaux*		at fdt? pass 1		# Broadcom BCM283x Aux Periph Clocks
1611.17Sjmcneillrkcru*		at fdt? pass 2		# Rockchip RK3328 CRU
1621.1Sryosun8ih3ccu*	at fdt? pass 2		# Allwinner H3/H5 CCU
1631.1Sryosun8ih3rccu*	at fdt? pass 2		# Allwinner H3/H5 CCU (PRCM)
1641.1Sryosun50ia64ccu*	at fdt? pass 2		# Allwinner A64 CCU
1651.12Sjmcneillsun50ia64rccu*	at fdt? pass 2		# Allwinner A64 CCU (PRCM)
1661.5Sjmcneillsun50ih6ccu*	at fdt? pass 2		# Allwinner H6 CCU
1671.8Sjmcneillsun50ih6rccu*	at fdt? pass 2		# Allwinner H6 CCU (PRCM)
1681.1Sryosunxiresets*	at fdt? pass 1		# Allwinner misc. resets
1691.1Sryosunxigates*	at fdt? pass 1		# Allwinner misc. gates
1701.1Sryosunxigmacclk*	at fdt? pass 2		# Allwinner GMAC MII/RGMII clock mux
1711.1Sryotegra210car*	at fdt? pass 3		# NVIDIA Tegra CAR (T210)
1721.1Sryo
1731.1Sryo# GPIO controller
1741.1Sryobcmgpio*	at fdt?			# Broadcom BCM283x GPIO
1751.35Sjmcneillpl061gpio*	at fdt?			# ARM PrimeCell PL061 GPIO
1761.1Sryosunxigpio*	at fdt? pass 3		# Allwinner GPIO
1771.1Sryotegragpio*	at fdt? pass 2		# NVIDIA Tegra GPIO
1781.17Sjmcneillrkgpio*		at rkiomux?		# Rockchip GPIO
1791.1Sryogpio*		at gpiobus?
1801.1Sryo
1811.13Sjmcneill# PWM controller
1821.13Sjmcneillsunxipwm*	at fdt? pass 3		# Allwinner PWM
1831.13Sjmcneill
1841.1Sryo# MPIO / Pinmux
1851.30Sjmcneillrkiomux*	at fdt?	pass 3		# Rockchip IOMUX
1861.1Sryotegrapinmux*	at fdt?			# NVIDIA Tegra MPIO
1871.1Sryo
1881.1Sryo# XUSB PADCTL
1891.1Sryotegra210xpad*	at fdt?			# NVIDIA Tegra XUSB PADCTL (T210)
1901.1Sryotegra210xphy*	at tegra210xpad?
1911.1Sryo
1921.1Sryo# PCIE
1931.35Sjmcneillpcihost*	at fdt?			# Generic PCI host controller
1941.1Sryotegrapcie0	at fdt?			# NVIDIA Tegra PCIE
1951.35Sjmcneillpci*		at pcibus? 
1961.1Sryoppb*		at pci? dev ? function ?
1971.1Sryopci*		at ppb?
1981.1Sryo
1991.1Sryo# Ethernet
2001.17Sjmcneillawge*		at fdt?				# DesignWare Gigabit Ethernet
2011.1Sryoemac*		at fdt?				# Allwinner Gigabit Ethernet (EMAC)
2021.37Sjmcneillmskc*		at pci? dev ? function ?	# Marvell Yukon 2 Gigabit Ethernet
2031.37Sjmcneillmsk*		at mskc?
2041.1Sryore*		at pci? dev ? function ?	# Realtek RTL8111GS
2051.1Sryo
2061.1Sryo# MII/PHY support
2071.1Sryoexphy* 		at mii? phy ?		# 3Com internal PHYs
2081.1Sryogentbi* 	at mii? phy ?		# Generic Ten-Bit 1000BASE-[CLS]X PHYs
2091.1Sryoglxtphy*	at mii? phy ?		# Level One LXT-1000 PHYs
2101.1Sryogphyter* 	at mii? phy ?		# NS83861 Gig-E PHY
2111.1Sryoicsphy*		at mii? phy ?		# Integrated Circuit Systems ICS189x
2121.1Sryoigphy*		at mii? phy ?		# Intel IGP01E1000
2131.1Sryoihphy*		at mii? phy ?		# Intel 82577 PHYs
2141.1Sryoikphy*		at mii? phy ?		# Intel 82563 PHYs
2151.1Sryoinphy*		at mii? phy ?		# Intel 82555 PHYs
2161.1Sryoiophy*		at mii? phy ?		# Intel 82553 PHYs
2171.1Sryolxtphy*		at mii? phy ?		# Level One LXT-970 PHYs
2181.1Sryomakphy*		at mii? phy ?		# Marvell Semiconductor 88E1000 PHYs
2191.1Sryonsphy*		at mii? phy ?		# NS83840 PHYs
2201.1Sryonsphyter*	at mii? phy ? 		# NS83843 PHYs
2211.1Sryopnaphy*		at mii? phy ?		# generic HomePNA PHYs
2221.1Sryoqsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
2231.1Sryordcphy*		at mii? phy ?		# RDC R6040 10/100 PHY
2241.1Sryorgephy*		at mii? phy ?		# Realtek 8169S/8110S internal PHYs
2251.1Sryorlphy*		at mii? phy ?		# Realtek 8139/8201L PHYs
2261.1Sryosqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
2271.1Sryotlphy*		at mii? phy ?		# ThunderLAN PHYs
2281.1Sryotqphy*		at mii? phy ?		# TDK Semiconductor PHYs
2291.1Sryourlphy*		at mii? phy ?		# Realtek RTL8150L internal PHYs
2301.1Sryoukphy*		at mii? phy ?		# generic unknown PHYs
2311.1Sryo
2321.1Sryo# Mini-PCIe Wireless
2331.1Sryo#options 	ATHHAL_AR5212,ATHHAL_RF2425	# AR5BHB63
2341.1Sryo#ath*		at pci? dev ? function ?	# Atheros IEEE 802.11
2351.1Sryo#athn*		at pci? dev ? function ?	# Atheros IEEE 802.11
2361.1Sryo
2371.1Sryo# UART
2381.36Sjmcneillcom*		at fdt?	pass 4		# UART
2391.36Sjmcneillplcom*		at fdt?	pass 4		# ARM PL011 UART
2401.1Sryo
2411.1Sryo# I2C controllers
2421.1Sryobsciic*		at fdt?			# Broadcom BCM283x Serial Control
2431.38Sjakllschdwiic*		at fdt?			# Designware I2C
2441.25Sjmcneillrkiic*		at fdt?			# Rockchip I2C
2451.1Sryosunxirsb*	at fdt?			# Allwinner RSB
2461.1Sryosunxitwi*	at fdt?			# Allwinner TWI
2471.1Sryotegrai2c*	at fdt? pass 4		# NVIDIA Tegra I2C
2481.1Sryoiic*		at i2cbus?
2491.1Sryo
2501.1Sryo# I2C devices
2511.1Sryotitemp*		at iic?
2521.1Sryoseeprom*	at iic?
2531.38Sjakllschspdmem*		at iic?			# memory module SPD EEPROM decoder
2541.1Sryoas3722pmic*	at iic?
2551.1Sryoas3722reg*	at as3722pmic?
2561.11Sjmcneillaxppmic*	at iic?			# X-Powers AXP Power Management IC
2571.14Sjmcneillaxpreg*		at axppmic?
2581.32Sjmcneillfan53555reg*	at iic?			# FAN53555 / SY82x regulator
2591.1Sryomax77620pmic*	at iic?
2601.7Sjmcneillpcf8563rtc*	at iic?			# PCF8563 RTC
2611.34Sjmcneillrkpmic*		at iic?			# Rockchip Power Management IC
2621.34Sjmcneillrkreg*		at rkpmic?
2631.1Sryotcagpio*	at iic?
2641.1Sryo
2651.1Sryo# Random number generators
2661.1Sryobcmrng*		at fdt?			# Broadcom BCM283x RNG
2671.1Sryo
2681.1Sryo# RTC
2691.40Sjmcneillplrtc*		at fdt?			# ARM PrimeCell RTC
2701.1Sryosunxirtc*	at fdt?			# Allwinner RTC
2711.1Sryotegrartc*	at fdt?			# NVIDIA Tegra RTC
2721.1Sryo
2731.1Sryo# SDMMC
2741.17Sjmcneilldwcmmc*		at fdt?			# Designware SD/MMC
2751.1Sryommcpwrseq*	at fdt?			# Simple MMC power sequence provider
2761.1Sryosdhc*		at fdt?			# SD Host Controller Interface
2771.1Sryosdhost*		at fdt?			# Broadcom BCM283x SD Host Interface
2781.1Sryosunximmc*	at fdt?			# Allwinner SD/MMC
2791.1Sryosdmmc*		at sdmmcbus?
2801.1Sryold0		at sdmmc0
2811.1Sryold1		at sdmmc1
2821.1Sryold2		at sdmmc2
2831.1Sryold3		at sdmmc3
2841.1Sryold*		at sdmmc?
2851.1Sryo
2861.1Sryo# SATA
2871.1Sryoahcisata*	at fdt?			# AHCI SATA
2881.1Sryoatabus*		at ata?
2891.1Sryoatapibus*	at atapi?
2901.1Sryowd*		at atabus? drive ?
2911.1Sryocd*		at atapibus? drive ?
2921.1Sryo
2931.1Sryo# SPI controllers
2941.1Sryobcmspi*		at fdt?			# Broadcom BCM283x SPI
2951.1Sryospi*		at spibus?
2961.1Sryo
2971.1Sryo# Audio support
2981.1Sryohdaudio*	at fdt?			# Intel HDA
2991.1Sryohdafg*		at hdaudiobus?
3001.1Sryooptions 	HDAUDIOVERBOSE
3011.1Sryooptions 	HDAUDIO_32BIT_ACCESS
3021.1Sryooptions 	HDAUDIO_ENABLE_HDMI
3031.1Sryooptions 	HDAUDIO_ENABLE_DISPLAYPORT
3041.15Sjmcneillausoc*		at fdt?			# Simple SoC audio card
3051.1Sryosunxicodec*	at fdt?			# Allwinner audio codec
3061.15Sjmcneillsun8icodec*	at fdt?			# Allwinner audio codec (sun8i/sun50i)
3071.1Sryoh3codec*	at fdt?			# Allwinner H3 audio codec (analog part)
3081.15Sjmcneilla64acodec*	at fdt?			# Allwinner A64 audio codec (analog part)
3091.15Sjmcneillsunxii2s*	at fdt?			# Allwinner I2S/PCM
3101.1Sryoaudio*		at audiobus?
3111.1Sryo
3121.1Sryospkr*		at audio?		# PC speaker (synthesized)
3131.1Sryo
3141.1Sryo# HDMI CEC
3151.1Sryotegracec0	at fdt?			# NVIDIA Tegra HDMI CEC
3161.1Sryohdmicec*	at hdmicecbus?
3171.1Sryo
3181.1Sryo# Display
3191.1Sryo#tegradrm*	at fdt?			# NVIDIA Tegra Display
3201.1Sryo#tegrafb*	at tegrafbbus?
3211.1Sryogenfb*		at fdt?			# Simple Framebuffer
3221.1Sryowsdisplay*	at wsemuldisplaydev?
3231.1Sryooptions 	VCONS_DRAW_INTR
3241.1Sryooptions 	WSEMUL_VT100
3251.1Sryooptions 	WS_DEFAULT_FG=WSCOL_WHITE
3261.1Sryooptions 	WS_DEFAULT_BG=WSCOL_BLACK
3271.1Sryooptions 	WS_KERNEL_FG=WSCOL_GREEN
3281.1Sryooptions 	WS_KERNEL_BG=WSCOL_BLACK
3291.1Sryooptions 	WSDISPLAY_COMPAT_PCVT
3301.1Sryooptions 	WSDISPLAY_COMPAT_SYSCONS
3311.1Sryooptions 	WSDISPLAY_COMPAT_USL
3321.1Sryooptions 	WSDISPLAY_COMPAT_RAWKBD
3331.1Sryooptions 	WSDISPLAY_DEFAULTSCREENS=4
3341.36Sjmcneilloptions 	WSDISPLAY_MULTICONS
3351.1Sryopseudo-device	wsmux
3361.1Sryopseudo-device	wsfont
3371.1Sryo
3381.1Sryo# GPU
3391.1Sryo#nouveau*	at fdt?			# NVIDIA GPU
3401.1Sryo
3411.13Sjmcneill# Backlight
3421.13Sjmcneillpwmbacklight*	at fdt?			# PWM Backlight controls
3431.13Sjmcneill
3441.1Sryo# Thermal throttling controller
3451.3Sjmcneillsunxithermal*	at fdt?			# Allwinner thermal sensor controller
3461.1Sryotegrasoctherm*	at fdt?			# NVIDIA Tegra SOC_THERM
3471.1Sryo
3481.1Sryo# USB
3491.17Sjmcneillrkusb*		at fdt? pass 9		# Rockchip USB PHY
3501.17Sjmcneillrkusbphy*	at rkusb?
3511.1Sryosunxiusbphy*	at fdt? pass 9		# Allwinner USB PHY
3521.6Sjmcneillsunxiusb3phy*	at fdt? pass 9		# Allwinner USB3 PHY
3531.1Sryotegrausbphy*	at fdt?			# NVIDIA Tegra USB PHY
3541.1Sryodwctwo*		at fdt?			# Designware USB DRD
3551.1Sryoehci*		at fdt?			# EHCI
3561.35Sjmcneillehci*		at pci?			# EHCI
3571.4Sjmcneillmotg*		at fdt?			# Mentor Graphics USB OTG
3581.1Sryoohci*		at fdt?			# OHCI
3591.35Sjmcneillohci*		at pci?			# OHCI
3601.1Sryoxhci*		at fdt?			# XHCI
3611.35Sjmcneillxhci*		at pci?			# XHCI
3621.1Sryousb*		at usbus?
3631.1Sryo
3641.1Sryoinclude "dev/usb/usbdevices.config"
3651.1Sryomidi*		at midibus?
3661.1Sryo
3671.39Sjmcneill# Virtio devices
3681.39Sjmcneillvirtio*		at fdt?			# Virtio MMIO device
3691.39Sjmcneill#viomb*		at virtio?		# Virtio memory balloon device
3701.39Sjmcneillld*		at virtio?		# Virtio disk device
3711.39Sjmcneillvioif*		at virtio?		# Virtio network device
3721.39Sjmcneillviornd*		at virtio?		# Virtio entropy device
3731.39Sjmcneillvioscsi*	at virtio?		# Virtio SCSI device
3741.39Sjmcneill
3751.1Sryocinclude "arch/evbarm/conf/GENERIC64.local"
376