# $NetBSD: files.arm32,v 1.63 1998/09/13 08:19:50 thorpej Exp $ # # First try for arm-specific configuration info # maxpartitions 8 maxusers 2 8 64 # Floating point emulator defopt ARMFPE # CPU types defopt opt_cputypes.h CPU_ARM6 CPU_ARM7 CPU_ARM7500 CPU_ARM8 CPU_SA110 # COMPAT_OLD_OFW for SHARKs defopt COMPAT_OLD_OFW # Maintain Interrupt statistics defopt IRQSTATS # PMAP_DEBUG (heavily abused option) defopt PMAP_DEBUG # X server support in console drivers defopt XSERVER define todservice {} device mainbus { [base = -1], [dack = -1], [irq = -1] } attach mainbus at root file arch/arm32/mainbus/mainbus.c mainbus file arch/arm32/mainbus/mainbus_io.c mainbus file arch/arm32/mainbus/mainbus_io_asm.S mainbus device cpu attach cpu at mainbus file arch/arm32/mainbus/cpu.c cpu needs-flag major {cpu = 38} # PIOC (Peripheral IO Controller) device # parent to wdc, fdc, com lpt device pioc { [offset = -1], [dack = -1], [irq = -1] } attach pioc at mainbus file arch/arm32/mainbus/pioc.c pioc # Standard NetBSD wd driver device wdc: atapi, ata device wd: disk attach wd at ata # XXX shouldn't have to have NWD in wdc.h file dev/ic/wdc.c wdc & (wd | !wd) & !iomd needs-flag file arch/arm32/dev/wdc.c wdc & (wd | !wd) & iomd needs-flag file dev/ata/wd.c wd & !iomd needs-flag file arch/arm32/dev/wd.c wd & iomd needs-flag major {wd = 16} attach wdc at pioc with wdc_pioc file arch/arm32/mainbus/wdc_pioc.c wdc_pioc # Standard parallel driver device lpt file dev/ic/lpt.c lpt needs-flag major {lpt = 8} attach lpt at pioc with lpt_pioc file arch/arm32/mainbus/lpt_pioc.c lpt_pioc # Common OFW files include "dev/ofw/files.ofw" attach ofbus at root with ofbus_root file arch/arm32/ofw/ofw.c ofw file arch/arm32/ofw/openfirm.c ofw file arch/arm32/ofw/oftodclock.c ofw & (shark | ofwgencfg) # XXX ISA DMA controller (for ESS - should just pull in # XXX files.isa) define isadma file dev/isa/isadma.c isadma needs-flag file arch/arm32/isa/isadma_machdep.c isadma # XXX SoundBlaster stuff (for files.ofisa - should just pull in # XXX files.isa) define sbdsp file dev/isa/sbdsp.c sbdsp # XXX ISA joystick driver device joy file arch/arm32/isa/joy.c joy needs-flag device sb: audio, isadma, sbdsp, mulaw, auconv file dev/isa/sb.c sb needs-flag define ess { } # XXX should pull in files.isa # ESS Technology ES1887/ES888 device ess: ess, audio, isadma, mulaw, auconv, midibus file dev/isa/ess.c ess needs-flag attach opl at ess with opl_ess file dev/isa/opl_ess.c opl_ess # XXX should pull in files.isa # AD1848 (CS4248, CS4231, AD1845) audio codec support; used by other drivers file dev/isa/ad1848.c ad1848 # XXX should pull in files.isa device ym: audio, isadma, ad1848, auconv file dev/isa/ym.c ym needs-flag # XXX should pull in files.isa # Microsoft Windows Sound System device wss: audio, isadma, ad1848, auconv file dev/isa/wss.c wss needs-flag # cs8900 Crystal Ethernet Controller device cs: arp, ether, ifnet, isadma file dev/isa/cs89x0.c cs # OFW ISA bus driver. include "dev/ofisa/files.ofisa" file arch/arm32/ofw/ofisa_machdep.c ofisa file arch/arm32/ofw/com_ofisa_machdep.c com_ofisa file arch/arm32/ofw/com_ofisa_consolehack.c com_ofisa # XXX file arch/arm32/ofw/if_cs_ofisa_machdep.c cs_ofisa file arch/arm32/ofw/lpt_ofisa_machdep.c lpt_ofisa file arch/arm32/ofw/wdc_ofisa_machdep.c wdc_ofisa # XXX So ISA locator names are present in locators.h. device isa {[port = -1], [size = 0], [iomem = -1], [iosiz = 0], [irq = -1], [drq = -1], [drq2 = -1]} # Glue for OFW ISA device attachment device ofisapc {} attach ofisapc at ofbus file arch/arm32/ofw/ofisapc.c pc & ofw device ofisascr {} attach ofisascr at ofisa file arch/arm32/ofw/ofisascr.c scr & ofw device ofrom attach ofrom at ofbus file arch/arm32/ofw/ofrom.c ofrom needs-flag # Standard NetBSD fd driver device fdc {drive = -1} attach fdc at pioc device fd: disk attach fd at fdc file arch/arm32/mainbus/fd.c fdc needs-flag major {fd = 17} # Standard serial driver major {com = 12} attach com at pioc with com_pioc file arch/arm32/mainbus/com_pioc.c com_pioc # Memory disk driver file arch/arm32/dev/md_hooks.c md & memory_disk_hooks major {md = 18} # IOMD device # parent to kbd, qms, pms, iic # also provides irq and timer services device iomd {} attach iomd at mainbus file arch/arm32/iomd/iomd.c iomd needs-flag file arch/arm32/iomd/iomd_io.c iomd file arch/arm32/iomd/iomd_io_asm.S iomd file arch/arm32/iomd/iomd_irq.S iomd file arch/arm32/iomd/iomd_irqhandler.c iomd file arch/arm32/iomd/iomd_fiq.S iomd file arch/arm32/iomd/iomd_dma.c iomd # IOMD mouse devices # clock device device clock attach clock at iomd file arch/arm32/iomd/iomd_clock.c iomd # quadmouse device device qms file arch/arm32/dev/qms.c qms needs-flag major {qms = 9} attach qms at iomd with qms_iomd file arch/arm32/iomd/qms_iomd.c qms_iomd # attribute used to represent the "keyboard controller" on the shark # XXX should be a real device define pckbd { [irq = -1], [port = -1] } # PS/2 mouse device device pms: tty file arch/arm32/dev/pms.c pms & pms_iomd needs-flag file arch/arm32/shark/pms.c pms & ofw needs-flag major {pms = 40} attach pms at pckbd with pms attach pms at iomd with pms_iomd file arch/arm32/iomd/pms_iomd.c pms_iomd # Standard keyboard driver device kbd file arch/arm32/dev/kbd.c kbd needs-flag major {kbd = 11} attach kbd at iomd with kbd_iomd file arch/arm32/iomd/kbd_iomd.c kbd_iomd # IIC device device iic { addr = -1 } file arch/arm32/dev/iic.c iic needs-flag attach iic at iomd with iic_iomd file arch/arm32/iomd/iic_iomd.c iic_iomd file arch/arm32/iomd/iomd_iic.S iic_iomd # IIC based RTC device rtc : todservice attach rtc at iic file arch/arm32/dev/rtc.c rtc needs-flag device todclock attach todclock at todservice file arch/arm32/dev/todclock.c todclock needs-count # VIDC device # parent to vidcvideo, vidcaudio, beep device vidc { [base = -1], [dack = -1], [irq = -1] } attach vidc at mainbus file arch/arm32/vidc/vidc20.c vidc needs-count # Audio devices device beep attach beep at vidc file arch/arm32/vidc/beep.c beep needs-flag major {beep = 10} device vidcaudio: audio attach vidcaudio at vidc file arch/arm32/vidc/vidcaudio.c vidcaudio needs-flag major {vidcaudio = 36} device lmcaudio: audio attach lmcaudio at vidc file arch/arm32/vidc/lmcaudio.c lmcaudio needs-flag file arch/arm32/vidc/lmc1982.S lmcaudio # Podule bus device device podulebus { [slot = -1] } attach podulebus at root file arch/arm32/podulebus/podulebus.c podulebus needs-flag file arch/arm32/podulebus/podulebus_io.c podulebus file arch/arm32/podulebus/podulebus_io_asm.S podulebus # Ethernet devices # Novell NE1000 and NE2000 clones (EtherM, EtherH) attach ne at podulebus with ne_pbus file arch/arm32/podulebus/if_ne_pbus.c ne_pbus device ea: ether, ifnet, arp attach ea at podulebus file arch/arm32/podulebus/if_ea.c ea device eb: ether, ifnet, arp attach eb at podulebus file arch/arm32/podulebus/if_eb.c eb device ie: ether, ifnet, arp attach ie at podulebus file arch/arm32/podulebus/if_ie.c ie device es: ether, ifnet, arp attach es at mainbus file arch/arm32/rc7500/if_es.c es & rc7500 #define ipkdb #device kie: ipkdb #attach kie at podule #file arch/arm32/podulebus/ipkdb_ie.c kie #file arch/arm32/arm32/ipkdb_glue.c ipkdb #file arch/arm32/arm32/ipkdb_step.c ipkdb # # Machine-independent SCSI drivers # include "dev/scsipi/files.scsipi" major {sd = 24} major {st = 25} major {cd = 26} major {ch = 27} major {uk = 28} major {ss = 29} # Generic sbic (WD3393) driver define sbic file arch/arm32/podulebus/sbic.c sbic # Acorn SCSI I specific layer for sbic device asc: scsi, sbic attach asc at podulebus file arch/arm32/podulebus/asc.c asc needs-flag # Generic AMD AM53C94 driver define esc file arch/arm32/podulebus/esc.c esc # Connect32 specific layer for esc device cosc: scsi, esc attach cosc at podulebus file arch/arm32/podulebus/cosc.c cosc # Generic fas216 + esp216 driver define sfas file arch/arm32/podulebus/sfas.c sfas device ptsc: scsi, sfas attach ptsc at podulebus file arch/arm32/podulebus/ptsc.c ptsc device csc: scsi, sfas attach csc at podulebus file arch/arm32/podulebus/csc.c csc # Oak specific layer for ncr5380 device oak: scsi, ncr5380sbc attach oak at podulebus file arch/arm32/podulebus/oak.c oak # Cumana SCSI1 specific layer for ncr5380 device csa: scsi, ncr5380sbc attach csa at podulebus file arch/arm32/podulebus/csa.c csa # ICS IDE driver device icside {} attach icside at podulebus file arch/arm32/podulebus/icside.c icside file arch/arm32/podulebus/icside_io.c icside file arch/arm32/podulebus/icside_io_asm.S icside attach wdc at icside with wdc_ics # Yellowstone RapIDE driver device rapide {} attach rapide at podulebus file arch/arm32/podulebus/rapide.c rapide file arch/arm32/podulebus/rapide_io_asm.S rapide attach wdc at rapide with wdc_rapide # Simtec IDE driver device simide {} attach simide at podulebus file arch/arm32/podulebus/simide.c simide file arch/arm32/podulebus/simide_io_asm.S simide attach wdc at simide with wdc_sim # Atomwide Multi-Port Serial driver device amps {} attach amps at podulebus attach com at amps with com_amps file arch/arm32/podulebus/amps.c amps device vidcvideo attach vidcvideo at vidc file arch/arm32/vidc/console/vidcvideo.c vidcvideo needs-count major {vidcvideo = 37} device vt: tty attach vt at vidc file arch/arm32/vidc/console/console.c vt needs-count file arch/arm32/vidc/console/vidcconsole.c vt file arch/arm32/vidc/console/vidc_mc.S vt file arch/arm32/vidc/console/vidc.c vt file arch/arm32/vidc/console/vt220.c vt file arch/arm32/vidc/console/debugconsole.c vt file arch/arm32/vidc/console/dumb.c vt # Generic MD files file arch/arm32/arm32/autoconf.c file arch/arm32/arm32/blockio.S file arch/arm32/arm32/bus_dma.c file arch/arm32/arm32/conf.c file arch/arm32/arm32/cpuswitch.S file arch/arm32/arm32/disksubr.c disk file arch/arm32/arm32/disksubr_acorn.c disk file arch/arm32/arm32/disksubr_mbr.c disk file arch/arm32/arm32/stubs.c file arch/arm32/arm32/exception.S file arch/arm32/arm32/syscall.c file arch/arm32/arm32/ast.c file arch/arm32/arm32/fault.c file arch/arm32/arm32/undefined.c file arch/arm32/arm32/mem.c file arch/arm32/arm32/process_machdep.c file arch/arm32/arm32/machdep.c file arch/arm32/arm32/sys_machdep.c file arch/arm32/arm32/vm_machdep.c file arch/arm32/arm32/pmap.c file arch/arm32/arm32/fusu.S file arch/arm32/arm32/cpufunc.c file arch/arm32/arm32/cpufunc_asm.S file arch/arm32/arm32/setcpsr.S file arch/arm32/arm32/setstack.S file arch/arm32/arm32/spl.S file arch/arm32/arm32/intr.c file arch/arm32/dev/bus_space_notimpl.S file arch/arm32/arm32/in_cksum_arm32.c inet file netns/ns_cksum.c ns # library functions file arch/arm32/arm32/strstr.c file arch/arm32/arm32/strtoul.c file arch/arm32/arm32/bcopy_page.S file arch/arm32/arm32/bcopyinout.S file arch/arm32/arm32/copystr.S # files related to the shell file arch/arm32/kshell/kshell_input.c kshell file arch/arm32/kshell/kshell_shell.c kshell file arch/arm32/kshell/kshell_disassem.c kshell file arch/arm32/kshell/kshell_dumphex.c kshell file arch/arm32/kshell/kshell_debug.c kshell # files related to debugging file arch/arm32/arm32/disassem.c file arch/arm32/arm32/postmortem.c postmortem file dev/cons.c file dev/cninit.c # ARM FPE file arch/arm32/fpe-arm/armfpe_glue.S armfpe file arch/arm32/fpe-arm/armfpe_init.c armfpe file arch/arm32/fpe-arm/armfpe.s armfpe # DDB file arch/arm32/arm32/db_disasm.c ddb file arch/arm32/arm32/db_interface.c ddb file arch/arm32/arm32/db_trace.c ddb file arch/arm32/arm32/db_machdep.c ddb # RiscPC specific files file arch/arm32/riscpc/rpc_machdep.c riscpc file arch/arm32/riscpc/rpc_kbd_map.c riscpc & kbd # RC7500 specific files file arch/arm32/rc7500/rc7500_machdep.c rc7500 file arch/arm32/rc7500/rc7500_kbd_map.c rc7500 & kbd file arch/arm32/rc7500/rc7500_prom.c rc7500 & prom_debug file arch/arm32/rc7500/rc7500_promsys.S rc7500 & prom_debug # Shark specific files file arch/arm32/shark/shark_machdep.c shark file arch/arm32/shark/sequoia.c shark file arch/arm32/shark/fiq.S shark file arch/arm32/shark/hat.c shark file arch/arm32/isa/isa_irqhandler.c shark file arch/arm32/isa/clock.c shark file arch/arm32/isa/isa_irq.S shark file arch/arm32/isa/isa_shark_machdep.c shark file arch/arm32/isa/isa_io.c shark file arch/arm32/isa/isa_io_asm.S shark # OFWGENCFG specific files file arch/arm32/ofw/ofw_irq.S ofwgencfg file arch/arm32/ofw/ofw_irqhandler.c ofwgencfg file arch/arm32/ofw/ofwgencfg_clock.c ofwgencfg file arch/arm32/ofw/ofwgencfg_machdep.c ofwgencfg # National Semiconductor PC97307VUL SuperIO chip configuration routines define nsio file arch/arm32/shark/ns87307.c nsio & shark # 8042 microcontroller routines for keyboard and mouse define i8042 file arch/arm32/shark/i8042.c i8042 pseudo-device profiler: disk file arch/arm32/shark/profile.c profiler needs-flag # SHARK pc console device pc: tty, pckbd, i8042 attach pc at ofisapc file arch/arm32/shark/pccons.c pc & ofw needs-flag # Smart Card Reader device scr: tty file arch/arm32/shark/scr.c scr needs-flag attach scr at ofisascr # DC21285 "Footbridge" specific files define footbridge {} device footbridge: pcibus, todservice attach footbridge at mainbus file arch/arm32/footbridge/footbridge.c footbridge file arch/arm32/footbridge/footbridge_machdep.c footbridge file arch/arm32/footbridge/footbridge_io.c footbridge file arch/arm32/footbridge/footbridge_io_asm.S footbridge file arch/arm32/footbridge/footbridge_pci.c footbridge file arch/arm32/footbridge/footbridge_irq.S footbridge file arch/arm32/footbridge/footbridge_irqhandler.c footbridge file arch/arm32/footbridge/footbridge_clock.c footbridge # DC21285 "Footbridge" serial port device fcom: tty attach fcom at footbridge file arch/arm32/footbridge/footbridge_com.c fcom needs-flag file arch/arm32/footbridge/footbridge_com_io.c fcom file arch/arm32/footbridge/footbridge_com_io_asm.S fcom # EBSA285/CATS class board # DC21285 based board with cyclone firmware file arch/arm32/footbridge/ebsa285_machdep.c footbridge & ebsa285 # PCI devices # # Include PCI config # include "dev/pci/files.pci" # network devices MII bus include "dev/mii/files.mii" device pcib: isabus attach pcib at pci file arch/arm32/pci/pcib.c pcib # XXX THE FOLLOWING BLOCK SHOULD GO INTO dev/pci/files.pci, BUT CANNOT # XXX BECAUSE NOT 'lpt' IS DEFINED IN files.isa, RATHER THAN files. # XXX (when the conf/files and files.isa bogons are fixed, this can # XXX be fixed as well.) attach lpt at puc with lpt_puc file dev/pci/lpt_puc.c lpt_puc # XXX THE FOLLOWING BLOCK SHOULD GO INTO dev/pci/files.pci, BUT CANNOT # XXX BECAUSE NOT ALL PORTS USE THE MI DRIVER YET. (when the conf/files # XXX and files.isa bogons are fixed, this can be fixed as well.) # PCI IDE controllers device pciide {[channel = -1]} attach pciide at pci file dev/pci/pciide.c pciide attach wdc at pciide with wdc_pciide file dev/pci/wdc_pciide.c wdc_pciide file arch/arm32/pci/pciide_machdep.c pciide # Include USB stuff include "dev/usb/files.usb" # XXX REALLY JUST WANT FILES.ISA!!!! # # ISA Plug 'n Play autoconfiguration glue. # THIS MUST COME AFTER ALL MI ISA DEVICES ARE DEFINED. This is because # ISA PnP devices often use `device' declarations listed in this file. # include "dev/isapnp/files.isapnp" file arch/arm32/isa/isapnp_machdep.c isapnp # # Compatibility modules # # Binary compatibility with previous NetBSD releases (COMPAT_XX) file arch/arm32/arm32/compat_13_machdep.c compat_13