1# $NetBSD: files.alpha,v 1.196 2024/03/02 20:15:33 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, offset = -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 107 108# 109# MCBUS support 110# 111 112device mcbus { mid = -1 } 113attach mcbus at mainbus 114file arch/alpha/mcbus/mcbus.c mcbus & dec_kn300 115 116device mcmem 117attach mcmem at mcbus 118file arch/alpha/mcbus/mcmem.c mcmem 119 120# 121# Bus-independent support for DEC devices 122# 123include "dev/dec/files.dec" 124 125# 126# TURBOchannel Devices 127# 128include "dev/tc/files.tc" 129 130# TC attachment is MD 131define tcbus { } # TURBOchannel attachment 132attach tc at tcbus 133 134device tcasic: tcbus 135attach tcasic at mainbus 136file arch/alpha/tc/tcasic.c tcasic 137file arch/alpha/tc/tc_bus_mem.c tcasic 138file arch/alpha/tc/tc_dma.c tcasic 139file arch/alpha/tc/tc_dma_3000_300.c tcasic & dec_3000_300 140file arch/alpha/tc/tc_dma_3000_500.c tcasic & dec_3000_500 141file arch/alpha/tc/tc_sgmap.c tcasic & dec_3000_500 142file arch/alpha/tc/tc_3000_500.c tcasic & dec_3000_500 143file arch/alpha/tc/tc_3000_300.c tcasic & dec_3000_300 144 145# the TURBOchannel IOCTL ASIC 146# IOASIC device and attachment defined in sys/dev/tc/files.tc 147file arch/alpha/tc/ioasic.c ioasic 148 149# TC and baseboard ioasic Lance ethernet are in files.tc 150 151# 152# ISA Bus support 153# 154 155include "dev/pci/files.pci" # XXX some ISA devs are 'at pci' too. 156include "dev/pci/files.agp" 157include "dev/isa/files.isa" 158 159# 160# ISA Bus devices 161# 162 163file arch/alpha/isa/isa_machdep.c isa 164 165define isadma_bounce 166file arch/alpha/isa/isadma_bounce.c isadma_bounce 167 168include "dev/pckbport/files.pckbport" 169 170# ISA speaker generates keyboard beep 171device isabeep 172attach isabeep at pcppi 173 174# Floppy disk controller 175device fdc { drive = -1 }: isadma 176file dev/isa/fd.c fdc needs-flag 177 178attach fdc at isa with fdc_isa 179file dev/isa/fdc_isa.c fdc_isa 180 181device fd: disk 182attach fd at fdc 183 184# ISA Plug 'n Play devices 185file arch/alpha/isa/isapnp_machdep.c isapnp 186 187# 188# EISA Bus support 189# 190 191include "dev/eisa/files.eisa" 192 193file arch/alpha/eisa/eisa_machdep.c eisa 194 195device jensenio {[port = -1]}: eisabus, isabus, isadma_bounce 196attach jensenio at mainbus 197file arch/alpha/jensenio/jensenio.c jensenio 198file arch/alpha/jensenio/jensenio_bus_intio.c jensenio 199file arch/alpha/jensenio/jensenio_bus_io.c jensenio 200file arch/alpha/jensenio/jensenio_bus_mem.c jensenio 201file arch/alpha/jensenio/jensenio_dma.c jensenio 202file arch/alpha/jensenio/jensenio_intr.c jensenio 203 204attach com at jensenio with com_jensenio 205file arch/alpha/jensenio/com_jensenio.c com_jensenio 206 207attach lpt at jensenio with lpt_jensenio 208file arch/alpha/jensenio/lpt_jensenio.c lpt_jensenio 209 210attach pckbc at jensenio with pckbc_jensenio 211file arch/alpha/jensenio/pckbc_jensenio.c pckbc_jensenio 212 213# 214# PCI Bus support 215# 216 217# include "dev/pci/files.pci" XXX SEE ABOVE 218 219file arch/alpha/pci/pciide_machdep.c pciide_common 220 221define alpha_pci_sgmap_pte32 222file arch/alpha/pci/pci_sgmap_pte32.c alpha_pci_sgmap_pte32 223 224define alpha_pci_sgmap_pte64 225file arch/alpha/pci/pci_sgmap_pte64.c alpha_pci_sgmap_pte64 226 227device apecs: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 228attach apecs at mainbus 229file arch/alpha/pci/apecs.c apecs 230file arch/alpha/pci/apecs_bus_io.c apecs 231file arch/alpha/pci/apecs_bus_mem.c apecs 232file arch/alpha/pci/apecs_dma.c apecs 233file arch/alpha/pci/apecs_pci.c apecs 234 235device cia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 236attach cia at mainbus 237file arch/alpha/pci/cia.c cia 238file arch/alpha/pci/cia_dma.c cia 239file arch/alpha/pci/cia_pci.c cia 240file arch/alpha/pci/cia_bwx_bus_io.c cia 241file arch/alpha/pci/cia_bwx_bus_mem.c cia 242file arch/alpha/pci/cia_swiz_bus_io.c cia 243file arch/alpha/pci/cia_swiz_bus_mem.c cia 244 245device dwlpx: pcibus, alpha_sgmap, alpha_pci_sgmap_pte32 246attach dwlpx at kft 247file arch/alpha/pci/dwlpx.c dwlpx 248file arch/alpha/pci/dwlpx_bus_io.c dwlpx 249file arch/alpha/pci/dwlpx_bus_mem.c dwlpx 250file arch/alpha/pci/dwlpx_dma.c dwlpx 251file arch/alpha/pci/dwlpx_pci.c dwlpx 252 253device irongate: pcibus, agpbus, isadma_bounce 254attach irongate at mainbus 255file arch/alpha/pci/irongate.c irongate 256file arch/alpha/pci/irongate_bus_io.c irongate 257file arch/alpha/pci/irongate_bus_mem.c irongate 258file arch/alpha/pci/irongate_dma.c irongate 259file arch/alpha/pci/irongate_pci.c irongate 260 261device lca: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 262attach lca at mainbus 263file arch/alpha/pci/lca.c lca 264file arch/alpha/pci/lca_bus_io.c lca 265file arch/alpha/pci/lca_bus_mem.c lca 266file arch/alpha/pci/lca_dma.c lca 267file arch/alpha/pci/lca_pci.c lca 268 269device mcpcia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 270attach mcpcia at mcbus 271file arch/alpha/pci/mcpcia.c mcpcia 272file arch/alpha/pci/mcpcia_bus_io.c mcpcia 273file arch/alpha/pci/mcpcia_bus_mem.c mcpcia 274file arch/alpha/pci/mcpcia_dma.c mcpcia 275file arch/alpha/pci/mcpcia_pci.c mcpcia 276 277device tsc { } 278attach tsc at mainbus 279file arch/alpha/pci/tsc.c dec_6600 280 281device tsp: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 282attach tsp at tsc 283file arch/alpha/pci/tsp_dma.c tsp 284file arch/alpha/pci/tsp_pci.c tsp 285file arch/alpha/pci/tsp_bus_io.c tsp 286file arch/alpha/pci/tsp_bus_mem.c tsp 287 288device tsciic: i2cbus, i2c_bitbang 289attach tsciic at tsc 290file arch/alpha/pci/tsciic.c tsciic needs-flag 291 292device ttwoga { hose = -1 } 293attach ttwoga at mainbus 294# identical to pcibus 295define sableiobus {[bus = -1]} 296device ttwopci: pcibus, sableiobus, alpha_sgmap, alpha_pci_sgmap_pte64 297attach ttwopci at ttwoga 298file arch/alpha/pci/ttwoga.c ttwoga 299file arch/alpha/pci/ttwoga_bus_io.c ttwoga 300file arch/alpha/pci/ttwoga_bus_mem.c ttwoga 301file arch/alpha/pci/ttwoga_dma.c ttwoga 302file arch/alpha/pci/ttwoga_pci.c ttwoga 303 304# 305# Sable STDIO support 306# 307device sableio { port = -1 } 308attach sableio at sableiobus 309file arch/alpha/sableio/sableio.c sableio 310 311attach com at sableio with com_sableio 312file arch/alpha/sableio/com_sableio.c com_sableio 313 314attach lpt at sableio with lpt_sableio 315file arch/alpha/sableio/lpt_sableio.c lpt_sableio 316 317attach pckbc at sableio with pckbc_sableio 318file arch/alpha/sableio/pckbc_sableio.c pckbc_sableio 319 320attach fdc at sableio with fdc_sableio 321file arch/alpha/sableio/fdc_sableio.c fdc_sableio 322 323# CPU support files 324file arch/alpha/pci/pci_2100_a50.c dec_2100_a50 325file arch/alpha/pci/pci_2100_a500.c dec_2100_a500 | dec_2100a_a500 326file arch/alpha/pci/pci_up1000.c api_up1000 327file arch/alpha/pci/pci_alphabook1.c dec_alphabook1 328file arch/alpha/pci/pci_axppci_33.c dec_axppci_33 329file arch/alpha/pci/pci_eb164.c dec_eb164 330file arch/alpha/pci/pci_eb164_intr.s dec_eb164 331file arch/alpha/pci/pci_eb64plus.c dec_eb64plus 332file arch/alpha/pci/pci_eb64plus_intr.s dec_eb64plus 333file arch/alpha/pci/pci_eb66.c dec_eb66 334file arch/alpha/pci/pci_eb66_intr.s dec_eb66 335file arch/alpha/pci/pci_kn20aa.c dec_kn20aa 336file arch/alpha/pci/pci_kn8ae.c dec_kn8ae 337file arch/alpha/pci/pci_kn300.c dec_kn300 338file arch/alpha/pci/pci_550.c dec_550 339file arch/alpha/pci/pci_1000a.c dec_1000a 340file arch/alpha/pci/pci_1000.c dec_1000 341file arch/alpha/pci/pci_6600.c dec_6600 342 343 344# 345# PCI Bus devices 346# 347 348file arch/alpha/pci/pci_machdep.c pci 349file arch/alpha/pci/agp_machdep.c agp 350 351device sio: isabus, alpha_shared_intr, cy82c693 352attach sio at pci 353device pceb: isabus, eisabus, cy82c693, alpha_shared_intr 354attach pceb at pci 355file arch/alpha/pci/sio.c sio | pceb needs-flag 356file arch/alpha/pci/sio_pic.c sio | pceb 357 358# 359# Devices that can live on multiple busses 360# 361 362device mcclock: mc146818 363attach mcclock at ioasic with mcclock_ioasic 364attach mcclock at isa with mcclock_isa 365attach mcclock at gbus with mcclock_gbus 366attach mcclock at jensenio with mcclock_jensenio 367file arch/alpha/alpha/mcclock.c mcclock 368file arch/alpha/tc/mcclock_ioasic.c mcclock_ioasic 369file arch/alpha/isa/mcclock_isa.c mcclock_isa 370file arch/alpha/gbus/mcclock_gbus.c mcclock_gbus 371file arch/alpha/jensenio/mcclock_jensenio.c mcclock_jensenio 372 373 374# 375# Standard files 376# 377file arch/alpha/alpha/autoconf.c 378file arch/alpha/alpha/clock.c 379file arch/alpha/alpha/core_machdep.c coredump 380file arch/alpha/alpha/cpuconf.c 381file arch/alpha/alpha/interrupt.c 382file arch/alpha/alpha/ipifuncs.c multiprocessor 383file arch/alpha/alpha/kobj_machdep.c modular 384file arch/alpha/alpha/machdep.c 385file arch/alpha/alpha/mainbus.c 386file arch/alpha/alpha/patch.c 387file arch/alpha/alpha/pmap.c 388file arch/alpha/alpha/process_machdep.c 389file arch/alpha/alpha/procfs_machdep.c procfs 390file arch/alpha/alpha/prom.c 391file arch/alpha/alpha/sys_machdep.c 392file arch/alpha/alpha/syscall.c 393file arch/alpha/alpha/trap.c 394file arch/alpha/alpha/fp_complete.c 395file arch/alpha/alpha/vm_machdep.c 396file arch/alpha/alpha/disksubr.c 397file arch/alpha/common/bus_dma.c 398file arch/alpha/common/comlogout.c 399file dev/cons.c 400file kern/kern_cctr.c 401 402file dev/bus_dma/bus_dmamem_common.c 403 404# PROM console support (for ports that don't have native console support) 405file arch/alpha/alpha/promcons.c 406 407# CPU support 408file arch/alpha/alpha/dec_2000_300.c dec_2000_300 409file arch/alpha/alpha/dec_2100_a50.c dec_2100_a50 410file arch/alpha/alpha/dec_2100_a500.c dec_2100_a500 | dec_2100a_a500 411file arch/alpha/alpha/dec_3000_300.c dec_3000_300 412file arch/alpha/alpha/dec_3000_500.c dec_3000_500 413file arch/alpha/alpha/dec_550.c dec_550 414file arch/alpha/alpha/dec_alphabook1.c dec_alphabook1 415file arch/alpha/alpha/dec_axppci_33.c dec_axppci_33 416file arch/alpha/alpha/dec_eb164.c dec_eb164 417file arch/alpha/alpha/dec_eb64plus.c dec_eb64plus 418file arch/alpha/alpha/dec_eb66.c dec_eb66 419file arch/alpha/alpha/dec_kn20aa.c dec_kn20aa 420file arch/alpha/alpha/dec_kn7aa.c dec_kn7aa 421file arch/alpha/alpha/dec_kn8ae.c dec_kn8ae 422file arch/alpha/alpha/dec_kn300.c dec_kn300 423file arch/alpha/alpha/api_up1000.c api_up1000 424file arch/alpha/alpha/dec_1000a.c dec_1000 | dec_1000a 425file arch/alpha/alpha/dec_6600.c dec_6600 426 427# Kernel debugger support 428file arch/alpha/alpha/db_disasm.c ddb 429file arch/alpha/alpha/db_interface.c ddb 430file arch/alpha/alpha/db_trace.c ddb 431 432file arch/alpha/alpha/kgdb_machdep.c kgdb 433 434# Binary compatibility with previous NetBSD releases (COMPAT_XX) 435file arch/alpha/alpha/compat_13_machdep.c compat_13 436file arch/alpha/alpha/compat_16_machdep.c compat_16 437 438# Linux Binary Compatibility (COMPAT_LINUX) 439include "compat/linux/files.linux" 440include "compat/linux/arch/alpha/files.linux_alpha" 441file arch/alpha/alpha/linux_sigcode.s compat_linux 442file arch/alpha/alpha/linux_syscall.c compat_linux 443file arch/alpha/alpha/linux_trap.c compat_linux 444 445# Lock stubs 446file arch/alpha/alpha/lock_stubs.s 447 448# OSS audio driver compatibility 449include "compat/ossaudio/files.ossaudio" 450 451# XXXX pcic here because it needs to be late. The catch: pcic needs 452# to be late, so devices which attach to it are attached late. But it 453# needs to be before its isa and pci attachments. This answer is 454# non-optimal, but I don't have a better answer right now. 455 456# PCIC pcmcia controller 457# XXX this needs to be done very late, so it's done here. This feels 458# like a kludge, but it might be for the best. 459 460defparam PCIC_ISA_ALLOC_IOBASE 461defparam PCIC_ISA_ALLOC_IOSIZE 462defparam PCIC_ISA_INTR_ALLOC_MASK 463 464device pcic: pcmciabus 465file dev/ic/i82365.c pcic 466 467# PCIC pcmcia controller on ISA bus. 468attach pcic at isa with pcic_isa 469file dev/isa/i82365_isa.c pcic_isa 470 471# PCIC pcmcia controller on PCI bus. 472attach pcic at pci with pcic_pci 473file dev/pci/i82365_pci.c pcic_pci 474 475# PCIC pcmcia controller on PnP board 476attach pcic at isapnp with pcic_isapnp 477file dev/isapnp/i82365_isapnp.c pcic_isapnp 478 479# Code common to ISA and ISAPnP attachments 480file dev/isa/i82365_isasubr.c pcic_isa | pcic_isapnp | pcic_pci 481 482 483# this wants to be probed as late as possible. 484# 485# Machine-independent PCMCIA drivers 486# 487include "dev/pcmcia/files.pcmcia" 488# 489# Machine-independent USB device support 490# 491include "dev/usb/files.usb" 492# 493# Machine-independent Bluetooth support 494# 495include "dev/bluetooth/files.bluetooth" 496# 497# Machine-independent IEEE 1394 device support 498# 499include "dev/ieee1394/files.ieee1394" 500 501include "arch/alpha/conf/majors.alpha" 502