#       $NetBSD: files.amiga,v 1.186 2024/01/09 04:16:23 thorpej Exp $

# maxpartitions must be first item in files.${ARCH}.newconf
maxpartitions 16                        # NOTE THAT AMIGA IS SPECIAL!

defflag opt_m060sp.h            M060SP
defflag                         PANICBUTTON     # panic on kbd NMI if not DDB

maxusers 2 8 64

defflag opt_amigaccgrf.h        GRF_NTSC
defflag opt_amigaccgrf.h        GRF_PAL :GRF_NTSC       # temporary workaround
defflag opt_amigaccgrf.h        GRF_ECS GRF_AGA
defflag opt_amigaccgrf.h        GRF_A2024:GRF_ECS
defflag opt_amigaccgrf.h        GRF_AGA_VGA:GRF_AGA
defflag opt_amigaccgrf.h        GRF_SUPER72:GRF_AGA
defflag opt_amigaccgrf.h        USE_C_BFOPS

defflag opt_amigacons.h         RETINACONSOLE ULOWELLCONSOLE CL5426CONSOLE
defflag opt_amigacons.h         CV64CONSOLE CV3DCONSOLE TSENGCONSOLE
defflag opt_amigacons.h         SERCONSOLE

defflag opt_mntva.h             MNTVA_CONSOLE

defflag opt_zz9k_fb.h           ZZFB_CONSOLE

defflag opt_kfont.h             KFONT_CONS_ISO8859_1
defflag opt_kfont.h             KFONT_CONS_ISO8859_2

defparam opt_retina.h           RH_MEMCLK
defflag opt_retina.h            RH_64BIT_SPRITE RH_HARDWARECURSOR
defflag opt_retina.h            RETINA_SPEED_HACK

defflag                         BB060STUPIDROM
defflag                         P5PPC68KBOARD
defflag                         LEV6_DEFER
defflag                         DEVRELOAD

defflag opt_p5pb.h              P5PB_DEBUG P5PB_CONSOLE

defparam                        IOBZCLOCK

device  mainbus {}
attach  mainbus at root

device  cpu
attach  cpu at mainbus

# for bus_space
define  amibus_bl
file    arch/amiga/amiga/amiga_bus_simple_4.c

define  amibus_ww
file    arch/amiga/amiga/amiga_bus_simple_2word.c

define  amibus_wb
file    arch/amiga/amiga/amiga_bus_simple_1word.c

define  amibus_b16
file    arch/amiga/amiga/amiga_bus_simple_16.c  amibus_b16

define  amibus_b800
file    arch/amiga/amiga/amiga_bus_simple_0x800.c       amibus_b800

define  amibus_b1000
file    arch/amiga/amiga/amiga_bus_simple_0x1000.c      amibus_b1000

define  amibus_b4000
file    arch/amiga/amiga/amiga_bus_simple_0x4000.c      amibus_b4000

define  amibus_empb
file    arch/amiga/pci/empb_bsm.c       amibus_empb

file    arch/amiga/amiga/bus.c

# zorro expansion bus.
device  zbus {}
attach  zbus at mainbus
file    arch/amiga/dev/zbus.c           zbus

define  event {}
file    arch/amiga/dev/event.c          event

device  clock
attach  clock at mainbus
file    arch/amiga/dev/clock.c

# A2000 internal hwc
device  a2kbbc: msm6242b
attach  a2kbbc at mainbus
file    arch/amiga/dev/a2kbbc.c         a2kbbc

# A3000/4000 internal hwc
device  a34kbbc
attach  a34kbbc at mainbus
file    arch/amiga/dev/a34kbbc.c        a34kbbc

# keyboard
device  kbd: event,wskbddev
attach  kbd at mainbus
file    arch/amiga/dev/kbd.c            kbd needs-flag
file    arch/amiga/dev/wskbdmap_amiga.c kbd

# serial port
device  ser: tty
attach  ser at mainbus
file    arch/amiga/dev/ser.c            ser needs-count

# parallel port
device  par
attach  par at mainbus
file    arch/amiga/dev/par.c            par needs-count

# audio
device  aucc: audiobus
attach  aucc at mainbus
file    arch/amiga/dev/aucc.c           aucc needs-flag

device  melody: audiobus, tms320av110
attach  melody at zbus
file    arch/amiga/dev/melody.c         melody

device repulse: audiobus, ac97
attach  repulse at zbus
file    arch/amiga/dev/repulse.c        repulse

