# $OpenBSD: RAMDISK,v 1.6 2017/01/25 10:19:15 jsg Exp $
#
# GENERIC machine description file
#
# This machine description file is used to generate the default OpenBSD
# kernel.  The generic kernel does not include all options, subsystems
# and device drivers, but should be useful for most applications.
#
# The machine description file can be customised for your specific
# machine to reduce the kernel size and improve its performance.
#
# For further information on compiling OpenBSD kernels, see the config(8)
# man page.
#
# For further information on hardware support for this architecture, see
# the intro(4) man page.  For further information about kernel options
# for this architecture, see the options(4) man page.  For an explanation
# of each device driver in this file see the section 4 man page for the
# device.

machine		arm64
maxusers	4

option		TIMEZONE=0	# time zone to adjust RTC time by
option		DST=0		# daylight saving time used by RTC
option		USBVERBOSE
option		SMALL_KERNEL
option		NO_PROPOLICE
option		BOOT_CONFIG

option		RAMDISK_HOOKS
option		MINIROOTSIZE=15360

option		FFS
option		MSDOSFS
option		INET6
option		EXT2FS

option		SYSCALL_DEBUG

makeoptions	KERNEL_BASE_PHYS="0x00200000"
makeoptions	KERNEL_BASE_VIRT="0xffffff8000200000"

config		bsd	root on rd0a swap on rd0b

# The main bus device
mainbus0	at root
simplebus*	at fdt?

scsibus*	at scsi?
sd*		at scsibus?
st*		at scsibus?
cd*		at scsibus?
ch*		at scsibus?
uk*		at scsibus?

ampintc*	at fdt?
agtimer*	at fdt?

# NS16550 compatible serial ports
com*		at fdt?

# Virt on-chip devices
pluart*		at fdt?		# onboard uarts
plrtc*		at fdt?
psci*		at fdt?

virtio*		at fdt?
vio*		at virtio?
vioblk*		at virtio?
viomb*		at virtio?
viornd*		at virtio?

# Raspberry Pi 3
bcmintc*	at fdt?
bcmdog*		at fdt?
dwctwo*		at fdt?
usb*		at dwctwo?

# Sunxi SoCs
sxipio*		at fdt? early 1	# GPIO pins for leds & PHYs
gpio*		at sxipio?
sxiccmu*	at fdt? early 1	# Clock Control Module/Unit
sxirtc*		at fdt?		# Real Time Clock
sximmc*		at fdt?		# SD/MMC card controller
sdmmc*		at sximmc?	# SD/MMC bus
ehci*		at fdt?		# EHCI (shim)
usb*		at ehci?

# USB devices
uhub*		at usb?			# USB Hubs
uhub*		at uhub?		# USB Hubs
umass*		at uhub?		# USB Mass Storage devices
uhidev*		at uhub?		# Human Interface Devices
ukbd*		at uhidev?		# USB keyboard
wskbd*		at ukbd? mux 1
aue*		at uhub?		# ADMtek AN986 Pegasus Ethernet
atu*		at uhub?		# Atmel AT76c50x based 802.11b
axe*		at uhub?		# ASIX Electronics AX88172 USB Ethernet
axen*		at uhub?		# ASIX Electronics AX88179 USB Ethernet
cue*		at uhub?		# CATC USB-EL1201A based Ethernet
kue*		at uhub?		# Kawasaki KL5KUSB101B based Ethernet
smsc*		at uhub?		# SMSC LAN95xx Ethernet
cdce*		at uhub?		# CDC Ethernet
urndis*		at uhub?		# Remote NDIS Ethernet
upl*		at uhub?		# Prolific PL2301/PL2302 host-to-host `network'
ugl*		at uhub?		# Genesys Logic GL620USB-A host-to-host `network'
udav*		at uhub?		# Davicom DM9601 based Ethernet
mos*		at uhub?		# MOSCHIP MCS7730/7830 10/100 Ethernet
url*		at uhub?		# Realtek RTL8150L based adapters
ure*		at uhub?		# Realtek RTL8152 based adapters
wi*		at uhub?		# WaveLAN IEEE 802.11DS
uath*		at uhub?		# Atheros AR5005UG/AR5005UX
ural*		at uhub?		# Ralink RT2500USB
rum*		at uhub?		# Ralink RT2501USB/RT2601USB
run*		at uhub?		# Ralink RT2700U/RT2800U/RT3000U
otus*		at uhub?		# Atheros AR9001U
athn*		at uhub?		# Atheros AR9002U
zyd*		at uhub?		# Zydas ZD1211
upgt*		at uhub?		# Conexant/Intersil PrismGT SoftMAC USB
urtw*		at uhub?		# Realtek 8187
rsu*		at uhub?		# Realtek RTL8188SU/RTL8191SU/RTL8192SU
urtwn*		at uhub?		# Realtek RTL8188CU/RTL8192CU

atphy*		at mii?			# Attansic F1 PHYs
rgephy*		at mii?			# Realtek 8169S/8110S PHY
rlphy*		at mii?			# Realtek 8139 internal PHYs
ukphy*		at mii?			# "unknown" PHYs

scsibus*	at scsi?
sd*		at scsibus?
cd*		at scsibus?
st*		at scsibus?
ch*		at scsibus?
uk*		at scsibus?

pseudo-device	loop 1
pseudo-device	bpfilter 1
pseudo-device	rd 1