1# $NetBSD: files.alpha,v 1.156 2002/05/27 23:41:33 lukem 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_KN8AE # KN8AE: AlphaServer 8200 and 8400 23defflag DEC_KN300 # KN300: AlphaServer 4X00 24defflag AVALON_A12 # Avalon: A12T1, A12M Parallel Supercomputer 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# XXX Temporary, until integration is finished. 37defflag NEW_SCC_DRIVER 38 39# realtime clock compatible to OSF/1 40defflag CLOCK_COMPAT_OSF1 41 42# this loses, but there's no way to define attributes which have attributes 43define alpha_shared_intr 44file arch/alpha/common/shared_intr.c alpha_shared_intr | dec_eb164 | 45 dec_eb64plus | dec_kn20aa | dec_kn8ae | 46 dec_kn300 | dec_550 | dec_1000 | 47 dec_1000a | dec_eb66 | dec_6600 48define alpha_sgmap 49file arch/alpha/common/sgmap_common.c alpha_sgmap | dec_3000_500 50 51# 52# Bus-independent devices 53# 54 55device mainbus { } # no locators (yet?) 56attach mainbus at root 57 58device cpu { } # not really optional 59attach cpu at mainbus 60file arch/alpha/alpha/cpu.c cpu 61 62# 63# Machine-independent I2O drivers. 64# 65 66include "dev/i2o/files.i2o" 67 68# 69# Machine-independent SCSI drivers 70# 71 72include "dev/scsipi/files.scsipi" 73major { cd = 3 } 74major { sd = 8 } 75 76# 77# Machine-independent ATA drivers 78# 79 80include "dev/ata/files.ata" 81major { wd = 4 } 82 83# Memory Disk 84file dev/md_root.c memory_disk_hooks 85major { md = 6 } 86 87# RAIDframe 88major { raid = 16 } 89 90# Logical disks 91major { ld = 17 } 92 93# Raster operations 94include "dev/rasops/files.rasops" 95include "dev/wsfont/files.wsfont" 96 97# 98# "Workstation Console" glue. 99# 100include "dev/wscons/files.wscons" 101 102 103# 104# TurboLaser Bus Support 105# 106 107device tlsb { node = -1, offset = -1 } 108attach tlsb at mainbus 109file arch/alpha/tlsb/tlsb.c tlsb & dec_kn8ae 110 111device kft { } 112attach kft at tlsb 113file arch/alpha/tlsb/kftxx.c kft 114 115device tlsbmem 116attach tlsbmem at tlsb 117file arch/alpha/tlsb/tlsbmem.c tlsbmem 118 119device gbus { offset = -1 } 120attach gbus at tlsb 121file arch/alpha/tlsb/gbus.c gbus 122 123# 124# MCBUS support 125# 126 127device mcbus { mid = -1 } 128attach mcbus at mainbus 129file arch/alpha/mcbus/mcbus.c mcbus & dec_kn300 130 131device mcmem 132attach mcmem at mcbus 133file arch/alpha/mcbus/mcmem.c mcmem 134 135# 136# Bus-independent support for DEC devices 137# 138include "dev/dec/files.dec" 139 140# 141# TURBOchannel Devices 142# 143include "dev/tc/files.tc" 144 145# TC attachment is MD 146attach tc at tcbus 147 148device tcasic: tcbus 149attach tcasic at mainbus 150file arch/alpha/tc/tcasic.c tcasic 151file arch/alpha/tc/tc_bus_mem.c tcasic 152file arch/alpha/tc/tc_dma.c tcasic 153file arch/alpha/tc/tc_dma_3000_300.c tcasic & dec_3000_300 154file arch/alpha/tc/tc_dma_3000_500.c tcasic & dec_3000_500 155file arch/alpha/tc/tc_sgmap.c tcasic & dec_3000_500 156file arch/alpha/tc/tc_3000_500.c tcasic & dec_3000_500 157file arch/alpha/tc/tc_3000_300.c tcasic & dec_3000_300 158 159# the TURBOchannel IOCTL ASIC 160# IOASIC device and attachment defined in sys/dev/tc/files.tc 161file arch/alpha/tc/ioasic.c ioasic 162 163# PMAG-B CX 164device cfb: wsemuldisplaydev, wsrasteremulops 165attach cfb at tc 166file dev/tc/cfb.c cfb needs-flag 167 168# PMAGB-B HX or CXT 169device sfb: wsemuldisplaydev, rasops8 170attach sfb at tc 171file dev/tc/sfb.c sfb needs-flag 172 173# PMAG-A MX 174device mfb: wsemuldisplaydev, wsrasteremulops 175attach mfb at tc 176file dev/tc/mfb.c mfb needs-flag 177 178# PMAG-RO/JA TX 179device tfb: wsemuldisplaydev, wsrasteremulops 180attach tfb at tc 181file dev/tc/tfb.c tfb needs-flag 182 183# PMAGD HX+ 184device sfbp: wsemuldisplaydev, rasops32 185attach sfbp at tc 186file dev/tc/sfbplus.c sfbp needs-flag 187 188# XXX: STIC (stamp interface chip) for PX and PXG 189define stic 190file dev/tc/stic.c stic needs-flag 191 192# XXX: PX PMAG-C 193device px: wsemuldisplaydev, stic 194attach px at tc 195file dev/tc/px.c px needs-flag 196 197# XXX: PXG PMAG-D, PMAG-E, PMAG-F 198device pxg: wsemuldisplaydev, stic 199attach pxg at tc 200file dev/tc/pxg.c pxg needs-flag 201 202# 8530 UARTs 203device scc: tty 204attach scc at ioasic 205file arch/alpha/tc/scc.c scc needs-count 206 207# 8530 UARTs using the MI 8530 driver 208device zsc { channel = -1 } 209attach zsc at ioasic with zsc_ioasic 210file dev/tc/zs_ioasic.c zsc_ioasic needs-flag 211file dev/ic/z8530sc.c zsc 212 213device zstty: tty 214attach zstty at zsc 215file dev/ic/z8530tty.c zstty needs-flag 216 217device vsms: wsmousedev 218attach vsms at zsc with zsms 219file dev/tc/zsms.c zsms 220 221device lkkbd: wskbddev, lkkbdmap 222attach lkkbd at zsc with zskbd 223file dev/tc/zskbd.c zskbd needs-flag 224 225# TC and baseboard ioasic Lance ethernet are in files.tc 226 227# 228# ISA Bus support 229# 230 231include "dev/pci/files.pci" # XXX some ISA devs are 'at pci' too. 232include "dev/pci/files.agp" 233include "dev/isa/files.isa" 234 235# 236# ISA Bus devices 237# 238 239file arch/alpha/isa/isa_machdep.c isa 240 241define isadma_bounce 242file arch/alpha/isa/isadma_bounce.c isadma_bounce 243 244include "dev/pckbc/files.pckbc" 245 246# ISA speaker generates keyboard beep 247device isabeep 248attach isabeep at pcppi 249 250# Floppy disk controller 251device fdc { drive = -1 }: isadma 252file dev/isa/fd.c fdc needs-flag 253 254attach fdc at isa with fdc_isa 255file dev/isa/fdc_isa.c fdc_isa 256 257device fd: disk 258attach fd at fdc 259major { fd = 0 } 260 261# ISA Plug 'n Play devices 262file arch/alpha/isa/isapnp_machdep.c isapnp 263 264# 265# EISA Bus support 266# 267 268include "dev/eisa/files.eisa" 269 270file arch/alpha/eisa/eisa_machdep.c eisa 271 272device jensenio {[port = -1]}: eisabus, isabus, isadma_bounce 273attach jensenio at mainbus 274file arch/alpha/jensenio/jensenio.c jensenio 275file arch/alpha/jensenio/jensenio_bus_intio.c jensenio 276file arch/alpha/jensenio/jensenio_bus_io.c jensenio 277file arch/alpha/jensenio/jensenio_bus_mem.c jensenio 278file arch/alpha/jensenio/jensenio_dma.c jensenio 279file arch/alpha/jensenio/jensenio_intr.c jensenio 280 281attach com at jensenio with com_jensenio 282file arch/alpha/jensenio/com_jensenio.c com_jensenio 283 284attach lpt at jensenio with lpt_jensenio 285file arch/alpha/jensenio/lpt_jensenio.c lpt_jensenio 286 287attach pckbc at jensenio with pckbc_jensenio 288file arch/alpha/jensenio/pckbc_jensenio.c pckbc_jensenio 289 290# 291# PCI Bus support 292# 293 294# include "dev/pci/files.pci" XXX SEE ABOVE 295 296file arch/alpha/pci/pciide_machdep.c pciide 297 298define alpha_pci_sgmap_pte32 299file arch/alpha/pci/pci_sgmap_pte32.c alpha_pci_sgmap_pte32 300 301define alpha_pci_sgmap_pte64 302file arch/alpha/pci/pci_sgmap_pte64.c alpha_pci_sgmap_pte64 303 304device apecs: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 305attach apecs at mainbus 306file arch/alpha/pci/apecs.c apecs 307file arch/alpha/pci/apecs_bus_io.c apecs 308file arch/alpha/pci/apecs_bus_mem.c apecs 309file arch/alpha/pci/apecs_dma.c apecs 310file arch/alpha/pci/apecs_pci.c apecs 311 312device cia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 313attach cia at mainbus 314file arch/alpha/pci/cia.c cia 315file arch/alpha/pci/cia_dma.c cia 316file arch/alpha/pci/cia_pci.c cia 317file arch/alpha/pci/cia_bwx_bus_io.c cia 318file arch/alpha/pci/cia_bwx_bus_mem.c cia 319file arch/alpha/pci/cia_swiz_bus_io.c cia 320file arch/alpha/pci/cia_swiz_bus_mem.c cia 321 322device a12c { }: pcibus 323attach a12c at mainbus 324file arch/alpha/pci/a12c.c a12c 325file arch/alpha/pci/a12c_bus_mem.c a12c 326file arch/alpha/pci/a12c_dma.c a12c 327file arch/alpha/pci/a12c_pci.c a12c 328 329device dwlpx: pcibus, alpha_sgmap, alpha_pci_sgmap_pte32 330attach dwlpx at kft 331file arch/alpha/pci/dwlpx.c dwlpx 332file arch/alpha/pci/dwlpx_bus_io.c dwlpx 333file arch/alpha/pci/dwlpx_bus_mem.c dwlpx 334file arch/alpha/pci/dwlpx_dma.c dwlpx 335file arch/alpha/pci/dwlpx_pci.c dwlpx 336 337device irongate: pcibus, agpbus, agp_amd, isadma_bounce 338attach irongate at mainbus 339file arch/alpha/pci/irongate.c irongate 340file arch/alpha/pci/irongate_bus_io.c irongate 341file arch/alpha/pci/irongate_bus_mem.c irongate 342file arch/alpha/pci/irongate_dma.c irongate 343file arch/alpha/pci/irongate_pci.c irongate 344 345device lca: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 346attach lca at mainbus 347file arch/alpha/pci/lca.c lca 348file arch/alpha/pci/lca_bus_io.c lca 349file arch/alpha/pci/lca_bus_mem.c lca 350file arch/alpha/pci/lca_dma.c lca 351file arch/alpha/pci/lca_pci.c lca 352 353device mcpcia: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 354attach mcpcia at mcbus 355file arch/alpha/pci/mcpcia.c mcpcia 356file arch/alpha/pci/mcpcia_bus_io.c mcpcia 357file arch/alpha/pci/mcpcia_bus_mem.c mcpcia 358file arch/alpha/pci/mcpcia_dma.c mcpcia 359file arch/alpha/pci/mcpcia_pci.c mcpcia 360 361device tsc { } 362attach tsc at mainbus 363file arch/alpha/pci/tsc.c dec_6600 364 365device tsp: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 366attach tsp at tsc 367file arch/alpha/pci/tsp_dma.c tsp 368file arch/alpha/pci/tsp_pci.c tsp 369file arch/alpha/pci/tsp_bus_io.c tsp 370file arch/alpha/pci/tsp_bus_mem.c tsp 371 372device ttwoga { hose = -1 } 373attach ttwoga at mainbus 374device ttwopci: pcibus, alpha_sgmap, alpha_pci_sgmap_pte64 375attach ttwopci at ttwoga 376file arch/alpha/pci/ttwoga.c ttwoga 377file arch/alpha/pci/ttwoga_bus_io.c ttwoga 378file arch/alpha/pci/ttwoga_bus_mem.c ttwoga 379file arch/alpha/pci/ttwoga_dma.c ttwoga 380file arch/alpha/pci/ttwoga_pci.c ttwoga 381 382# 383# Sable STDIO support 384# 385device sableio { port = -1 } 386attach sableio at pcibus 387file arch/alpha/sableio/sableio.c sableio 388 389attach com at sableio with com_sableio 390file arch/alpha/sableio/com_sableio.c com_sableio 391 392attach lpt at sableio with lpt_sableio 393file arch/alpha/sableio/lpt_sableio.c lpt_sableio 394 395attach pckbc at sableio with pckbc_sableio 396file arch/alpha/sableio/pckbc_sableio.c pckbc_sableio 397 398attach fdc at sableio with fdc_sableio 399file arch/alpha/sableio/fdc_sableio.c fdc_sableio 400 401# CPU support files 402file arch/alpha/alpha/dec_2000_300.c dec_2000_300 403file arch/alpha/pci/pci_2100_a50.c dec_2100_a50 404file arch/alpha/pci/pci_2100_a500.c dec_2100_a500 | dec_2100a_a500 405file arch/alpha/pci/pci_up1000.c api_up1000 406file arch/alpha/pci/pci_a12.c avalon_a12 407file arch/alpha/pci/pci_alphabook1.c dec_alphabook1 408file arch/alpha/pci/pci_axppci_33.c dec_axppci_33 409file arch/alpha/pci/pci_eb164.c dec_eb164 410file arch/alpha/pci/pci_eb164_intr.s dec_eb164 411file arch/alpha/pci/pci_eb64plus.c dec_eb64plus 412file arch/alpha/pci/pci_eb64plus_intr.s dec_eb64plus 413file arch/alpha/pci/pci_eb66.c dec_eb66 414file arch/alpha/pci/pci_eb66_intr.s dec_eb66 415file arch/alpha/pci/pci_kn20aa.c dec_kn20aa 416file arch/alpha/pci/pci_kn8ae.c dec_kn8ae 417file arch/alpha/pci/pci_kn300.c dec_kn300 418file arch/alpha/pci/pci_550.c dec_550 419file arch/alpha/pci/pci_1000a.c dec_1000a 420file arch/alpha/pci/pci_1000.c dec_1000 421file arch/alpha/pci/pci_6600.c dec_6600 422 423 424# 425# PCI Bus devices 426# 427 428file arch/alpha/pci/pci_machdep.c pci 429file arch/alpha/pci/agp_machdep.c agp 430 431device sio: isabus, alpha_shared_intr, cy82c693 432attach sio at pci 433device pceb: isabus, eisabus, cy82c693 434attach pceb at pci 435file arch/alpha/pci/sio.c sio | pceb needs-flag 436file arch/alpha/pci/sio_pic.c sio | pceb 437 438# XXX THE FOLLOWING BLOCK SHOULD GO INTO dev/pci/files.pci, BUT CANNOT 439# XXX BECAUSE NOT 'lpt' IS DEFINED IN files.isa, RATHER THAN files. 440# XXX (when the conf/files and files.isa bogons are fixed, this can 441# XXX be fixed as well.) 442 443attach lpt at puc with lpt_puc 444file dev/pci/lpt_puc.c lpt_puc 445 446 447# 448# A12 if_de hack 449# 450device ade: ether, ifnet, arp 451attach ade at pci 452file arch/alpha/a12/if_ade.c ade 453 454# 455# alpha/a12 platform-specific drivers 456# 457 458# Switch 459 460device xb 461attach xb at a12c 462file arch/alpha/a12/if_xb.c xb 463 464# Console 465 466device a12dc 467attach a12dc at a12c 468file arch/alpha/a12/a12dc.c a12dc needs-flag 469 470# 471# Devices that can live on multiple busses 472# 473 474device mcclock 475attach mcclock at ioasic with mcclock_ioasic 476attach mcclock at isa with mcclock_isa 477attach mcclock at gbus with mcclock_tlsb 478attach mcclock at jensenio with mcclock_jensenio 479file arch/alpha/alpha/mcclock.c mcclock 480file arch/alpha/tc/mcclock_ioasic.c mcclock_ioasic 481file arch/alpha/isa/mcclock_isa.c mcclock_isa 482file arch/alpha/tlsb/mcclock_tlsb.c mcclock_tlsb 483file arch/alpha/jensenio/mcclock_jensenio.c mcclock_jensenio 484 485 486# 487# Standard files 488# 489file arch/alpha/alpha/autoconf.c 490file arch/alpha/alpha/clock.c 491file dev/clock_subr.c 492file arch/alpha/alpha/conf.c 493file arch/alpha/alpha/cpuconf.c 494file arch/alpha/alpha/interrupt.c 495file arch/alpha/alpha/ipifuncs.c multiprocessor 496file arch/alpha/alpha/machdep.c 497file arch/alpha/alpha/mainbus.c 498file arch/alpha/alpha/mem.c 499file arch/alpha/alpha/microtime.c 500file arch/alpha/alpha/pmap.c 501file arch/alpha/alpha/process_machdep.c 502file arch/alpha/alpha/procfs_machdep.c procfs 503file arch/alpha/alpha/prom.c 504file arch/alpha/alpha/sys_machdep.c 505file arch/alpha/alpha/syscall.c 506file arch/alpha/alpha/trap.c 507file arch/alpha/alpha/fp_complete.c 508file arch/alpha/alpha/vm_machdep.c 509file arch/alpha/alpha/disksubr.c 510file arch/alpha/common/bus_dma.c 511file arch/alpha/common/comlogout.c 512file dev/cons.c 513 514# Network protocol checksum routines 515file arch/alpha/alpha/in_cksum.c inet 516file netinet/in4_cksum.c inet 517file netns/ns_cksum.c ns 518 519# PROM console support (for ports that don't have native console support) 520file arch/alpha/alpha/promcons.c 521 522# CPU support 523file arch/alpha/alpha/dec_2100_a50.c dec_2100_a50 524file arch/alpha/alpha/dec_2100_a500.c dec_2100_a500 | dec_2100a_a500 525file arch/alpha/alpha/dec_3000_300.c dec_3000_300 526file arch/alpha/alpha/dec_3000_500.c dec_3000_500 527file arch/alpha/alpha/dec_550.c dec_550 528file arch/alpha/alpha/dec_alphabook1.c dec_alphabook1 529file arch/alpha/alpha/dec_axppci_33.c dec_axppci_33 530file arch/alpha/alpha/dec_eb164.c dec_eb164 531file arch/alpha/alpha/dec_eb64plus.c dec_eb64plus 532file arch/alpha/alpha/dec_eb66.c dec_eb66 533file arch/alpha/alpha/dec_kn20aa.c dec_kn20aa 534file arch/alpha/alpha/dec_kn8ae.c dec_kn8ae 535file arch/alpha/alpha/dec_kn300.c dec_kn300 536file arch/alpha/alpha/api_up1000.c api_up1000 537file arch/alpha/alpha/avalon_a12.c avalon_a12 538file arch/alpha/alpha/dec_1000a.c dec_1000 | dec_1000a 539file arch/alpha/alpha/dec_6600.c dec_6600 540 541# Kernel debugger support 542file arch/alpha/alpha/db_disasm.c ddb 543file arch/alpha/alpha/db_interface.c ddb 544file arch/alpha/alpha/db_trace.c ddb 545 546file arch/alpha/alpha/kgdb_machdep.c kgdb 547 548# Binary compatibility with previous NetBSD releases (COMPAT_XX) 549file arch/alpha/alpha/compat_13_machdep.c compat_13 | compat_osf1 550 551# OSF/1 Binary Compatibility (COMPAT_OSF1) 552include "compat/osf1/files.osf1" 553file arch/alpha/alpha/osf1_sigcode.s compat_osf1 554file arch/alpha/alpha/osf1_syscall.c compat_osf1 555 556# Linux Binary Compatibility (COMPAT_LINUX) 557include "compat/linux/files.linux" 558include "compat/linux/arch/alpha/files.linux_alpha" 559file arch/alpha/alpha/linux_sigcode.s compat_linux 560file arch/alpha/alpha/linux_syscall.c compat_linux 561file arch/alpha/alpha/linux_trap.c compat_linux 562 563# OSS audio driver compatibility 564include "compat/ossaudio/files.ossaudio" 565 566# XXXX pcic here because it needs to be late. The catch: pcic needs 567# to be late, so devices which attach to it are attached late. But it 568# needs to be before its isa and pci attachments. This answer is 569# non-optimal, but I don't have a better answer right now. 570 571# PCIC pcmcia contoller 572# XXX this needs to be done very late, so it's done here. This feels 573# like a kludge, but it might be for the best. 574 575defparam PCIC_ISA_ALLOC_IOBASE 576defparam PCIC_ISA_ALLOC_IOSIZE 577defparam PCIC_ISA_INTR_ALLOC_MASK 578 579device pcic: pcmciabus 580file dev/ic/i82365.c pcic 581 582# PCIC pcmcia controller on ISA bus. 583attach pcic at isa with pcic_isa 584file dev/isa/i82365_isa.c pcic_isa 585 586# PCIC pcmcia controller on PCI bus. 587attach pcic at pci with pcic_pci 588file dev/pci/i82365_pci.c pcic_pci 589 590# PCIC pcmcia controller on PnP board 591attach pcic at isapnp with pcic_isapnp 592file dev/isapnp/i82365_isapnp.c pcic_isapnp 593 594# Code common to ISA and ISAPnP attachments 595file dev/isa/i82365_isasubr.c pcic_isa | pcic_isapnp | pcic_pci 596 597 598# this wants to be probed as late as possible. 599# 600# Machine-independent PCMCIA drivers 601# 602include "dev/pcmcia/files.pcmcia" 603# 604# Machine-independent USB device support 605# 606include "dev/usb/files.usb" 607# 608# Machine-independent IEEE 1394 device support 609# 610include "dev/ieee1394/files.ieee1394" 611