files.xen revision 1.179
1# $NetBSD: files.xen,v 1.179 2019/09/07 18:56:01 maxv Exp $ 2# NetBSD: files.x86,v 1.10 2003/10/08 17:30:00 bouyer Exp 3# NetBSD: files.i386,v 1.254 2004/03/25 23:32:10 jmc Exp 4 5ifdef i386 6maxpartitions 8 7else 8maxpartitions 16 9endif 10 11maxusers 2 16 128 12 13defparam opt_kernbase.h KERNBASE 14 15# options for MP configuration through the MP spec 16defflag opt_mpbios.h MPBIOS MPVERBOSE MPDEBUG MPBIOS_SCANPCI 17 18# Interrupt debug 19defflag opt_intrdebug.h INTRDEBUG 20 21# delay before cpu_reset() for reboot. 22defparam CPURESET_DELAY 23 24# splraise()/spllower() debug 25defflag opt_spldebug.h SPLDEBUG 26 27# Beep on halt 28defflag opt_beep.h BEEP_ONHALT 29defparam opt_beep.h BEEP_ONHALT_COUNT=3 30defparam opt_beep.h BEEP_ONHALT_PITCH=1500 31defparam opt_beep.h BEEP_ONHALT_PERIOD=250 32 33# PCI fixup options 34defflag opt_pcifixup.h PCI_ADDR_FIXUP PCI_BUS_FIXUP 35 PCI_INTR_FIXUP PCI_INTR_FIXUP_FORCE 36 37defparam PCI_CONF_MODE 38 39file arch/xen/x86/autoconf.c xenpv 40ifdef i386 41file arch/i386/i386/autoconf.c xenpvhvm 42file arch/i386/i386/aout_machdep.c exec_aout 43file arch/i386/i386/i386func.S machdep & xenpvhvm 44file arch/i386/i386/busfunc.S 45file arch/i386/i386/cpufunc.S 46file arch/i386/i386/cpu_in_cksum.S (inet | inet6) & cpu_in_cksum 47file arch/i386/i386/db_disasm.c ddb 48file arch/i386/i386/db_interface.c ddb 49file arch/i386/i386/db_machdep.c ddb 50file arch/i386/i386/dumpsys.c 51file arch/i386/i386/gdt.c 52file arch/i386/i386/kobj_machdep.c modular 53file arch/i386/i386/machdep.c 54file arch/i386/i386/longrun.c 55file arch/i386/i386/mtrr_k6.c mtrr 56file arch/i386/i386/process_machdep.c 57file arch/i386/i386/trap.c 58file arch/i386/i386/lock_stubs.S 59 60file crypto/des/arch/i386/des_enc.S des 61file crypto/des/arch/i386/des_cbc.S des 62 63file crypto/blowfish/arch/i386/bf_enc.S blowfish 64file crypto/blowfish/arch/i386/bf_cbc.S blowfish 65 66elifdef amd64 67file arch/amd64/amd64/autoconf.c xenpvhvm 68file arch/amd64/amd64/busfunc.S 69file arch/amd64/amd64/cpufunc.S 70file arch/amd64/amd64/cpu_in_cksum.S (inet | inet6) & cpu_in_cksum 71file arch/amd64/amd64/db_disasm.c ddb 72file arch/amd64/amd64/db_interface.c ddb 73file arch/amd64/amd64/db_machdep.c ddb 74file arch/amd64/amd64/kobj_machdep.c modular 75file arch/amd64/amd64/gdt.c 76file arch/amd64/amd64/machdep.c 77file arch/amd64/amd64/process_machdep.c 78file arch/amd64/amd64/trap.c 79file arch/amd64/amd64/lock_stubs.S 80endif 81 82file kern/subr_disk_mbr.c disk 83file uvm/pmap/pmap_pvt.c 84file arch/x86/x86/db_memrw.c ddb | kgdb 85file arch/x86/x86/db_trace.c ddb 86file arch/x86/x86/efi.c machdep 87file arch/x86/x86/errata.c machdep 88file arch/x86/x86/fpu.c 89file arch/x86/x86/dbregs.c 90file arch/xen/x86/hypervisor_machdep.c 91file arch/x86/x86/kgdb_machdep.c kgdb 92file arch/x86/x86/mtrr_i686.c mtrr & (dom0ops | xenpvhvm) 93file arch/x86/x86/syscall.c 94file arch/xen/x86/x86_xpmap.c xenpv 95file arch/xen/x86/xen_pmap.c xenpv 96file arch/xen/x86/xen_intr.c 97file arch/xen/x86/xenfunc.c xenpv 98 99file arch/x86/x86/cpu_ucode.c dom0ops & cpu_ucode needs-flag 100file arch/x86/x86/cpu_ucode_amd.c dom0ops & cpu_ucode needs-flag 101file arch/x86/x86/cpu_ucode_intel.c dom0ops & cpu_ucode needs-flag 102file arch/x86/x86/compat_60_cpu_ucode.c compat_60 & dom0ops & cpu_ucode 103 104 105file arch/xen/xen/xen_machdep.c 106 107file arch/xen/xen/clock.c xenpv 108file arch/x86/isa/clock.c xenpvhvm 109file arch/x86/isa/rtc.c dom0ops | xenpvhvm 110file arch/xen/xen/evtchn.c 111 112file arch/xen/xen/xengnt.c 113 114file arch/x86/x86/cpu_rng.c 115 116file dev/cons.c 117 118 119# 120# Stack-less Just-In-Time compiler 121# 122 123include "external/bsd/sljit/conf/files.sljit" 124 125# 126# Machine-independent SCSI drivers 127# 128 129include "dev/scsipi/files.scsipi" 130 131# 132# Machine-independent ATA drivers 133# 134 135include "dev/ata/files.ata" 136 137# Memory Disk for install floppy 138file dev/md_root.c memory_disk_hooks 139 140file arch/x86/x86/bus_dma.c machdep 141file arch/x86/x86/core_machdep.c coredump 142file arch/xen/x86/xen_bus_dma.c machdep & xenpv 143file arch/x86/x86/bus_space.c machdep 144file arch/xen/x86/consinit.c machdep & xenpv 145file arch/x86/x86/consinit.c machdep & xenpvhvm 146file arch/x86/x86/identcpu.c machdep 147file arch/xen/x86/pintr.c machdep & dom0ops & xenpv 148file arch/xen/x86/xen_ipi.c multiprocessor & xenpv 149file arch/x86/x86/idt.c machdep 150file arch/x86/x86/intr.c machdep & xenpvhvm 151file arch/x86/x86/ipi.c xenpvhvm 152file arch/x86/x86/pmap.c machdep 153file arch/x86/x86/x86_tlb.c machdep 154file arch/x86/x86/procfs_machdep.c procfs 155file arch/x86/x86/sys_machdep.c machdep 156file arch/x86/x86/tsc.c machdep 157file arch/x86/x86/vm_machdep.c machdep 158file arch/x86/x86/x86_autoconf.c machdep & xenpvhvm 159file arch/x86/x86/x86_machdep.c machdep 160file arch/x86/x86/cpu_topology.c machdep 161file arch/x86/x86/platform.c machdep 162 163include "arch/xen/conf/files.compat" 164 165# BIOS32 routines 166define bios32 167file arch/x86/x86/bios32.c bios32 needs-flag 168 169# xen specific mainbus attributes 170define cpubus { [apid = -1] } 171define cpufeaturebus {} 172define ioapicbus { [apid = -1] } 173define apmbus {} 174define pnpbiosbus {} 175define hypervisorbus {} 176define xendevbus {} 177 178# 179# System bus types 180# 181 182device mainbus: isabus, pcibus, cpubus, ioapicbus, hypervisorbus, bios32, ipmibus, acpibus 183attach mainbus at root 184file arch/xen/x86/xen_mainbus.c mainbus 185ifdef amd64 186file arch/amd64/amd64/amd64_mainbus.c mainbus & xenpvhvm 187elifdef i386 188file arch/i386/i386/i386_mainbus.c mainbus & xenpvhvm 189file dev/eisa/eisabusprint.c xenpvhvm 190endif 191file arch/x86/x86/mainbus.c mainbus 192 193# Xen hypervisor 194device hypervisor { [apid = -1]}: isabus, pcibus, sysmon_power, xendevbus, acpibus 195attach hypervisor at hypervisorbus 196file arch/xen/xen/hypervisor.c hypervisor needs-flag 197file arch/xen/xen/shutdown_xenbus.c hypervisor 198 199# Xenbus 200device xenbus {[id = -1]} 201attach xenbus at xendevbus 202file arch/xen/xenbus/xenbus_client.c xenbus needs-flag 203file arch/xen/xenbus/xenbus_comms.c xenbus needs-flag 204file arch/xen/xenbus/xenbus_dev.c xenbus needs-flag 205file arch/xen/xenbus/xenbus_probe.c xenbus needs-flag 206file arch/xen/xenbus/xenbus_xs.c xenbus needs-flag 207 208# Xen console support 209device xencons: tty 210attach xencons at xendevbus 211file arch/xen/xen/xencons.c xencons needs-flag 212 213# Xen event peudo-device 214defpseudo xenevt 215defpseudo xvif 216defpseudo xbdback 217 218# Xen Network driver 219device xennet: arp, ether, ifnet 220attach xennet at xenbus 221file arch/xen/xen/if_xennet_xenbus.c xennet needs-flag 222 223# Xen Block device driver and wd/sd/cd identities 224device xbd: disk 225attach xbd at xenbus 226file arch/xen/xen/xbd_xenbus.c xbd 227 228# PCI frontend 229device xpci: pcibus 230attach xpci at xenbus with xpci_xenbus 231file arch/xen/xen/xpci_xenbus.c xpci_xenbus 232 233# Xen Balloon driver 234device balloon 235attach balloon at xenbus 236file arch/xen/xen/balloon.c balloon 237 238# Non-Xen specific devices and options 239 240include "dev/pckbport/files.pckbport" 241 242# 243# Machine-independent PCI devices 244# 245include "dev/i2o/files.i2o" 246include "dev/pci/files.pci" 247include "dev/pci/files.agp" 248file arch/x86/pci/pciide_machdep.c pciide_common 249 250device pciback {unit = -1} 251attach pciback at pci 252file arch/xen/xen/pciback.c pciback 253 254 255# x86 specific PCI hardware 256include "arch/x86/pci/files.pci" 257 258# 259# Machine-independent ISA devices 260# 261include "dev/isa/files.isa" 262 263include "dev/usb/files.usb" 264 265include "dev/ieee1394/files.ieee1394" 266 267device fdc {drive = -1} #XXX 268 269include "dev/apm/files.apm" 270 271include "dev/acpi/files.acpi" 272file arch/xen/xen/xen_acpi_machdep.c acpi & xenpv 273file arch/x86/x86/mpacpi.c acpi 274file arch/x86/x86/i8259.c xenpvhvm | dom0ops 275 276# Stubs for x86 routines not included in the system 277file arch/x86/x86/x86_stub.c 278 279# MP configuration using Intel SMP specification 1.4 280file arch/x86/x86/mpbios.c mpbios 281 282# MP configuration using either ACPI or Intel SMP specification 1.4 283file arch/x86/x86/mp.c acpi | mpbios 284 285file arch/x86/pci/pci_bus_fixup.c pci_bus_fixup 286file arch/x86/pci/pci_addr_fixup.c pci_addr_fixup 287 288file arch/x86/x86/apic.c ioapic 289file arch/x86/x86/nmi.c 290 291file arch/x86/acpi/acpi_machdep.c acpi 292file arch/x86/acpi/acpi_pdc.c acpi 293 294device ioapic 295attach ioapic at ioapicbus 296file arch/x86/x86/ioapic.c ioapic needs-flag 297 298#IPMI device 299file arch/x86/x86/x86_ipmi.c ipmi needs-flag 300 301# CPUs 302# 303device cpu: cpufeaturebus 304attach cpu at cpubus 305 306device vcpu 307attach vcpu at xendevbus 308file arch/xen/x86/cpu.c xenpv & vcpu 309file arch/x86/x86/cpu.c xenpvhvm 310 311# CPU features 312# 313device est 314attach est at cpufeaturebus 315file arch/x86/x86/est.c est 316file arch/x86/x86/intel_busclock.c est 317 318device powernow 319attach powernow at cpufeaturebus 320file arch/x86/x86/powernow.c powernow 321 322# 323# Compatibility modules 324# 325 326ifdef i386 327 328# Binary compatibility with previous NetBSD releases (COMPAT_XX) 329file arch/i386/i386/compat_13_machdep.c compat_13 330file arch/i386/i386/compat_16_machdep.c compat_16 331 332# Linux binary compatibility (COMPAT_LINUX) 333include "compat/linux/files.linux" 334include "compat/linux/arch/i386/files.linux_i386" 335file arch/i386/i386/linux_sigcode.S compat_linux 336file arch/i386/i386/linux_syscall.c compat_linux 337file arch/x86/x86/linux_trap.c compat_linux 338 339# FreeBSD binary compatibility (COMPAT_FREEBSD) 340include "compat/freebsd/files.freebsd" 341 342elifdef amd64 343 344# Binary compatibility with previous NetBSD releases (COMPAT_XX) 345file arch/amd64/amd64/compat_16_machdep.c compat_16 346 347# NetBSD/i386 32-bit binary compatibility (COMPAT_NETBSD32) 348include "compat/netbsd32/files.netbsd32" 349file arch/amd64/amd64/netbsd32_machdep.c compat_netbsd32 350file arch/amd64/amd64/netbsd32_machdep_13.c compat_netbsd32 & compat_13 351file arch/amd64/amd64/netbsd32_machdep_16.c compat_netbsd32 & compat_16 352file arch/amd64/amd64/netbsd32_sigcode.S compat_netbsd32 & compat_16 353file arch/amd64/amd64/netbsd32_syscall.c compat_netbsd32 354 355# Linux compatibility (COMPAT_LINUX) 356include "compat/linux/files.linux" 357include "compat/linux/arch/amd64/files.linux_amd64" 358file arch/amd64/amd64/linux_sigcode.S compat_linux 359file arch/amd64/amd64/linux_syscall.c compat_linux 360file arch/x86/x86/linux_trap.c compat_linux 361# Linux 32 bit compatibility (COMPAT_LINUX32) 362include "compat/linux32/files.linux32" 363include "compat/linux32/arch/amd64/files.linux32_amd64" 364file arch/amd64/amd64/linux32_sigcode.S compat_linux32 365file arch/amd64/amd64/linux32_syscall.c compat_linux32 366endif 367 368# OSS audio driver compatibility 369include "compat/ossaudio/files.ossaudio" 370 371# Bluetooth 372include "dev/bluetooth/files.bluetooth" 373 374include "dev/sdmmc/files.sdmmc" 375 376# 377# CARDBUS 378# 379include "dev/cardbus/files.cardbus" 380ifdef i386 381file arch/i386/i386/rbus_machdep.c cardbus 382elifdef amd64 383file arch/amd64/amd64/rbus_machdep.c cardbus 384endif 385 386# this wants to be probed as late as possible. 387# 388# Machine-independent PCMCIA drivers 389# 390include "dev/pcmcia/files.pcmcia" 391 392# Domain-0 operations 393defflag opt_xen.h DOM0OPS 394file arch/xen/xen/privcmd.c dom0ops 395file arch/xen/x86/xen_shm_machdep.c dom0ops 396file arch/x86/pci/pci_machdep.c (xenpvhvm | hypervisor) & pci & ( dom0ops | xenpvhvm ) 397file arch/x86/pci/pci_intr_machdep.c (xenpvhvm | hypervisor) & pci 398file arch/x86/pci/pci_msi_machdep.c hypervisor & xenpvhvm & pci & ! no_pci_msi_msix 399file arch/x86/pci/msipic.c hypervisor & xenpvhvm & pci & ! no_pci_msi_msix 400file arch/x86/isa/isa_machdep.c (xenpvhvm | hypervisor) & ( dom0ops | xenpvhvm ) 401file arch/xen/xen/xenevt.c xenevt & (dom0ops | xenpvhvm) 402file arch/xen/xen/xennetback_xenbus.c xvif 403file arch/xen/xen/xennet_checksum.c xvif | xennet 404file arch/xen/xen/xbdback_xenbus.c xbdback 405 406ifdef i386 407include "arch/i386/conf/majors.i386" 408elifdef amd64 409include "arch/amd64/conf/majors.amd64" 410endif 411