#
#	$NetBSD: $
#
#	GENERIC ARM (aarch64) kernel
#

include	"arch/evbarm/conf/std.odroid_c2"
include "arch/evbarm/conf/files.odroid_c2"
include	"arch/evbarm/conf/GENERIC.common"

#
# FDT files supported by this kernel - add to DTSSUBDIR and DTS as
# appropriate
#
makeoptions 	DTSARCH="arm aarch64"
makeoptions	DTSGNUARCH="arm arm64"
makeoptions	DTSSUBDIR="amlogic"
makeoptions	DTS="
	meson-gxbb-odroidc2.dts		
"
options 	CPU_CORTEXA53
options 	SOC_S905
options 	MULTIPROCESSOR

pseudo-device 	openfirm	# /dev/openfirm

#options 	LOCKDEBUG
#options 	PMAP_DEBUG	# Enable pmap_debug_level code
#options 	IPKDB		# remote kernel debugging
#options 	VERBOSE_INIT_ARM # verbose bootstrapping messages
# EARLYCONS is required for early init messages from VERBOSE_INIT_ARM.
#options 	EARLYCONS=bcm2837
#options 	EARLYCONS=sunxi, CONSADDR=0x01c28000
#options 	EARLYCONS=tegra, CONSADDR=0x70006000
#options 	EARLYCONS=meson, CONSADDR=0xc81004c0
options 	CONSADDR=0xc81004c0

makeoptions	DEBUG="-g"	# compile full symbol table
makeoptions	COPY_SYMTAB=1

config		netbsd		root on ? type ?

# Device tree support
armfdt0		at root
simplebus*	at fdt? pass 0

# CPUs
cpus*		at fdt? pass 0
cpu*		at fdt? pass 0

# System Controller
syscon*		at fdt? pass 1		# Generic System Controller

# CPU frequency scaling
cpufreqdt*	at cpu?

# Power State Coordination Interface (PSCI)
psci*		at fdt?

fclock*		at fdt? pass 1
ffclock*	at fdt? pass 1
fregulator*	at fdt? pass 4
gregulator*	at fdt? pass 4
gpiokeys*	at fdt?
wskbd*		at gpiokeys? console ? mux 1
gpioleds*	at fdt?

# Timer
gtmr*		at fdt? pass 1		# ARM Generic Timer
armgtmr0	at gtmr?
#a9tmr*		at fdt? pass 1

# Watchdog
#sunxiwdt*	at fdt?			# Allwinner watchdog
#watchdog*	at fdt?			# Broadcom BCM283x watchdog

# Interrupt controller
gic*		at fdt? pass 1		# ARM GIC
armgic0		at gic?

# Memory controller
#tegramc*	at fdt?	pass 4		# NVIDIA Tegra MC

# DMA controller
#bcmdmac*	at fdt?			# Broadcom BCM283x DMA controller
#sun6idma*	at fdt?			# Allwinner DMA controller (sun6i)
#tegraapbdma*	at fdt? pass 4		# NVIDIA Tegra APB DMA

# FUSE controller
#sunxisid*	at fdt? pass 4		# Allwinner SID
#tegrafuse*	at fdt? pass 4		# NVIDIA Tegra FUSE

# Power management controller
#tegrapmc*	at fdt? pass 4		# NVIDIA Tegra PMC

# Clock and Reset controller
#bcmcprman*	at fdt? pass 1		# Broadcom BCM283x Clock Manager
#bcmaux* 	at fdt? pass 1		# Broadcom BCM283x Aux Periph Clocks
#mesonresets* 	at fdt? pass 1

#mesoniomux*	at fdt? pass 1

# GPIO controller
#bcmgpio*	at fdt?			# Broadcom BCM283x GPIO
#sunxigpio*	at fdt? pass 3		# Allwinner GPIO
#tegragpio*	at fdt? pass 2		# NVIDIA Tegra GPIO
#gpio*		at gpiobus?

# PWM controller
#sunxipwm*	at fdt? pass 3		# Allwinner PWM

