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