1# $NetBSD: files.alpha,v 1.198 2024/03/06 13:37:35 thorpej 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 11defflag DEC_2000_300 # "Jensen": 2000/300 (DECpc AXP 150) 12defflag DEC_2100_A50 # Avanti etc: AlphaStation 400, 200, etc. 13defflag DEC_2100_A500 # Sable etc: AlphaServer 2100 14defflag DEC_2100A_A500 # Lynx etc: AlphaServer 2100A 15defflag DEC_3000_300 # Pelican etc: 3000/300* 16defflag DEC_3000_500 # Flamingo etc: 3000/[4-9]00* 17defflag DEC_550 # Miata: Personal Workstation (550) 18defflag DEC_AXPPCI_33 # NoName: AXPpci33, etc. 19defflag DEC_EB164 # EB164: AlphaPC 164 20defflag DEC_EB64PLUS # EB64+: AlphaPC 64, etc. 21defflag DEC_KN20AA # KN20AA: AlphaStation 500 and 600 22defflag DEC_KN7AA # KN7AA: DEC 7000 and 10000 23defflag DEC_KN8AE # KN8AE: AlphaServer 8200 and 8400 24defflag DEC_KN300 # KN300: AlphaServer 4X00 25defflag DEC_1000 # Mikasa etc: AlphaServer 1000 26defflag DEC_1000A # Corelle etc: AlphaServer 800 and 1000A 27defflag DEC_ALPHABOOK1 # AlphaBook1: Tadpole/DEC AlphaBook 28defflag DEC_EB66 # EB66: 21066 Evaluation Board 29defflag DEC_6600 # EV6 Various EV6 Systems 30defflag API_UP1000 # EV6 Alpha Processor, Inc. UP1000 31 32# Miscellaneous CPU-specific option headers 33defflag FIX_UNALIGNED_VAX_FP 34defflag ZS_IOASIC_DMA 35 36# realtime clock compatible to OSF/1 37defflag CLOCK_COMPAT_OSF1 38 39# this loses, but there's no way to define attributes which have attributes 40define alpha_shared_intr 41file arch/alpha/common/shared_intr.c alpha_shared_intr | dec_eb164 | 42 dec_eb64plus | dec_kn20aa | dec_kn8ae | 43 dec_kn300 | dec_550 | dec_1000 | 44 dec_1000a | dec_eb66 | dec_6600 45define alpha_sgmap 46file arch/alpha/common/sgmap_common.c alpha_sgmap | dec_3000_500 47 48# 49# Bus-independent devices 50# 51 52device mainbus { } # no locators (yet?) 53attach mainbus at root 54 55device cpu { } # not really optional 56attach cpu at mainbus 57file arch/alpha/alpha/cpu.c cpu 58 59device qemu 60attach qemu at mainbus 61file arch/alpha/alpha/qemu.c qemu 62 63# 64# Machine-independent I2O drivers. 65# 66 67include "dev/i2o/files.i2o" 68 69# 70# Machine-independent SCSI drivers 71# 72 73include "dev/scsipi/files.scsipi" 74 75# 76# Machine-independent ATA drivers 77# 78 79include "dev/ata/files.ata" 80 81# Memory Disk 82file dev/md_root.c memory_disk_hooks 83 84# 85# TurboLaser Bus Support 86# 87 88device tlsb { node = -1 } 89attach tlsb at mainbus 90file arch/alpha/tlsb/tlsb.c tlsb & dec_kn8ae 91 92device kft { } 93attach kft at tlsb 94file arch/alpha/tlsb/kftxx.c kft 95 96device tlsbmem 97attach tlsbmem at tlsb 98file arch/alpha/tlsb/tlsbmem.c tlsbmem 99 100# 101# GBus support 102# 103 104device gbus { offset = -1 } 105attach gbus at tlsb 106file arch/alpha/gbus/gbus.c gbus 107file arch/alpha/gbus/gbus_io.c gbus 108 109# 110# MCBUS support 111# 112 113device mcbus { mid = -1 } 114attach mcbus at mainbus 115file arch/alpha/mcbus/mcbus.c mcbus & dec_kn300 116 117device mcmem 118attach mcmem at mcbus 119file arch/alpha/mcbus/mcmem.c mcmem 120 121# 122# Bus-independent support for DEC devices 123# 124include "dev/dec/files.dec" 125 126# 127# TURBOchannel Devices 128# 129include "dev/tc/files.tc" 130 131# TC attachment is MD 132define tcbus { } # TURBOchannel attachment 133attach tc at tcbus 134 135device tcasic: tcbus 136attach tcasic at mainbus 137file arch/alpha/tc/tcasic.c tcasic 138file arch/alpha/tc/tc_bus_mem.c tcasic 139file arch/alpha/tc/tc_dma.c tcasic 140file arch/alpha/tc/tc_dma_3000_300.c tcasic & dec_3000_300 141file arch/alpha/tc/tc_dma_3000_500.c tcasic & dec_3000_500 142file arch/alpha/tc/tc_sgmap.c tcasic & dec_3000_500 143file arch/alpha/tc/tc_3000_500.c tcasic & dec_3000_500 144file arch/alpha/tc/tc_3000_300.c tcasic & dec_3000_300 145 146# the TURBOchannel IOCTL ASIC 147# IOASIC device and attachment defined in sys/dev/tc/files.tc 148file arch/alpha/tc/ioasic.c ioasic 149 150# TC and baseboard ioasic Lance ethernet are in files.tc 151 152# 153# ISA Bus support 154# 155 156include "dev/pci/files.pci" # XXX some ISA devs are 'at pci' too. 157include "dev/pci/files.agp" 158include "dev/isa/files.isa" 159 160# 161# ISA Bus devices 162# 163 164file arch/alpha/isa/isa_machdep.c isa 165 166define isadma_bounce 167file arch/alpha/isa/isadma_bounce.c isadma_bounce 168 169include "dev/pckbport/files.pckbport" 170 171# ISA speaker generates keyboard beep 172device isabeep 173attach isabeep at pcppi 174 175# Floppy disk controller 176device fdc { drive = -1 }: isadma 177file dev/isa/fd.c fdc needs-flag 178 179attach fdc at isa with fdc_isa 180file dev/isa/fdc_isa.c fdc_isa 181 182device fd: disk 183attach fd at fdc 184 185# ISA Plug 'n Play devices 186file arch/alpha/isa/isapnp_machdep.c isapnp 187 188# 189# EISA Bus support 190# 191 192include "dev/eisa/files.eisa" 193 194file arch/alpha/eisa/eisa_machdep.c eisa 195 196device jensenio {[port = -1]}: eisabus, isabus, isadma_bounce 197attach jensenio at mainbus 198file arch/alpha/jensenio/jensenio.c jensenio 199file arch/alpha/jensenio/jensenio_bus_intio.c jensenio 200file arch/alpha/jensenio/jensenio_bus_io.c jensenio 201file arch/alpha/jensenio/jensenio_bus_mem.c jensenio 202file arch/alpha/jensenio/jensenio_dma.c jensenio 203file arch/alpha/jensenio/jensenio_intr.c jensenio 204 205attach com at jensenio with com_jensenio 206file arch/alpha/jensenio/com_jensenio.c com_jensenio 207 208attach lpt at jensenio with lpt_jensenio 209file arch/alpha/jensenio/lpt_jensenio.c lpt_jensenio 210 211attach pckbc at jensenio with pckbc_jensenio 212file arch/alpha/jensenio/pckbc_jensenio.c pckbc_jensenio 213 214# 215# PCI Bus support 216# 217 218# include "dev/pci/files.pci" XXX SEE ABOVE 219 220file arch/alpha/pci/pciide_machdep.c pciide_common 221 222define alpha_pci_sgmap_pte32 223file arch/alpha/pci/pci_sgmap_pte32.c alpha_pci_sgmap_pte32 224 225define alpha_pci_sgmap_pte64 226file arch/alpha/pci/pci_sgmap_pte64.c alpha_pci_sgmap_pte64 227 228device apecs: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 229attach apecs at mainbus 230file arch/alpha/pci/apecs.c apecs 231file arch/alpha/pci/apecs_bus_io.c apecs 232file arch/alpha/pci/apecs_bus_mem.c apecs 233file arch/alpha/pci/apecs_dma.c apecs 234file arch/alpha/pci/apecs_pci.c apecs 235 236device cia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 237attach cia at mainbus 238file arch/alpha/pci/cia.c cia 239file arch/alpha/pci/cia_dma.c cia 240file arch/alpha/pci/cia_pci.c cia 241file arch/alpha/pci/cia_bwx_bus_io.c cia 242file arch/alpha/pci/cia_bwx_bus_mem.c cia 243file arch/alpha/pci/cia_swiz_bus_io.c cia 244file arch/alpha/pci/cia_swiz_bus_mem.c cia 245 246device dwlpx: pcibus, alpha_sgmap, alpha_pci_sgmap_pte32 247attach dwlpx at kft 248file arch/alpha/pci/dwlpx.c dwlpx 249file arch/alpha/pci/dwlpx_bus_io.c dwlpx 250file arch/alpha/pci/dwlpx_bus_mem.c dwlpx 251file arch/alpha/pci/dwlpx_dma.c dwlpx 252file arch/alpha/pci/dwlpx_pci.c dwlpx 253 254device irongate: pcibus, agpbus, isadma_bounce 255attach irongate at mainbus 256file arch/alpha/pci/irongate.c irongate 257file arch/alpha/pci/irongate_bus_io.c irongate 258file arch/alpha/pci/irongate_bus_mem.c irongate 259file arch/alpha/pci/irongate_dma.c irongate 260file arch/alpha/pci/irongate_pci.c irongate 261 262device lca: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 263attach lca at mainbus 264file arch/alpha/pci/lca.c lca 265file arch/alpha/pci/lca_bus_io.c lca 266file arch/alpha/pci/lca_bus_mem.c lca 267file arch/alpha/pci/lca_dma.c lca 268file arch/alpha/pci/lca_pci.c lca 269 270device mcpcia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 271attach mcpcia at mcbus 272file arch/alpha/pci/mcpcia.c mcpcia 273file arch/alpha/pci/mcpcia_bus_io.c mcpcia 274file arch/alpha/pci/mcpcia_bus_mem.c mcpcia 275file arch/alpha/pci/mcpcia_dma.c mcpcia 276file arch/alpha/pci/mcpcia_pci.c mcpcia 277 278device tsc { } 279attach tsc at mainbus 280file arch/alpha/pci/tsc.c dec_6600 281 282device tsp: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 283attach tsp at tsc 284file arch/alpha/pci/tsp_dma.c tsp 285file arch/alpha/pci/tsp_pci.c tsp 286file arch/alpha/pci/tsp_bus_io.c tsp 287file arch/alpha/pci/tsp_bus_mem.c tsp 288 289device tsciic: i2cbus, i2c_bitbang 290attach tsciic at tsc 291file arch/alpha/pci/tsciic.c tsciic needs-flag 292 293device ttwoga { hose = -1 } 294attach ttwoga at mainbus 295# identical to pcibus 296define sableiobus {[bus = -1]} 297device ttwopci: pcibus, sableiobus, alpha_sgmap, alpha_pci_sgmap_pte64 298attach ttwopci at ttwoga 299file arch/alpha/pci/ttwoga.c ttwoga 300file arch/alpha/pci/ttwoga_bus_io.c ttwoga 301file arch/alpha/pci/ttwoga_bus_mem.c ttwoga 302file arch/alpha/pci/ttwoga_dma.c ttwoga 303file arch/alpha/pci/ttwoga_pci.c ttwoga 304 305# 306# Sable STDIO support 307# 308device sableio { port = -1 } 309attach sableio at sableiobus 310file arch/alpha/sableio/sableio.c sableio 311 312attach com at sableio with com_sableio 313file arch/alpha/sableio/com_sableio.c com_sableio 314 315attach lpt at sableio with lpt_sableio 316file arch/alpha/sableio/lpt_sableio.c lpt_sableio 317 318attach pckbc at sableio with pckbc_sableio 319file arch/alpha/sableio/pckbc_sableio.c pckbc_sableio 320 321attach fdc at sableio with fdc_sableio 322file arch/alpha/sableio/fdc_sableio.c fdc_sableio 323 324# CPU support files 325file arch/alpha/pci/pci_2100_a50.c dec_2100_a50 326file arch/alpha/pci/pci_2100_a500.c dec_2100_a500 | dec_2100a_a500 327file arch/alpha/pci/pci_up1000.c api_up1000 328file arch/alpha/pci/pci_alphabook1.c dec_alphabook1 329file arch/alpha/pci/pci_axppci_33.c dec_axppci_33 330file arch/alpha/pci/pci_eb164.c dec_eb164 331file arch/alpha/pci/pci_eb164_intr.s dec_eb164 332file arch/alpha/pci/pci_eb64plus.c dec_eb64plus 333file arch/alpha/pci/pci_eb64plus_intr.s dec_eb64plus 334file arch/alpha/pci/pci_eb66.c dec_eb66 335file arch/alpha/pci/pci_eb66_intr.s dec_eb66 336file arch/alpha/pci/pci_kn20aa.c dec_kn20aa 337file arch/alpha/pci/pci_kn8ae.c dec_kn8ae 338file arch/alpha/pci/pci_kn300.c dec_kn300 339file arch/alpha/pci/pci_550.c dec_550 340file arch/alpha/pci/pci_1000a.c dec_1000a 341file arch/alpha/pci/pci_1000.c dec_1000 342file arch/alpha/pci/pci_6600.c dec_6600 343 344 345# 346# PCI Bus devices 347# 348 349file arch/alpha/pci/pci_machdep.c pci 350file arch/alpha/pci/agp_machdep.c agp 351 352device sio: isabus, alpha_shared_intr, cy82c693 353attach sio at pci 354device pceb: isabus, eisabus, cy82c693, alpha_shared_intr 355attach pceb at pci 356file arch/alpha/pci/sio.c sio | pceb needs-flag 357file arch/alpha/pci/sio_pic.c sio | pceb 358 359# 360# Devices that can live on multiple busses 361# 362 363device mcclock: mc146818 364attach mcclock at ioasic with mcclock_ioasic 365attach mcclock at isa with mcclock_isa 366attach mcclock at gbus with mcclock_gbus 367attach mcclock at jensenio with mcclock_jensenio 368file arch/alpha/alpha/mcclock.c mcclock 369file arch/alpha/tc/mcclock_ioasic.c mcclock_ioasic 370file arch/alpha/isa/mcclock_isa.c mcclock_isa 371file arch/alpha/gbus/mcclock_gbus.c mcclock_gbus 372file arch/alpha/jensenio/mcclock_jensenio.c mcclock_jensenio 373 374 375# 376# Standard files 377# 378file arch/alpha/alpha/autoconf.c 379file arch/alpha/alpha/clock.c 380file arch/alpha/alpha/core_machdep.c coredump 381file arch/alpha/alpha/cpuconf.c 382file arch/alpha/alpha/interrupt.c 383file arch/alpha/alpha/ipifuncs.c multiprocessor 384file arch/alpha/alpha/kobj_machdep.c modular 385file arch/alpha/alpha/machdep.c 386file arch/alpha/alpha/mainbus.c 387file arch/alpha/alpha/patch.c 388file arch/alpha/alpha/pmap.c 389file arch/alpha/alpha/process_machdep.c 390file arch/alpha/alpha/procfs_machdep.c procfs 391file arch/alpha/alpha/prom.c 392file arch/alpha/alpha/sys_machdep.c 393file arch/alpha/alpha/syscall.c 394file arch/alpha/alpha/trap.c 395file arch/alpha/alpha/fp_complete.c 396file arch/alpha/alpha/vm_machdep.c 397file arch/alpha/alpha/disksubr.c 398file arch/alpha/common/bus_dma.c 399file arch/alpha/common/comlogout.c 400file dev/cons.c 401file kern/kern_cctr.c 402 403file dev/bus_dma/bus_dmamem_common.c 404 405# PROM console support (for ports that don't have native console support) 406file arch/alpha/alpha/promcons.c 407 408# CPU support 409file arch/alpha/alpha/dec_2000_300.c dec_2000_300 410file arch/alpha/alpha/dec_2100_a50.c dec_2100_a50 411file arch/alpha/alpha/dec_2100_a500.c dec_2100_a500 | dec_2100a_a500 412file arch/alpha/alpha/dec_3000_300.c dec_3000_300 413file arch/alpha/alpha/dec_3000_500.c dec_3000_500 414file arch/alpha/alpha/dec_550.c dec_550 415file arch/alpha/alpha/dec_alphabook1.c dec_alphabook1 416file arch/alpha/alpha/dec_axppci_33.c dec_axppci_33 417file arch/alpha/alpha/dec_eb164.c dec_eb164 418file arch/alpha/alpha/dec_eb64plus.c dec_eb64plus 419file arch/alpha/alpha/dec_eb66.c dec_eb66 420file arch/alpha/alpha/dec_kn20aa.c dec_kn20aa 421file arch/alpha/alpha/dec_kn7aa.c dec_kn7aa 422file arch/alpha/alpha/dec_kn8ae.c dec_kn8ae 423file arch/alpha/alpha/dec_kn300.c dec_kn300 424file arch/alpha/alpha/api_up1000.c api_up1000 425file arch/alpha/alpha/dec_1000a.c dec_1000 | dec_1000a 426file arch/alpha/alpha/dec_6600.c dec_6600 427 428# Kernel debugger support 429file arch/alpha/alpha/db_disasm.c ddb 430file arch/alpha/alpha/db_interface.c ddb 431file arch/alpha/alpha/db_trace.c ddb 432 433file arch/alpha/alpha/kgdb_machdep.c kgdb 434 435# Binary compatibility with previous NetBSD releases (COMPAT_XX) 436file arch/alpha/alpha/compat_13_machdep.c compat_13 437file arch/alpha/alpha/compat_16_machdep.c compat_16 438 439# Linux Binary Compatibility (COMPAT_LINUX) 440include "compat/linux/files.linux" 441include "compat/linux/arch/alpha/files.linux_alpha" 442file arch/alpha/alpha/linux_sigcode.s compat_linux 443file arch/alpha/alpha/linux_syscall.c compat_linux 444file arch/alpha/alpha/linux_trap.c compat_linux 445 446# Lock stubs 447file arch/alpha/alpha/lock_stubs.s 448 449# OSS audio driver compatibility 450include "compat/ossaudio/files.ossaudio" 451 452# XXXX pcic here because it needs to be late. The catch: pcic needs 453# to be late, so devices which attach to it are attached late. But it 454# needs to be before its isa and pci attachments. This answer is 455# non-optimal, but I don't have a better answer right now. 456 457# PCIC pcmcia controller 458# XXX this needs to be done very late, so it's done here. This feels 459# like a kludge, but it might be for the best. 460 461defparam PCIC_ISA_ALLOC_IOBASE 462defparam PCIC_ISA_ALLOC_IOSIZE 463defparam PCIC_ISA_INTR_ALLOC_MASK 464 465device pcic: pcmciabus 466file dev/ic/i82365.c pcic 467 468# PCIC pcmcia controller on ISA bus. 469attach pcic at isa with pcic_isa 470file dev/isa/i82365_isa.c pcic_isa 471 472# PCIC pcmcia controller on PCI bus. 473attach pcic at pci with pcic_pci 474file dev/pci/i82365_pci.c pcic_pci 475 476# PCIC pcmcia controller on PnP board 477attach pcic at isapnp with pcic_isapnp 478file dev/isapnp/i82365_isapnp.c pcic_isapnp 479 480# Code common to ISA and ISAPnP attachments 481file dev/isa/i82365_isasubr.c pcic_isa | pcic_isapnp | pcic_pci 482 483 484# this wants to be probed as late as possible. 485# 486# Machine-independent PCMCIA drivers 487# 488include "dev/pcmcia/files.pcmcia" 489# 490# Machine-independent USB device support 491# 492include "dev/usb/files.usb" 493# 494# Machine-independent Bluetooth support 495# 496include "dev/bluetooth/files.bluetooth" 497# 498# Machine-independent IEEE 1394 device support 499# 500include "dev/ieee1394/files.ieee1394" 501 502include "arch/alpha/conf/majors.alpha" 503