summaryrefslogtreecommitdiff
path: root/sys/arch/armv7/conf
diff options
context:
space:
mode:
authorPatrick Wildt <patrick@cvs.openbsd.org>2013-09-04 14:38:50 +0000
committerPatrick Wildt <patrick@cvs.openbsd.org>2013-09-04 14:38:50 +0000
commit6bbb01e146782eed471c94cbe2563ae8b59d1b8b (patch)
tree367a031eac776c18fc2f1d73bf86cb60576272b1 /sys/arch/armv7/conf
parentd33bef10c2430729f5df07f3a6eca73a8f3f5d1f (diff)
In the future, we shouldn't have one port port ARM SoC, that's just
ridiculous. This is the first step for a common and generic ARM port for ARMv7 SoCs.
Diffstat (limited to 'sys/arch/armv7/conf')
-rw-r--r--sys/arch/armv7/conf/GENERIC-OMAP164
-rw-r--r--sys/arch/armv7/conf/Makefile.armv7189
-rw-r--r--sys/arch/armv7/conf/RAMDISK-OMAP188
-rw-r--r--sys/arch/armv7/conf/files.armv7159
4 files changed, 700 insertions, 0 deletions
diff --git a/sys/arch/armv7/conf/GENERIC-OMAP b/sys/arch/armv7/conf/GENERIC-OMAP
new file mode 100644
index 00000000000..4608c171198
--- /dev/null
+++ b/sys/arch/armv7/conf/GENERIC-OMAP
@@ -0,0 +1,164 @@
+# $OpenBSD: GENERIC-OMAP,v 1.1 2013/09/04 14:38:25 patrick 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 armv7 arm
+include "../../../conf/GENERIC"
+options TIMEZONE=0 # time zone to adjust RTC time by
+options DST=0 # daylight saving time used by RTC
+#options NFSCLIENT # NFS
+
+makeoptions KERNEL_BASE_PHYS="0x80300000"
+makeoptions KERNEL_BASE_VIRT="0xc0300000"
+options BUILD_STARTUP_PAGETABLE
+options STARTUP_PAGETABLE_ADDR=0x80200000
+options SDRAM_START="0x80000000"
+
+#options APERTURE
+
+#options BOOT_CONFIG # boot-time kernel config
+
+# estimated number of users
+
+maxusers 32
+
+# CPU options
+options CPU_ARMv7 # Support the ARMv7
+
+#option WSDISPLAY_COMPAT_USL # VT handling
+#option WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
+option WSDISPLAY_DEFAULTSCREENS=1
+#option WSDISPLAY_COMPAT_PCVT # emulate some ioctls
+
+config bsd swap generic
+
+# The main bus device
+mainbus0 at root
+cpu0 at mainbus?
+
+# OMAP3xxx/OMAP4xxx SoC
+omap0 at mainbus?
+omapid* at soc?
+
+# Cortex-A9 (OMAP4)
+cortex0 at mainbus?
+ampintc* at cortex?
+amptimer* at cortex?
+#armliicc* at cortex? # L2 cache controller
+
+# OMAP3 only
+intc* at soc? # interrupt controller
+
+# OMAP on-chip devices
+prcm* at soc? # power/clock controller
+sitaracm* at soc? # sitara control module
+omdog* at soc? # watchdog timer
+omgpio* at soc? # user-visible GPIO pins?
+gptimer* at soc? # general purpose timers
+dmtimer* at soc? # am335x dual mode timers
+ommmc* at soc? # SD/MMC card controller
+omusbtll* at soc?
+cpsw* at soc?
+
+#omkbd* at soc?
+#wskbd* at omkbd? mux 1
+
+ehci* at soc? # EHCI (shim)
+usb* at ehci?
+
+#usbotg0 at soc?
+#usb* at ohci?
+
+## USB bus support
+usb* at ehci? flags 0x1
+uhub* at usb?
+uhub* at uhub?
+
+uhub* at usb? # USB Hubs
+uhub* at uhub? # USB Hubs
+umodem* at uhub? # USB Modems/Serial
+ucom* at umodem?
+uvisor* at uhub? # Handspring Visor
+ucom* at uvisor?
+uvscom* at uhub? # SUNTAC Slipper U VS-10U serial
+ucom* at uvscom?
+ubsa* at uhub? # Belkin serial adapter
+ucom* at ubsa?
+uftdi* at uhub? # FTDI FT8U100AX serial adapter
+ucom* at uftdi?
+uplcom* at uhub? # I/O DATA USB-RSAQ2 serial adapter
+ucom* at uplcom?
+umct* at uhub? # MCT USB-RS232 serial adapter
+ucom* at umct?
+uaudio* at uhub? # USB Audio
+audio* at uaudio?
+umidi* at uhub? # USB MIDI
+midi* at umidi?
+ulpt* at uhub? # USB Printers
+umass* at uhub? # USB Mass Storage devices
+uhidev* at uhub? # Human Interface Devices
+ums* at uhidev? # USB mouse
+wsmouse* at ums? mux 0
+ukbd* at uhidev? # USB keyboard
+wskbd* at ukbd? mux 1
+uhid* at uhidev? # USB generic HID support
+aue* at uhub? # ADMtek AN986 Pegasus Ethernet
+atu* at uhub? # Atmel AT76c50x based 802.11b
+axe* at uhub? # ASIX Electronics AX88172 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
+upl* at uhub? # Prolific PL2301/PL2302 host-to-host `network'
+udav* at uhub? # Davicom DM9601 based Ethernet
+url* at uhub? # Realtek RTL8150L based adapters
+wi* at uhub? # WaveLAN IEEE 802.11DS
+urio* at uhub? # Diamond Multimedia Rio 500
+#uyap* at uhub? # Y@P firmware loader
+udsbr* at uhub? # D-Link DSB-R100 radio
+radio* at udsbr? # USB radio
+#ubt* at uhub? disable # USB Bluetooth
+ugen* at uhub? # USB Generic driver
+
+ukphy* at mii? # "unknown" PHYs
+
+scsibus* at scsi?
+sd* at scsibus?
+st* at scsibus?
+cd* at scsibus?
+ch* at scsibus?
+uk* at scsibus?
+
+# onboard uarts
+com* at soc?
+
+# LCD
+#omdisplay0 at soc? # LCD DISPLAY
+#wsdisplay* at omdisplay? console ?
+
+sdmmc* at ommmc? # SD/MMC bus
+
+# Bluetooth controllers
+#sbt* at sdmmc? disable # SDIO Bluetooth
+
+# APM emulation
+#apm0 at pxaip?
+
+# Pseudo-Devices
+pseudo-device hotplug 1 # devices hot plugging
diff --git a/sys/arch/armv7/conf/Makefile.armv7 b/sys/arch/armv7/conf/Makefile.armv7
new file mode 100644
index 00000000000..684267cd716
--- /dev/null
+++ b/sys/arch/armv7/conf/Makefile.armv7
@@ -0,0 +1,189 @@
+# $OpenBSD: Makefile.armv7,v 1.1 2013/09/04 14:38:25 patrick Exp $
+
+# For instructions on building kernels consult the config(8) and options(4)
+# manual pages.
+#
+# N.B.: NO DEPENDENCIES ON FOLLOWING FLAGS ARE VISIBLE TO MAKEFILE
+# IF YOU CHANGE THE DEFINITION OF ANY OF THESE RECOMPILE EVERYTHING
+# DEBUG is set to -g by config if debugging is requested (config -g).
+# PROF is set to -pg by config if profiling is requested (config -p).
+
+.include <bsd.own.mk>
+
+SIZE?= size
+STRIP?= strip
+
+# source tree is located via $S relative to the compilation directory
+.ifndef S
+S!= cd ../../../..; pwd
+.endif
+
+_machdir?= $S/arch/${_mach}
+_archdir?= $S/arch/${_arch}
+
+INCLUDES= -nostdinc -I$S -I. -I$S/arch
+CPPFLAGS= ${INCLUDES} ${IDENT} ${PARAM} -D_KERNEL -D__${_mach}__ -MD -MP
+CWARNFLAGS= -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes \
+ -Wno-main -Wno-uninitialized -Wno-format \
+ -Wstack-larger-than-2047
+
+CMACHFLAGS= -ffreestanding -msoft-float -march=armv6
+CMACHFLAGS+= -fno-builtin-printf -fno-builtin-snprintf \
+ -fno-builtin-vsnprintf -fno-builtin-log \
+ -fno-builtin-log2 -fno-builtin-malloc ${NOPIE_FLAGS}
+.if ${IDENT:M-DNO_PROPOLICE}
+CMACHFLAGS+= -fno-stack-protector
+.endif
+
+COPTS?= -O2
+CFLAGS= ${DEBUG} ${CWARNFLAGS} ${CMACHFLAGS} ${COPTS} ${PIPE}
+AFLAGS= -D_LOCORE -x assembler-with-cpp ${CWARNFLAGS} ${CMACHFLAGS}
+LINKFLAGS= -T ldscript --warn-common -nopie
+
+.if ${IDENT:M-DDDB_STRUCT}
+DB_STRUCTINFO= db_structinfo.h
+.else
+DB_STRUCTINFO=
+.endif
+
+HOSTCC?= ${CC}
+HOSTED_CPPFLAGS=${CPPFLAGS:S/^-nostdinc$//}
+HOSTED_CFLAGS= ${CFLAGS}
+HOSTED_C= ${HOSTCC} ${HOSTED_CFLAGS} ${HOSTED_CPPFLAGS} -c $<
+
+NORMAL_C_NOP= ${CC} ${CFLAGS} ${CPPFLAGS} -c $<
+NORMAL_C= ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $<
+NORMAL_S= ${CC} ${AFLAGS} ${CPPFLAGS} -c $<
+
+%OBJS
+
+%CFILES
+
+%SFILES
+
+# load lines for config "xxx" will be emitted as:
+# xxx: ${SYSTEM_DEP} swapxxx.o
+# ${SYSTEM_LD_HEAD}
+# ${SYSTEM_LD} swapxxx.o
+# ${SYSTEM_LD_TAIL}
+SYSTEM_HEAD= ${_mach}_start.o locore.o param.o ioconf.o
+SYSTEM_OBJ= ${SYSTEM_HEAD} ${OBJS}
+SYSTEM_DEP= Makefile ${SYSTEM_OBJ}
+SYSTEM_LD_HEAD= @rm -f $@
+SYSTEM_LD_HEAD+=; \
+ cat ${_archdir}/conf/ldscript.head ${_archdir}/conf/ldscript.tail | \
+ sed -e 's/@KERNEL_BASE_PHYS@/${KERNEL_BASE_PHYS}/' \
+ -e 's/@KERNEL_BASE_VIRT@/${KERNEL_BASE_VIRT}/' > ldscript
+
+SYSTEM_LD= @echo ${LD} ${LINKFLAGS} -o $@ '$${SYSTEM_HEAD} vers.o $${OBJS}'; \
+ ${LD} ${LINKFLAGS} -o $@ ${SYSTEM_HEAD} vers.o ${OBJS}
+SYSTEM_LD_TAIL= @${SIZE} $@; chmod 755 $@
+
+DEBUG?=
+.if ${DEBUG} == "-g"
+LINKFLAGS+= -X
+STRIPFLAGS= -g -x
+SYSTEM_LD_TAIL+=; \
+ echo mv $@ $@.gdb; rm -f $@.gdb; mv $@ $@.gdb; \
+ echo ${STRIP} ${STRIPFLAGS} -o $@ $@.gdb; \
+ ${STRIP} ${STRIPFLAGS} -o $@ $@.gdb
+.else
+LINKFLAGS+= -x
+.endif
+
+%LOAD
+
+# cc's -MD puts the source and output paths in the dependency file;
+# since those are temp files here we need to fix it up. It also
+# puts the file in /tmp, so we use -MF to put it in the current
+# directory as assym.P and then generate assym.d from it with a
+# good target name
+assym.h: $S/kern/genassym.sh Makefile \
+ ${_archdir}/${_arch}/genassym.cf ${_machdir}/${_mach}/genassym.cf
+ cat ${_archdir}/${_arch}/genassym.cf ${_machdir}/${_mach}/genassym.cf | \
+ sh $S/kern/genassym.sh ${CC} ${CFLAGS} ${CPPFLAGS} -MF assym.P > assym.h.tmp
+ sed '1s/.*/assym.h: \\/' assym.P > assym.d
+ sort -u assym.h.tmp > assym.h
+
+param.c: $S/conf/param.c
+ rm -f param.c
+ cp $S/conf/param.c .
+
+param.o: param.c Makefile
+ ${NORMAL_C}
+
+mcount.o: $S/lib/libkern/mcount.c Makefile
+ ${NORMAL_C_NOP}
+
+ioconf.o: ioconf.c
+ ${NORMAL_C}
+
+vers.o: ${SYSTEM_DEP} ${SYSTEM_SWAP_DEP}
+ sh $S/conf/newvers.sh
+ ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c vers.c
+
+clean::
+ rm -f eddep *bsd *bsd.gdb tags *.[dio] [a-z]*.s \
+ [Ee]rrs linterrs assym.h ${DB_STRUCTINFO}
+
+lint:
+ @lint -hbxncez -Dvolatile= ${CPPFLAGS} -UKGDB \
+ ${CFILES} ioconf.c param.c | \
+ grep -v 'static function .* unused'
+
+depend:
+ @touch $@
+
+tags:
+ @echo "see $S/kern/Makefile for tags"
+
+db_structinfo.h: $S/ddb/db_structinfo.c $S/ddb/parse_structinfo.awk
+ ${CC} ${CFLAGS} ${CPPFLAGS} -MT $@ -gstabs -c $S/ddb/db_structinfo.c
+ objdump -g db_structinfo.o | awk -f $S/ddb/parse_structinfo.awk > $@
+ rm -f db_structinfo.o
+
+${_mach}_start.o: ${_machdir}/${_mach}/${_mach}_start.S
+locore.o: ${_archdir}/${_arch}/locore.S assym.h
+in_cksum_arm.o fiq_subr.o bcopyinout.o copystr.o sigcode.o: assym.h
+vectors.o cpuswitch7.o exception.o bcopy_page.o irq_dispatch.o: assym.h
+
+# The install target can be redefined by putting a
+# install-kernel-${MACHINE_NAME} target into /etc/mk.conf
+MACHINE_NAME!= uname -n
+install: install-kernel-${MACHINE_NAME}
+.if !target(install-kernel-${MACHINE_NAME}})
+install-kernel-${MACHINE_NAME}:
+ rm -f /obsd
+ ln /bsd /obsd
+ cp bsd /nbsd
+ mv /nbsd /bsd
+.endif
+
+# pull in the dependency information
+.if !empty(DB_STRUCTINFO) && !exists(${DB_STRUCTINFO})
+ ${SYSTEM_OBJ}: ${DB_STRUCTINFO}
+.endif
+.ifnmake clean
+. for o in ${SYSTEM_OBJ} assym.h ${DB_STRUCTINFO}
+. if exists(${o:R}.d)
+. include "${o:R}.d"
+. elif exists($o)
+ .PHONY: $o
+. endif
+. endfor
+.endif
+
+
+# until we get native booting working, put this in the tree.
+
+bsdrd.umg: bsd.rd
+ mkuboot -a arm -o linux -e ${KERNEL_BASE_PHYS} -l ${KERNEL_BASE_PHYS} bsd.rd bsdrd.umg
+
+bsd.umg: bsd
+ mkuboot -a arm -o linux -e ${KERNEL_BASE_PHYS} -l ${KERNEL_BASE_PHYS} bsd bsd.umg
+
+bsd.rd: bsd
+ cp bsd bsd.rd
+ $S/../distrib/${_mach}/ramdisk/rdsetroot < $S/../distrib/${_mach}/ramdisk/mr.fs bsd.rd
+
+%RULES
diff --git a/sys/arch/armv7/conf/RAMDISK-OMAP b/sys/arch/armv7/conf/RAMDISK-OMAP
new file mode 100644
index 00000000000..eada81b6159
--- /dev/null
+++ b/sys/arch/armv7/conf/RAMDISK-OMAP
@@ -0,0 +1,188 @@
+# $OpenBSD: RAMDISK-OMAP,v 1.1 2013/09/04 14:38:25 patrick 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 armv7 arm
+
+options TIMEZONE=0 # time zone to adjust RTC time by
+options DST=0 # daylight saving time used by RTC
+options FFS # UFS
+#options CD9660 # ISO 9660 + Rock Ridge file system
+options MSDOSFS # MS-DOS file system
+options INET # IP + ICMP + TCP + UDP
+options INET6 # IPv6 (needs INET)
+options DDB # kernel debugger
+options DIAGNOSTIC
+option DDB_SAFE_CONSOLE
+options FIFO # FIFOs; RECOMMENDED
+#options NFSCLIENT # NFS
+
+makeoptions KERNEL_BASE_PHYS="0x80300000"
+makeoptions KERNEL_BASE_VIRT="0xc0300000"
+options BUILD_STARTUP_PAGETABLE
+options STARTUP_PAGETABLE_ADDR=0x80200000
+options SDRAM_START="0x80000000"
+
+options APERTURE
+
+# estimated number of users
+
+maxusers 32
+
+# CPU options
+options CPU_ARMv7 # Support the ARMv7
+
+#option WSDISPLAY_COMPAT_USL # VT handling
+#option WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
+option WSDISPLAY_DEFAULTSCREENS=1
+#option WSDISPLAY_COMPAT_PCVT # emulate some ioctls
+
+config bsd root on rd0a swap on rd0b
+
+# The main bus device
+mainbus0 at root
+cpu0 at mainbus?
+
+# OMAP3xxx/OMAP4xxx SoC
+omap0 at mainbus?
+omapid* at soc?
+
+# Cortex-A9 (OMAP4)
+cortex0 at mainbus?
+ampintc* at cortex?
+amptimer* at cortex?
+#armliicc* at cortex? # L2 cache controller
+
+# OMAP3 only
+intc* at soc? # interrupt controller
+
+# OMAP on-chip devices
+prcm* at soc? # power/clock controller
+sitaracm* at soc? # sitara control module
+omdog* at soc? # watchdog timer
+omgpio* at soc? # user-visible GPIO pins?
+gptimer* at soc? # general purpose timers
+dmtimer* at soc? # am335x dual mode timers
+ommmc* at soc? # SD/MMC card controller
+omusbtll* at soc?
+cpsw* at soc?
+
+#omkbd0 at soc?
+#wskbd* at omkbd? mux 1
+
+ehci* at soc? # EHCI (shim)
+usb* at ehci?
+
+#mcspi0 at soc? addr 0x48098000 intr 65
+#mcspi1 at soc? addr 0x4809A000 intr 66
+
+#atlas0 at soc? intr 85 # really a spi device, not soc
+#wskbd* at atlas? mux 1
+
+#usbotg0 at soc?
+#usb* at ohci?
+
+## USB bus support
+usb* at ehci? flags 0x1
+uhub* at usb?
+uhub* at uhub?
+
+uhub* at usb? # USB Hubs
+# uhub* at uhub? # USB Hubs
+# umodem* at uhub? # USB Modems/Serial
+# ucom* at umodem?
+# uvisor* at uhub? # Handspring Visor
+# ucom* at uvisor?
+# uvscom* at uhub? # SUNTAC Slipper U VS-10U serial
+# ucom* at uvscom?
+# ubsa* at uhub? # Belkin serial adapter
+# ucom* at ubsa?
+# uftdi* at uhub? # FTDI FT8U100AX serial adapter
+# ucom* at uftdi?
+# uplcom* at uhub? # I/O DATA USB-RSAQ2 serial adapter
+# ucom* at uplcom?
+# umct* at uhub? # MCT USB-RS232 serial adapter
+# ucom* at umct?
+# uaudio* at uhub? # USB Audio
+# audio* at uaudio?
+# umidi* at uhub? # USB MIDI
+# midi* at umidi?
+# ulpt* at uhub? # USB Printers
+umass* at uhub? # USB Mass Storage devices
+scsibus* at umass?
+uhidev* at uhub? # Human Interface Devices
+ums* at uhidev? # USB mouse
+wsmouse* at ums? mux 0
+ukbd* at uhidev? # USB keyboard
+wskbd* at ukbd? mux 1
+uhid* at uhidev? # USB generic HID support
+# aue* at uhub? # ADMtek AN986 Pegasus Ethernet
+# atu* at uhub? # Atmel AT76c50x based 802.11b
+# axe* at uhub? # ASIX Electronics AX88172 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
+# upl* at uhub? # Prolific PL2301/PL2302 host-to-host `network'
+# udav* at uhub? # Davicom DM9601 based Ethernet
+# url* at uhub? # Realtek RTL8150L based adapters
+# wi* at uhub? # WaveLAN IEEE 802.11DS
+# urio* at uhub? # Diamond Multimedia Rio 500
+# #uyap* at uhub? # Y@P firmware loader
+# udsbr* at uhub? # D-Link DSB-R100 radio
+# radio* at udsbr? # USB radio
+# #ubt* at uhub? disable # USB Bluetooth
+ugen* at uhub? # USB Generic driver
+#
+ukphy* at mii? # "unknown" PHYs
+
+scsibus* at scsi?
+sd* at scsibus?
+st* at scsibus?
+cd* at scsibus?
+ch* at scsibus?
+uk* at scsibus?
+
+
+# onboard uarts
+com* at soc?
+
+# LCD
+#omdisplay0 at soc?
+#wsdisplay* at omdisplay? console ?
+
+sdmmc* at ommmc? # SD/MMC bus
+
+# Bluetooth controllers
+#sbt* at sdmmc? disable # SDIO Bluetooth
+
+# APM emulation
+#apm0 at pxaip?
+
+# Pseudo-Devices
+#pseudo-device wsmux 2 # mouse & keyboard multiplexor
+#pseudo-device crypto 1
+pseudo-device loop 1 # network loopback
+pseudo-device bpfilter 1 # packet filter
+pseudo-device rd 1 # ram disk
+pseudo-device hotplug 1 # devices hot plugging
+
+# RAMDISK stuff
+options MINIROOTSIZE=5120
+options RAMDISK_HOOKS
diff --git a/sys/arch/armv7/conf/files.armv7 b/sys/arch/armv7/conf/files.armv7
new file mode 100644
index 00000000000..da7931d8204
--- /dev/null
+++ b/sys/arch/armv7/conf/files.armv7
@@ -0,0 +1,159 @@
+# $OpenBSD: files.armv7,v 1.1 2013/09/04 14:38:25 patrick Exp $
+#
+# First try for arm-specific configuration info
+#
+
+maxpartitions 16
+maxusers 2 8 64
+
+major {wd = 16}
+major {sd = 24}
+major {cd = 26}
+major {rd = 18}
+
+file arch/arm/arm/conf.c
+
+file arch/armv7/omap/beagle_machdep.c
+
+#interrupt API layer
+file arch/armv7/armv7/intr.c
+
+# u-boot argument support
+file arch/armv7/armv7/uboot_tags.c
+
+# note that the order of the devices in _this_ file
+# affects the order that the devices will configure.
+
+# XXX arch/arm/omap
+define soc {}
+device omap: soc
+attach omap at mainbus
+file arch/armv7/omap/omap.c omap
+file arch/armv7/omap/omap3.c omap
+file arch/armv7/omap/omap4.c omap
+file arch/armv7/omap/am335x.c omap
+
+include "dev/sdmmc/files.sdmmc"
+
+device ommmc: sdmmcbus
+attach ommmc at soc
+file arch/armv7/omap/ommmc.c ommmc
+
+# Media Independent Interface (mii)
+include "dev/mii/files.mii"
+
+device cpsw: ether, ifnet, mii, ifmedia
+attach cpsw at soc
+file arch/armv7/omap/if_cpsw.c cpsw
+
+device prcm
+attach prcm at soc
+file arch/armv7/omap/prcm.c prcm
+
+device sitaracm
+attach sitaracm at soc
+file arch/armv7/omap/am335x_cm_padconf.c sitaracm
+file arch/armv7/omap/sitara_cm.c sitaracm
+
+device omgpio
+attach omgpio at soc
+file arch/armv7/omap/omgpio.c omgpio
+
+device intc
+attach intc at soc
+file arch/armv7/omap/intc.c intc
+
+device gptimer
+attach gptimer at soc
+file arch/armv7/omap/gptimer.c gptimer
+
+device dmtimer
+attach dmtimer at soc
+file arch/armv7/omap/dmtimer.c dmtimer
+
+device omapid
+attach omapid at soc
+file arch/armv7/omap/omapid.c omapid
+
+device omdog
+attach omdog at soc
+file arch/armv7/omap/omdog.c omdog
+
+attach ohci at soc with omohci
+file arch/armv7/omap/omohci.c omohci
+
+attach ehci at soc with omehci
+file arch/armv7/omap/omehci.c omehci
+
+# NS16550 compatible serial ports
+attach com at soc with com_omap
+file arch/armv7/omap/omap_com.c com_omap
+
+device omusbtll
+attach omusbtll at soc
+file arch/armv7/omap/omusbtll.c omusbtll
+
+device omkbd: wskbddev
+attach omkbd at soc
+file arch/armv7/omap/omkbd.c omkbd
+
+# LCD frame buffer
+device omdisplay: wsemuldisplaydev, rasops16
+attach omdisplay at soc
+file arch/armv7/omap/omdisplay.c omdisplay
+
+#
+# Machine-independent SCSI drivers
+#
+include "scsi/files.scsi"
+include "dev/atapiscsi/files.atapiscsi"
+
+# CPU support and integrated peripherals
+file arch/arm/arm/irq_dispatch.S
+file arch/arm/arm/softintr.c
+
+# MCSPI - spi
+device mcspi
+attach mcspi at soc
+file arch/armv7/omap/mcspi.c mcspi
+
+# pseudo-Audio Device Driver
+device oaudio: audio
+attach oaudio at soc # configure after Atlas Driver
+file arch/armv7/omap/beagle_audio.c oaudio
+
+#
+# Machine-independent ATA drivers
+#
+include "dev/ata/files.ata"
+
+# Generic MD files
+file arch/armv7/armv7/autoconf.c
+
+file arch/arm/arm/disksubr.c disk
+
+
+# ARM FPE
+file arch/arm/fpe-arm/armfpe_glue.S armfpe
+file arch/arm/fpe-arm/armfpe_init.c armfpe
+file arch/arm/fpe-arm/armfpe.s armfpe
+
+
+# Machine-independent I2O drivers.
+include "dev/i2o/files.i2o"
+
+# Include WSCONS stuff
+include "dev/wscons/files.wscons"
+include "dev/rasops/files.rasops"
+include "dev/wsfont/files.wsfont"
+
+# Include USB stuff
+include "dev/usb/files.usb"
+
+# Bluetooth
+include "dev/bluetooth/files.bluetooth"
+
+#
+# Machine-independent GPIO drivers
+#
+include "dev/gpio/files.gpio"