# $Id: IMX23_OLINUXINO,v 1.19 2020/11/28 14:38:50 skrll Exp $
#
# IMX23_OLINUXINO -- Olimex i.MX23 OLinuXino kernel configuration file.
#

include "arch/evbarm/conf/std.imx23_olinuxino"

maxusers        8

config netbsd root on ? type ?

# The main bus device
mainbus0        at root

# The boot CPU
cpu0            at mainbus?

# AHB bus
ahb0            at mainbus? base 0x80080000 size 0x80000

# USB host controller
imxusbc0        at ahb? addr 0x80080000 size 0x40000 irq -1

# APBH bus
apbh0           at mainbus? base 0x80000000 size 0x40000

# APBH DMA
apbdma0         at apbh? addr 0x80004000 size 0x2000 irq -1

# Interrupt controller
icoll0          at apbh? addr 0x80000000 size 0x2000 irq -1

# Synchronous serial port for SD/MMC
ssp0            at apbh? addr 0x80010000 size 0x2000 irq 15
sdmmc*          at ssp?
ld*             at sdmmc?

# Digital control
digctl0         at apbh? addr 0x8001C000 size 0x2000 irq -1

# PIN control
imxpctl0        at apbh? addr 0x80018000 size 0x2000 irq -1
gpio*           at imxpctl?

# APBX bus
apbx0           at mainbus? base 0x80040000 size 0x40000

# Power control
#power0         at apbx? addr 0x80044000 size 0x2000 irq -1

# APBX DMA
apbdma1         at apbx? addr 0x80024000 size 0x2000 irq -1

# Timers and rotary decoder
timrot0         at apbx? addr 0x80068020 size 0x20 irq 28
timrot1         at apbx? addr 0x80068040 size 0x20 irq 29
#timrot2        at apbx? addr 0x80068060 size 0x20 irq 30
#timrot3        at apbx? addr 0x80068080 size 0x20 irq 31

# Debug UART
plcom0          at apbx? addr 0x80070000 size 0x1000 irq 0

# USB PHY
usbphy0         at apbx? addr 0x8007C000 size 0x2000 irq -1

# Clock control
clkctrl0        at apbx? addr 0x80040000 size 0x2000 irq -1

# RTC
rtc0            at apbx? addr 0x8005C000 size 0x2000 irq -1

# Digital filter: Audio I/O
digfilt0        at apbx? addr 0x80048000 size 0x8000 irq -1
audio0          at digfilt0

spkr*           at audio?               # PC speaker (synthesized)

# USB host
ehci0           at imxusbc0 unit 0 irq 11
# USB OTG
# ehci0         at imxusbc0   unit 0 irq 18

usb*            at ehci?
uhub*           at usb?
uhub*           at uhub? port ?
ugen*           at uhub? port ?

include "dev/usb/usbdevices.config"

midi*           at midibus?

rgephy*         at mii? phy ?
rlphy*          at mii? phy ?
ukphy*          at mii? phy ?

options         MEMSIZE=64
options         DDB
options         HZ=100
pseudo-device   ksyms
options         INET            # IP + ICMP + TCP + UDP
options         INET6           # IPv6

include         "conf/compat_netbsd60.config"
options         COMPAT_NETBSD32 # allow running arm (e.g. non-earm) binaries

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

options         SYSVMSG         # System V-like message queues
options         SYSVSEM         # System V-like semaphores
options         SYSVSHM         # System V-like memory sharing

#options                MODULAR
#options                MODULAR_DEFAULT_AUTOLOAD
options         KTRACE
#options                DEBUG
#options                DIAGNOSTIC

file-system     FFS
file-system     MFS
file-system     EXT2FS
file-system     MSDOSFS
file-system     KERNFS
file-system     PROCFS
file-system     PTYFS
file-system     NFS

#options        DISKLABEL_EI    # disklabel Endian Independent support
#options        FFS_EI          # FFS Endian Independent support
options         WAPBL

pseudo-device   pty             # pseudo-terminals
pseudo-device   loop            # network loopback
pseudo-device   bpfilter        # Berkeley packet filter