device  toccata: audiobus, ad1848
attach  toccata at zbus
file    arch/amiga/dev/toccata.c        toccata

# mouse
device  ms: event, wsmousedev
attach  ms at mainbus
file    arch/amiga/dev/ms.c             ms needs-flag

# floppy
device  fdc { unit = -1 }
attach  fdc at mainbus

device  fd: disk
attach  fd at fdc
file    arch/amiga/dev/fd.c             fd needs-flag

# graphic devices
define  grfbus {}

device  grf {}: wsemuldisplaydev, vcons
attach  grf at grfbus
file    arch/amiga/dev/grf.c            grf needs-count

device  ite: tty
attach  ite at grf
file    arch/amiga/dev/ite.c            ite needs-flag
file    arch/amiga/dev/kbdmap.c         ite
file    arch/amiga/dev/kf_custom.c      kfont_custom
file    arch/amiga/dev/kf_iso8859_1_8x8.c       kfont_cons_iso8859_1 &
       ( ite | wsdisplay)
file    arch/amiga/dev/kf_iso8859_1_8x11.c      kfont_cons_iso8859_1 &
       kfont_8x11
file    arch/amiga/dev/kf_iso8859_2_8x8.c       kfont_cons_iso8859_2 &
       ( ite | wsdisplay )
file    arch/amiga/dev/kf_iso8859_2_8x11.c      kfont_cons_iso8859_2 &
       kfont_8x11

# custom chips grf (ite0 grf0)
device  grfcc: grfbus
attach  grfcc at mainbus
file    arch/amiga/dev/grf_cc.c         grfcc needs-flag
file    arch/amiga/dev/ite_cc.c         grfcc & ite

# wscons interface to custom chips
device  amidisplaycc: wsemuldisplaydev, vcons
attach  amidisplaycc at mainbus
file    arch/amiga/dev/amidisplaycc.c   amidisplaycc needs-flag

defpseudo       view
file    arch/amiga/dev/view.c           view | grfcc needs-count
file    arch/amiga/dev/grfabs.c         grfcc | view | amidisplaycc
file    arch/amiga/dev/grfabs_cc.c      grfcc | view | amidisplaycc
file    arch/amiga/dev/grfabs_ccglb.c   grfcc | view | amidisplaycc

# retina ZII grf (ite1 grf1)
device  grfrt: grfbus
attach  grfrt at zbus
file    arch/amiga/dev/grf_rt.c         grfrt needs-flag
file    arch/amiga/dev/ite_rt.c         grfrt & ite

# retina ZIII grf (ite2 grf2)
device  grfrh: grfbus
attach  grfrh at zbus
file    arch/amiga/dev/grf_rh.c         grfrh needs-flag
file    arch/amiga/dev/ite_rh.c         grfrh & ite

# cirrus grf (ite3 grf3)
device  grfcl: grfbus
attach  grfcl at zbus
file    arch/amiga/dev/grf_cl.c         grfcl needs-flag
file    arch/amiga/dev/ite_cl.c         grfcl & ite

# A2410 grf (ite4 grf4)
device  grful: grfbus
attach  grful at zbus
file    arch/amiga/dev/grf_ul.c         grful needs-flag
file    arch/amiga/dev/ite_ul.c         grful & ite
file    arch/amiga/dev/grf_ultms.c      grful

# CyberVison 64 grf (ite5 grf5)
device  grfcv: grfbus
attach  grfcv at zbus
file    arch/amiga/dev/grf_cv.c         grfcv needs-flag
file    arch/amiga/dev/ite_cv.c         grfcv & ite

# Tseng grf (ite6 grf6)
device  grfet: grfbus
attach  grfet at zbus
file    arch/amiga/dev/grf_et.c         grfet needs-flag
file    arch/amiga/dev/ite_et.c         grfet & ite

# CyberVison 64/3D grf (ite7 grf7)
device  grfcv3d: grfbus
attach  grfcv3d at zbus
file    arch/amiga/dev/grf_cv3d.c       grfcv3d needs-flag
file    arch/amiga/dev/ite_cv3d.c       grfcv3d & ite

# MNT VA2000
device  mntva: wsemuldisplaydev, rasops16, rasops32, vcons, videomode
attach  mntva at zbus
file    arch/amiga/dev/mntva.c          mntva needs-flag

# MNT ZZ9000
define  zz9kbus {}
device  zz9k: zz9kbus
attach  zz9k at zbus
file    arch/amiga/dev/zz9k.c           zz9k needs-flag

