files.alpha revision 1.80
1# $NetBSD: files.alpha,v 1.80 1998/06/07 19:11:29 sommerfe Exp $ 2# 3# alpha-specific configuration info 4 5# maxpartitions must be first item in files.${ARCH}.newconf 6maxpartitions 8 7 8maxusers 8 16 64 9 10# CPU support option headers 11defopt DEC_2000_300 # "Jensen": 2000/300 (DECpc AXP 150) 12defopt DEC_2100_A50 # Avanti etc: AlphaStation 400, 200, etc. 13defopt DEC_3000_300 # Pelican etc: 3000/300* 14defopt DEC_3000_500 # Flamingo etc: 3000/[4-9]00* 15defopt DEC_550 # Miata: Personal Workstation (550) 16defopt DEC_AXPPCI_33 # NoName: AXPpci33, etc. 17defopt DEC_EB164 # EB164: AlphaPC 164 18defopt DEC_EB64PLUS # EB64+: AlphaPC 64, etc. 19defopt DEC_KN20AA # KN20AA: AlphaStation 500 and 600 20defopt DEC_KN8AE # KN8AE: AlphaServer 8200 and 8400 21defopt DEC_KN300 # KN300: AlphaServer 4X00 22defopt AVALON_A12 # Avalon: A12T1, A12M Parallel Supercomputer 23 24# Miscellaneous CPU-specific option headers 25defopt FIX_UNALIGNED_VAX_FP 26defopt ZS_IOASIC_DMA 27 28# XXX Temporary, until integration is finished. 29defopt NEW_SCC_DRIVER 30 31# this loses, but there's no way to define attributes which have attributes 32define alpha_shared_intr 33file arch/alpha/common/shared_intr.c alpha_shared_intr | dec_eb164 | 34 dec_eb64plus | dec_kn20aa | dec_kn8ae | 35 dec_kn300 | dec_550 36define alpha_sgmap 37file arch/alpha/common/sgmap_common.c alpha_sgmap | dec_3000_500 38 39# 40# Bus-independent devices 41# 42 43device mainbus { } # no locators (yet?) 44attach mainbus at root 45 46device cpu { } # not really optional 47attach cpu at mainbus 48file arch/alpha/alpha/cpu.c cpu 49 50 51# 52# Machine-independent SCSI drivers 53# 54 55include "dev/scsipi/files.scsipi" 56major { st = 2 } 57major { cd = 3 } 58major { sd = 8 } 59 60# 61# Machine-independent ATA drivers 62# 63 64include "dev/ata/files.ata" 65major { wd = 4 } 66 67# Memory Disk 68file arch/alpha/alpha/md_root.c memory_disk_hooks 69major { md = 6 } 70 71 72# 73# "Workstation Console" glue. 74# 75include "dev/wscons/files.wscons" 76 77 78# 79# TurboLaser Bus Support 80# 81 82device tlsb { node = -1, offset = -1 } 83attach tlsb at mainbus 84file arch/alpha/tlsb/tlsb.c tlsb & dec_kn8ae 85 86device kft { } 87attach kft at tlsb 88file arch/alpha/tlsb/kftxx.c kft 89 90device tlsbmem 91attach tlsbmem at tlsb 92file arch/alpha/tlsb/tlsbmem.c tlsbmem 93 94device gbus { offset = -1 } 95attach gbus at tlsb 96file arch/alpha/tlsb/gbus.c gbus 97 98# 99# MCBUS support 100# 101 102device mcbus { mid = -1 } 103attach mcbus at mainbus 104file arch/alpha/mcbus/mcbus.c mcbus & dec_kn300 105 106device mcmem 107attach mcmem at mcbus 108file arch/alpha/mcbus/mcmem.c mcmem 109 110# 111# Bus-independent support for DEC devices 112# 113include "dev/dec/files.dec" 114 115# 116# TurboChannel Devices 117# 118include "dev/tc/files.tc" 119 120# TC attachment is MD 121attach tc at tcbus 122 123device tcasic: tcbus 124attach tcasic at mainbus 125file arch/alpha/tc/tcasic.c tcasic 126file arch/alpha/tc/tc_bus_mem.c tcasic 127file arch/alpha/tc/tc_dma.c tcasic 128file arch/alpha/tc/tc_dma_3000_300.c tcasic & dec_3000_300 129file arch/alpha/tc/tc_dma_3000_500.c tcasic & dec_3000_500 130file arch/alpha/tc/tc_sgmap.c tcasic & dec_3000_500 131file arch/alpha/tc/tc_3000_500.c tcasic & dec_3000_500 132file arch/alpha/tc/tc_3000_300.c tcasic & dec_3000_300 133 134# the TurboChannel IOCTL ASIC 135# IOASIC device and attachment defined in sys/dev/tc/files.tc 136file arch/alpha/tc/ioasic.c ioasic 137 138# Color Frame buffer 139device cfb: wsemuldisplaydev, wsrasteremulops 140attach cfb at tc 141file arch/alpha/tc/cfb.c cfb 142 143# Smart Frame buffer 144device sfb: wsemuldisplaydev, wsrasteremulops 145attach sfb at tc 146file arch/alpha/tc/sfb.c sfb 147 148# 8530 UARTs 149device scc: tty 150attach scc at ioasic 151file arch/alpha/tc/scc.c scc needs-count 152 153# 8530 UARTs using the MI 8530 driver 154device zsc { channel = -1 } 155attach zsc at ioasic with zsc_ioasic 156file arch/alpha/tc/zs_ioasic.c zsc_ioasic 157file dev/ic/z8530sc.c zsc 158 159device zstty: tty 160attach zstty at zsc 161file dev/ic/z8530tty.c zstty needs-flag 162 163# the TCDS ASIC 164device tcds { chip = -1 } 165attach tcds at tc 166file arch/alpha/tc/tcds.c tcds 167 168# 53C[F]90 SCSI 169device asc: scsi, ncr53c9x 170attach asc at tcds with asc_tcds 171file arch/alpha/tc/asc.c asc 172file arch/alpha/tc/tcds_dma.c asc 173 174# TC and baseboard ioasic Lance ethernet are in files.tc 175 176# 177# ISA Bus support 178# 179 180include "dev/pci/files.pci" # XXX some ISA devs are 'at pci' too. 181include "dev/isa/files.isa" 182 183#file arch/alpha/isa/isafcns_jensen.c dec_2000_300 184 185# XXX THE FOLLOWING BLOCK SHOULD GO INTO dev/pci/files.pci, BUT CANNOT 186# XXX BECAUSE NOT ALL PORTS USE THE MI DRIVER YET. (when the conf/files 187# XXX and files.isa bogons are fixed, this can be fixed as well.) 188 189# PCI IDE controllers 190device pciide {[channel = -1]} 191attach pciide at pci 192file dev/pci/pciide.c pciide 193attach wdc at pciide with wdc_pciide 194file dev/pci/wdc_pciide.c wdc_pciide 195 196# 197# ISA Bus devices 198# 199 200#device ibus at mainbus { } 201#device jcombo at ibus: isabus 202#device jeisa at ibus: eisabus 203 204file arch/alpha/isa/isa_machdep.c isa 205 206include "dev/pckbc/files.pckbc" 207 208# Floppy disk controller 209device fdc { drive = -1 } 210attach fdc at isa 211device fd: disk, isadma 212attach fd at fdc 213file arch/alpha/isa/fd.c fdc needs-flag 214major { fd = 0 } 215 216# 217# EISA Bus support 218# 219 220include "dev/eisa/files.eisa" 221 222 223# 224# PCI Bus support 225# 226 227# include "dev/pci/files.pci" XXX SEE ABOVE 228 229file arch/alpha/pci/pciide_machdep.c pciide 230 231define alpha_pci_sgmap_pte32 232file arch/alpha/pci/pci_sgmap_pte32.c alpha_pci_sgmap_pte32 233 234define alpha_pci_sgmap_pte64 235file arch/alpha/pci/pci_sgmap_pte64.c alpha_pci_sgmap_pte64 236 237device apecs: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 238attach apecs at mainbus 239file arch/alpha/pci/apecs.c apecs 240file arch/alpha/pci/apecs_bus_io.c apecs 241file arch/alpha/pci/apecs_bus_mem.c apecs 242file arch/alpha/pci/apecs_dma.c apecs 243file arch/alpha/pci/apecs_pci.c apecs 244 245device cia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 246attach cia at mainbus 247file arch/alpha/pci/cia.c cia 248file arch/alpha/pci/cia_dma.c cia 249file arch/alpha/pci/cia_pci.c cia 250file arch/alpha/pci/cia_bwx_bus_io.c cia 251file arch/alpha/pci/cia_bwx_bus_mem.c cia 252file arch/alpha/pci/cia_swiz_bus_io.c cia 253file arch/alpha/pci/cia_swiz_bus_mem.c cia 254 255device a12c { }: pcibus 256attach a12c at mainbus 257file arch/alpha/pci/a12c.c a12c 258file arch/alpha/pci/a12c_bus_mem.c a12c 259file arch/alpha/pci/a12c_dma.c a12c 260file arch/alpha/pci/a12c_pci.c a12c 261 262device dwlpx: pcibus, alpha_sgmap, alpha_pci_sgmap_pte32 263attach dwlpx at kft 264file arch/alpha/pci/dwlpx.c dwlpx 265file arch/alpha/pci/dwlpx_bus_io.c dwlpx 266file arch/alpha/pci/dwlpx_bus_mem.c dwlpx 267file arch/alpha/pci/dwlpx_dma.c dwlpx 268file arch/alpha/pci/dwlpx_pci.c dwlpx 269 270device lca: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 271attach lca at mainbus 272file arch/alpha/pci/lca.c lca 273file arch/alpha/pci/lca_bus_io.c lca 274file arch/alpha/pci/lca_bus_mem.c lca 275file arch/alpha/pci/lca_dma.c lca 276file arch/alpha/pci/lca_pci.c lca 277 278device mcpcia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 279attach mcpcia at mcbus 280file arch/alpha/pci/mcpcia.c mcpcia 281file arch/alpha/pci/mcpcia_bus_io.c mcpcia 282file arch/alpha/pci/mcpcia_bus_mem.c mcpcia 283file arch/alpha/pci/mcpcia_dma.c mcpcia 284file arch/alpha/pci/mcpcia_pci.c mcpcia 285 286 287# CPU support files 288file arch/alpha/pci/pci_2100_a50.c dec_2100_a50 289file arch/alpha/pci/pci_a12.c avalon_a12 290file arch/alpha/pci/pci_axppci_33.c dec_axppci_33 291file arch/alpha/pci/pci_eb164.c dec_eb164 292file arch/alpha/pci/pci_eb164_intr.s dec_eb164 293file arch/alpha/pci/pci_eb64plus.c dec_eb64plus 294file arch/alpha/pci/pci_eb64plus_intr.s dec_eb64plus 295file arch/alpha/pci/pci_kn20aa.c dec_kn20aa 296file arch/alpha/pci/pci_kn8ae.c dec_kn8ae 297file arch/alpha/pci/pci_kn300.c dec_kn300 298file arch/alpha/pci/pci_550.c dec_550 299 300 301# 302# PCI Bus devices 303# 304 305file arch/alpha/pci/pci_machdep.c pci 306 307device sio: isabus, alpha_shared_intr 308attach sio at pci 309device pceb: isabus, eisabus 310attach pceb at pci 311file arch/alpha/pci/sio.c sio | pceb needs-flag 312file arch/alpha/pci/sio_pic.c sio | pceb 313 314 315# 316# A12 if_de hack, this is temporary! 317# 318device ade: ether, ifnet, arp 319attach ade at pci 320file arch/alpha/pci/if_ade.c ade 321 322# 323# alpha/a12 platform-specific drivers 324# 325 326# Switch 327 328device xb 329attach xb at a12c 330file arch/alpha/a12/if_xb.c xb 331 332# Console 333 334device a12dc 335attach a12dc at a12c 336file arch/alpha/a12/a12dc.c a12dc needs-flag 337 338# 339# Devices that can live on multiple busses 340# 341 342device mcclock 343attach mcclock at ioasic with mcclock_ioasic 344attach mcclock at isa with mcclock_isa 345attach mcclock at gbus with mcclock_tlsb 346file arch/alpha/alpha/mcclock.c mcclock 347file arch/alpha/tc/mcclock_ioasic.c mcclock_ioasic 348file arch/alpha/isa/mcclock_isa.c mcclock_isa 349file arch/alpha/tlsb/mcclock_tlsb.c mcclock_tlsb 350 351 352# 353# Standard files 354# 355file arch/alpha/alpha/autoconf.c 356file arch/alpha/alpha/clock.c 357file arch/alpha/alpha/conf.c 358file arch/alpha/alpha/cpuconf.c 359file arch/alpha/alpha/interrupt.c 360file arch/alpha/alpha/machdep.c 361file arch/alpha/alpha/mainbus.c 362file arch/alpha/alpha/mem.c 363file arch/alpha/alpha/pmap.c 364file arch/alpha/alpha/process_machdep.c 365file arch/alpha/alpha/prom.c 366file arch/alpha/alpha/support.c 367file arch/alpha/alpha/sys_machdep.c 368file arch/alpha/alpha/trap.c 369file arch/alpha/alpha/vm_machdep.c 370file arch/alpha/alpha/disksubr.c 371file arch/alpha/common/bus_dma.c 372file dev/cons.c 373 374# Network protocol checksum routines 375file arch/alpha/alpha/in_cksum.c inet 376file netns/ns_cksum.c ns 377 378# PROM console support (for ports that don't have native console support) 379file arch/alpha/alpha/promcons.c 380 381# CPU support 382file arch/alpha/alpha/dec_2100_a50.c dec_2100_a50 383file arch/alpha/alpha/dec_3000_300.c dec_3000_300 384file arch/alpha/alpha/dec_3000_500.c dec_3000_500 385file arch/alpha/alpha/dec_550.c dec_550 386file arch/alpha/alpha/dec_axppci_33.c dec_axppci_33 387file arch/alpha/alpha/dec_eb164.c dec_eb164 388file arch/alpha/alpha/dec_eb64plus.c dec_eb64plus 389file arch/alpha/alpha/dec_kn20aa.c dec_kn20aa 390file arch/alpha/alpha/dec_kn8ae.c dec_kn8ae 391file arch/alpha/alpha/dec_kn300.c dec_kn300 392file arch/alpha/alpha/avalon_a12.c avalon_a12 393 394# Kernel debugger support 395file arch/alpha/alpha/db_disasm.c ddb 396file arch/alpha/alpha/db_interface.c ddb 397file arch/alpha/alpha/db_trace.c ddb 398 399# OSF/1 Binary Compatibility (COMPAT_OSF1) 400include "compat/osf1/files.osf1" 401 402# XXXX pcic here because it needs to be late. The catch: pcic needs 403# to be late, so devices which attach to it are attached late. But it 404# needs to be before its isa and pci attachments. This answer is 405# non-optimal, but I don't have a better answer right now. 406 407# PCIC pcmcia contoller 408# XXX this needs to be done very late, so it's done here. This feels 409# like a kludge, but it might be for the best. 410 411defopt PCIC_ISA_ALLOC_IOBASE 412defopt PCIC_ISA_ALLOC_IOSIZE 413defopt PCIC_ISA_INTR_ALLOC_MASK 414 415device pcic {[controller = -1], [socket = -1]} 416file dev/ic/i82365.c pcic 417 418# PCIC pcmcia contoller 419attach pcic at isa with pcic_isa 420file dev/isa/i82365_isa.c pcic_isa 421file dev/isa/i82365_isasubr.c pcic_isa 422 423# PCIC pcmcia contoller 424attach pcic at pci with pcic_pci 425file dev/pci/i82365_pci.c pcic_pci 426 427 428# this wants to be probed as late as possible. 429# 430# Machine-independent PCMCIA drivers 431# 432include "dev/pcmcia/files.pcmcia" 433