# MPIO / Pinmux
#tegrapinmux*	at fdt?			# NVIDIA Tegra MPIO

# XUSB PADCTL
#tegra210xpad*	at fdt?			# NVIDIA Tegra XUSB PADCTL (T210)
#tegra210xphy*	at tegra210xpad?

# Hardware random number generator
#mesonrng0	at fdt?

# SDHC controller
#mesonsdhc*	at fdt?
#sdmmc*		at mesonsdhc?
#ld*		at sdmmc?

# Ethernet
awge0 		at fdt?

# MII/PHY support
rgephy*		at mii? phy ?		# Realtek 8169S/8110S internal PHYs
ukphy*		at mii? phy ?		# generic unknown PHYs

# UART
mesoncom* 	at fdt?

# I2C controllers
#bsciic* 	at fdt?			# Broadcom BCM283x Serial Control
#sunxirsb*	at fdt?			# Allwinner RSB
#sunxitwi*	at fdt?			# Allwinner TWI
#tegrai2c*	at fdt? pass 4		# NVIDIA Tegra I2C
#iic*		at i2cbus?

# I2C devices
#titemp* 	at iic?
#seeprom*	at iic?
#as3722pmic*	at iic?
#as3722reg*	at as3722pmic?
#axppmic*	at iic?			# X-Powers AXP Power Management IC
#axpreg* 	at axppmic?
#max77620pmic*	at iic?
#pcf8563rtc*	at iic?			# PCF8563 RTC
#tcagpio*	at iic?

# Random number generators
#bcmrng* 	at fdt?			# Broadcom BCM283x RNG
mesonrng* 	at fdt?

# RTC
#sunxirtc*	at fdt?			# Allwinner RTC
#tegrartc*	at fdt?			# NVIDIA Tegra RTC
#mesonrtc* 	at fdt?

# SDMMC
#mmcpwrseq*	at fdt?			# Simple MMC power sequence provider
#sdhc*		at fdt?			# SD Host Controller Interface
#sdhost* 	at fdt?			# Broadcom BCM283x SD Host Interface
#sunximmc*	at fdt?			# Allwinner SD/MMC
#sdmmc*		at sdmmcbus?
#ld0		at sdmmc0
#ld1		at sdmmc1
#ld2		at sdmmc2
#ld3		at sdmmc3
#ld*		at sdmmc?

# SPI controllers
#bcmspi* 	at fdt?			# Broadcom BCM283x SPI
#spi*		at spibus?

# HDMI CEC
#tegracec0	at fdt?			# NVIDIA Tegra HDMI CEC
#hdmicec*	at hdmicecbus?

# Display
#tegradrm*	at fdt?			# NVIDIA Tegra Display
#tegrafb*	at tegrafbbus?
#genfb*		at fdt?			# Simple Framebuffer
#wsdisplay*	at wsemuldisplaydev?
options 	VCONS_DRAW_INTR
options 	WSEMUL_VT100
options 	WS_DEFAULT_FG=WSCOL_WHITE
options 	WS_DEFAULT_BG=WSCOL_BLACK
options 	WS_KERNEL_FG=WSCOL_GREEN
options 	WS_KERNEL_BG=WSCOL_BLACK
options 	WSDISPLAY_COMPAT_PCVT
options 	WSDISPLAY_COMPAT_SYSCONS
options 	WSDISPLAY_COMPAT_USL
options 	WSDISPLAY_COMPAT_RAWKBD
options 	WSDISPLAY_DEFAULTSCREENS=4
#pseudo-device	wsmux
#pseudo-device	wsfont

# Backlight
#pwmbacklight*	at fdt?			# PWM Backlight controls

# USB
dwctwo* 	at fdt?			# Designware USB DRD
#motg*		at fdt?			# Mentor Graphics USB OTG
usb*		at usbus?

#include "dev/usb/usbdevices.config"
#midi*		at midibus?

cinclude "arch/evbarm/conf/ODROID-C2.local"