device  zzfb: wsemuldisplaydev, rasops8, rasops15, rasops16, rasops32, vcons
attach  zzfb at zz9kbus with zz9k_fb
file    arch/amiga/dev/zz9k_fb.c        zz9k_fb needs-flag

device  zz: ifnet, ether, arp
attach  zz at zz9kbus with zz9k_if
file    arch/amiga/dev/zz9k_if.c        zz9k_if needs-flag

device  zzax: audiobus
attach  zzax at zz9kbus with zz9k_ax
file    arch/amiga/dev/zz9k_ax.c        zz9k_ax needs-flag

device  zzusb
attach  zzusb at zz9kbus with zz9k_usb
file    arch/amiga/dev/zz9k_usb.c       zz9k_usb needs-flag

# device defined in sys/conf/files
# A2065, Ameristar, Ariadne ethernet cards
attach  le at zbus with le_zbus: le24
file    arch/amiga/dev/if_le.c          le_zbus needs-flag

# AriadneII ethernet card
# device defined in sys/conf/files
attach  ne at zbus with ne_zbus: rtl80x9
file    arch/amiga/dev/if_ne_zbus.c     ne_zbus needs-flag

# X-Surf
define  xsurfbus {}

device  xsurf: xsurfbus
attach  xsurf at zbus
file    arch/amiga/dev/xsurf.c          xsurf needs-flag

attach  ne at xsurfbus with ne_xsurf: rtl80x9
file    arch/amiga/dev/if_ne_xsurf.c    ne_xsurf needs-flag

attach  wdc at xsurfbus with wdc_xsurf
file    arch/amiga/dev/wdc_xsurf.c      wdc_xsurf & xsurf

define  xshbus {}

device  xsh: xshbus
attach  xsh at zbus
file    arch/amiga/dev/xsh.c            xsh needs-flag

attach  ne at xshbus with ne_xsh: ax88190, mii_bitbang
file    arch/amiga/dev/if_ne_xsh.c      ne_xsh needs-flag

# Hydra ethernet card
device  ed: ifnet, ether, arp
attach  ed at zbus with ed_zbus: dp8390nic
file    arch/amiga/dev/if_ed_zbus.c     ed_zbus needs-flag

# C=/Ameristar A2060 / 560
attach  bah at zbus with bah_zbus
file    arch/amiga/dev/if_bah_zbus.c    bah_zbus

# CEI A4066 EthernetPLUS
device  es: ifnet, ether, arp
attach  es at zbus
file    arch/amiga/dev/if_es.c          es needs-flag

# Quicknet ethernet card
device  qn: ifnet, ether, arp
attach  qn at zbus
file    arch/amiga/dev/if_qn.c          qn needs-flag

# A2232 msc serial ports
device  msc: tty
attach  msc at zbus
file    arch/amiga/dev/msc.c            msc needs-count

# bsc/Alf Data MultiFaceCard
device  mfc { unit = -1 }
attach  mfc at zbus

device  mfcs: tty
attach  mfcs at mfc
device  mfcp
attach  mfcp at mfc
file    arch/amiga/dev/mfc.c            mfcs | mfcp needs-count

# direct bus ISA-chip i/o
define  supio {port = -1}

# DraCo superio chip

device  drsupio: supio
attach  drsupio at mainbus
file    arch/amiga/dev/drsupio.c        drsupio

# ZBus HyperComs: HyperCom Z3, HyperCom 4
device  hyper: supio
attach  hyper at zbus
file    arch/amiga/dev/hyper.c          hyper

# IOBlix
device  iobl: supio, amibus_b16
attach  iobl at zbus with iobl_zbus
file    arch/amiga/dev/ioblix_zbus.c    iobl_zbus


attach  com at supio with com_supio
file    arch/amiga/dev/com_supio.c      com_supio

# handle gvp's odd autoconf info..
device  gvpbus {}
attach  gvpbus at zbus
file    arch/amiga/dev/gvpbus.c         gvpbus

attach  lpt at supio with lpt_supio
file    arch/amiga/dev/lpt_supio.c      lpt_supio

include "dev/scsipi/files.scsipi"

# wd 33c93 controllers
define  sbic
file    arch/amiga/dev/sbic.c           sbic

# GVP series II
device  gtsc: scsi, sbic
attach  gtsc at gvpbus
file    arch/amiga/dev/gtsc.c           gtsc needs-flag

