#       $NetBSD: files.algor,v 1.31 2014/07/20 10:22:54 alnsn Exp $

# Algorithmics evaluation board specific configuration info.

ifndef evbmips
# maxpartitions must be the first item in files.${ARCH}
maxpartitions 8

maxusers 8 16 64

# Platform support option headers.
defflag         ALGOR_P4032     # Algorithmics P-4032
defflag         ALGOR_P5064     # Algorithmics P-5064
defflag         ALGOR_P6032     # Algorithmics P-6032

# Various items that a buggy PMON might not provide us.
defparam        MEMSIZE
defparam        ETHADDR
endif

# Platform support files
file    arch/algor/algor/algor_p4032_bus_io.c   algor_p4032
file    arch/algor/algor/algor_p4032_bus_locio.c algor_p4032
file    arch/algor/algor/algor_p4032_bus_mem.c  algor_p4032
file    arch/algor/algor/algor_p4032_dma.c      algor_p4032
file    arch/algor/algor/algor_p4032_intr.c     algor_p4032

file    arch/algor/algor/algor_p5064_bus_io.c   algor_p5064
file    arch/algor/algor/algor_p5064_bus_mem.c  algor_p5064
file    arch/algor/algor/algor_p5064_dma.c      algor_p5064
file    arch/algor/algor/algor_p5064_intr.c     algor_p5064

file    arch/algor/algor/algor_p6032_bus_io.c   algor_p6032
file    arch/algor/algor/algor_p6032_bus_mem.c  algor_p6032
file    arch/algor/algor/algor_p6032_dma.c      algor_p6032
file    arch/algor/algor/algor_p6032_intr.c     algor_p6032

file    arch/algor/algor/autoconf.c
file    arch/algor/algor/algor_intr.c
file    arch/algor/algor/led.c
file    arch/algor/algor/machdep.c
file    arch/algor/algor/pmon.c

ifdef   evbmips
file    arch/evbmips/evbmips/interrupt.c
endif
file    arch/evbmips/evbmips/disksubr.c

file    arch/mips/mips/bus_dma.c
file    arch/mips/mips/mips3_clock.c
file    arch/mips/mips/mips3_clockintr.c

file    dev/bus_dma/bus_dmamem_common.c

#
# The autoconfiguration root.
#
device  mainbus { [addr = -1] }
attach  mainbus at root
file    arch/algor/dev/mainbus.c                mainbus

device  cpu
attach  cpu at mainbus
file    arch/evbmips/evbmips/cpu.c              cpu

device  mcclock: mc146818

#
# Stack-less Just-In-Time compiler
#
include "external/bsd/sljit/conf/files.sljit"

#
# Machine-independent I2O drivers.
#
include "dev/i2o/files.i2o"

#
# Machine-independent SCSI drivers
#
include "dev/scsipi/files.scsipi"

#
# Machine-independent ATA drivers
#
include "dev/ata/files.ata"

#
# Machine-independent PC-style keyboard controller drivers
#
include "dev/pckbport/files.pckbport"

#
# Machine-independent USB device support
#
include "dev/usb/files.usb"

# Memory Disk
file    dev/md_root.c                           memory_disk_hooks

# Console glue.
ifndef  evbmips
file    dev/cons.c
endif

include "dev/pci/files.pci"
include "dev/isa/files.isa"

#
# PCI bus support.
#
device  vtpbc: pcibus
file    arch/algor/pci/vtpbc.c                  vtpbc

attach  vtpbc at mainbus with vtpbc_mainbus
file    arch/algor/dev/vtpbc_mainbus.c          vtpbc_mainbus

include "arch/mips/conf/files.bonito"
file    arch/algor/dev/bonito_mainbus.c         bonito_mainbus

device  pcib: isabus
attach  pcib at pci
file    arch/algor/pci/pcib.c                   pcib & (algor_p5064 |
                                                       algor_p6032)

file    arch/mips/pci/pciide_machdep.c          pciide_common

#
# ISA bus support.
#
attach  mcclock at isa with mcclock_isa
file    arch/evbmips/isa/mcclock_isa.c          mcclock_isa

file    arch/evbmips/isa/isadma_bounce.c        isa & (algor_p5064|algor_p6032)

# ISA speaker generates keyboard beep
#device isabeep
#attach isabeep at pcppi

# Floppy disk controller
device  fdc { drive = -1 }: isadma
file    dev/isa/fd.c                            fdc needs-flag

attach  fdc at isa with fdc_isa
file    dev/isa/fdc_isa.c                       fdc_isa

device  fd: disk
attach  fd at fdc

# ISA Plug and Play devices
file    arch/algor/isa/isapnp_machdep.c         isapnp

# PCIC pcmcia controller
defparam        PCIC_ISA_ALLOC_IOBASE
defparam        PCIC_ISA_ALLOC_IOSIZE
defparam        PCIC_ISA_INTR_ALLOC_MASK

device  pcic: pcmciabus
file    dev/ic/i82365.c                         pcic

# PCIC pcmcia controller on ISA bus.
attach  pcic at isa with pcic_isa
file    dev/isa/i82365_isa.c                    pcic_isa

# PCIC pcmcia controller on PnP board
attach  pcic at isapnp with pcic_isapnp
file    dev/isapnp/i82365_isapnp.c              pcic_isapnp

# Code common to ISA and ISAPnP attachments
file    dev/isa/i82365_isasubr.c                pcic_isa | pcic_isapnp

# Machine-independent PCMCIA drivers
include "dev/pcmcia/files.pcmcia"

#
# Devices on the P-4032 local I/O bus.
#
attach  mcclock at mainbus with mcclock_mainbus
file    arch/algor/dev/mcclock_mainbus.c        mcclock_mainbus & algor_p4032

attach  com at mainbus with com_mainbus
file    arch/algor/dev/com_mainbus.c            com_mainbus & algor_p4032

attach  lpt at mainbus with lpt_mainbus
file    arch/algor/dev/lpt_mainbus.c            lpt_mainbus & algor_p4032

ifndef  evbmips
include "arch/algor/conf/majors.algor"
endif