# Amiga 3000 internal
device  ahsc: scsi, sbic
attach  ahsc at mainbus
file    arch/amiga/dev/ahsc.c           ahsc needs-flag

# C= A2091
device  atzsc: scsi, sbic
attach  atzsc at zbus
file    arch/amiga/dev/atzsc.c          atzsc needs-flag

# ncr 5380 controllers
define  sci
file    arch/amiga/dev/sci.c            sci

# Supra Wordsync II
device  wstsc: scsi, sci
attach  wstsc at zbus
file    arch/amiga/dev/wstsc.c          wstsc needs-flag

# IVS
device  ivsc: scsi, sci
attach  ivsc at zbus
file    arch/amiga/dev/ivsc.c           ivsc needs-flag

# MLH
device  mlhsc: scsi, sci
attach  mlhsc at zbus
file    arch/amiga/dev/mlhsc.c          mlhsc needs-flag

# CSA twelve gauge.
device  otgsc: scsi, sci
attach  otgsc at zbus
file    arch/amiga/dev/otgsc.c          otgsc needs-flag

# ncr 57c710 controllers
define  asiop
file    arch/amiga/dev/siop.c           asiop

# PPI Zeus
device  zssc: scsi, asiop
attach  zssc at zbus
file    arch/amiga/dev/zssc.c           zssc needs-flag

# CSA Magnum
device  mgnsc: scsi, asiop
attach  mgnsc at zbus
file    arch/amiga/dev/mgnsc.c          mgnsc needs-flag

# MacroSystems USA Warp Engine
device  wesc: scsi, asiop
attach  wesc at zbus
file    arch/amiga/dev/wesc.c           wesc needs-flag

# C= A4091 & A4000T
device  afsc: scsi, asiop
attach  afsc at zbus
device  aftsc: scsi, asiop
attach  aftsc at mainbus
file    arch/amiga/dev/afsc.c           afsc | aftsc needs-flag

# ncr 57c720/770 controllers
define  siopng
file    arch/amiga/dev/siop2.c          siopng

# Emulex ESP216 & FAS216 controllers

# FastlaneZ3
device  flsc: scsi, ncr53c9x
attach  flsc at zbus
file    arch/amiga/dev/flsc.c           flsc needs-flag

# Blizzard1230-I,II
device  bzsc: scsi, ncr53c9x
attach  bzsc at zbus
file    arch/amiga/dev/bzsc.c           bzsc needs-flag

# Blizzard12x0-IV
device  bzivsc: scsi, ncr53c9x
attach  bzivsc at zbus
file    arch/amiga/dev/bzivsc.c         bzivsc needs-flag

# Blizzard2060 scsi
device  bztzsc: scsi, ncr53c9x
attach  bztzsc at zbus
file    arch/amiga/dev/bztzsc.c         bztzsc needs-flag

# CyberSCSI [I] scsi
device  cbsc: scsi, ncr53c9x
attach  cbsc at zbus
file    arch/amiga/dev/cbsc.c           cbsc needs-flag

# CyberSCSI MKII scsi
device  cbiisc: scsi, ncr53c9x
attach  cbiisc at zbus
file    arch/amiga/dev/cbiisc.c         cbiisc needs-flag

# EMPLANT
device  empsc: scsi, sci
attach  empsc at zbus
file    arch/amiga/dev/empsc.c          empsc needs-flag

# MacroSystem DraCo internal
device  drsc: scsi, asiop
attach  drsc at mainbus
file    arch/amiga/dev/drsc.c           drsc needs-flag

# MacroSystem DraCo internal DS2404 hwc
device  drbbc
attach  drbbc at mainbus
file    arch/amiga/dev/drbbc.c          drbbc

# kernel floating point emulator
include "arch/m68k/fpe/files.fpe"

# Motorola 68060 support package
include "arch/m68k/060sp/files.060sp"

# list of standard files...

file    dev/cons.c
file    dev/cninit.c
file    arch/amiga/amiga/amiga_init.c
file    arch/amiga/amiga/autoconf.c
file    arch/amiga/amiga/cia.c
file    arch/amiga/amiga/conf.c
file    arch/amiga/amiga/disksubr.c
file    arch/amiga/amiga/dkbad.c
file    arch/amiga/amiga/machdep.c
file    arch/amiga/amiga/pmap_bootstrap.c
file    arch/amiga/amiga/trap.c
file    arch/amiga/amiga/cc.c
file    dev/md_root.c                   memory_disk_hooks
file    arch/m68k/m68k/cacheops.c
file    arch/m68k/m68k/db_memrw.c       ddb
file    arch/m68k/m68k/mmu_subr.s
file    arch/m68k/m68k/pmap_motorola.c
file    arch/m68k/m68k/procfs_machdep.c procfs
file    arch/m68k/m68k/sys_machdep.c
file    arch/m68k/m68k/vm_machdep.c
file    arch/m68k/m68k/bus_dma.c

define  gayle
file    arch/amiga/amiga/gayle.c                gayle

file    arch/amiga/dev/gayle_pcmcia.c           pccard
device  pccard: pcmciabus, gayle
attach  pccard at mainbus

include "dev/pcmcia/files.pcmcia"

include "dev/ata/files.ata"

# Amiga 4000/1200 IDE using MI wdc
attach  wdc at mainbus with wdc_amiga: gayle, amibus_b1000
file    arch/amiga/dev/wdc_amiga.c      wdc_amiga

# Buddha wdc
attach  wdc at zbus with wdc_buddha
file    arch/amiga/dev/wdc_buddha.c     wdc_buddha

# FastATA
device  efa: ata, wdc_common, amibus_b1000
attach  efa at mainbus
file    arch/amiga/dev/efa.c            efa

# Compatibility modules

# NetBSD m68k a.out Binary Compatibility (COMPAT_AOUT_M68K)
include "compat/aoutm68k/files.aoutm68k"

# SunOS Binary Compatibility (COMPAT_SUNOS)
include "compat/sunos/files.sunos"
file    arch/m68k/m68k/sunos_machdep.c  compat_sunos

# Linux binary compatibility (COMPAT_LINUX)
include "compat/linux/files.linux"
include "compat/linux/arch/m68k/files.linux_m68k"
file    arch/m68k/m68k/linux_trap.c             compat_linux

# OSS audio driver compatibility
include "compat/ossaudio/files.ossaudio"

# Bluetooth stack
include "dev/bluetooth/files.bluetooth"

# USB stack
include "dev/usb/files.usb"

# Phase5 BPPC/CSPPC internal bus
device  p5bus {}
attach  p5bus at zbus
file    arch/amiga/dev/p5bus.c          p5bus

device  p5membar {}
attach  p5membar at zbus
file    arch/amiga/pci/p5membar.c       p5membar

# CyberStorm MKIII scsi
device  cbiiisc: scsi, siopng
attach  cbiiisc at p5bus
file    arch/amiga/dev/cbiiisc.c        cbiiisc needs-flag

# Phase5 Blizzard 603e+ SCSI
device  bppcsc: scsi, asiop
attach  bppcsc at p5bus
file    arch/amiga/dev/bppcsc.c         bppcsc needs-flag

# PCI bus
file    arch/amiga/pci/pci_machdep.c    pci

device  p5pb: pcibus
attach  p5pb at p5bus
file    arch/amiga/pci/p5pb.c           p5pb & pci

device  mppb: pcibus
attach  mppb at zbus
file    arch/amiga/pci/mppb.c           mppb & pci

device  cv3dpb: pcibus
attach  cv3dpb at zbus
file    arch/amiga/pci/cv3dpb.c         cv3dpb & pci

define  empmdev { }
device  empm
attach  empm at empmdev
file    arch/amiga/pci/empm.c           empm needs-flag

device  empb: pcibus, amibus_empb, empmdev
attach  empb at zbus
file    arch/amiga/pci/empb.c           empb & pci & empm

device  em4k: pcibus
attach  em4k at zbus
file    arch/amiga/pci/em4k.c           em4k & pci

device  emmem {}
attach  emmem at zbus
file    arch/amiga/pci/emmem.c          emmem

include "dev/i2o/files.i2o"
include "dev/pci/files.pci"

device  z3rambd: altmemdev
attach  z3rambd at zbus
file    arch/amiga/dev/z3rambd.c        z3rambd needs-flag

attach  slhci at zbus with slhci_zbus
file    arch/amiga/dev/slhci_zbus.c     slhci_zbus

define  acafhbus {}

device  acafh: acafhbus, amibus_b4000
attach  acafh at mainbus
file    arch/amiga/dev/acafh.c          acafh needs-count

attach  wdc at acafhbus with wdc_acafh: gayle, amibus_b1000
file    arch/amiga/dev/wdc_acafh.c      wdc_acafh & acafh

include "arch/amiga/clockport/files.clockport"

include "arch/amiga/conf/majors.amiga"