files.xen revision 1.83
1# $NetBSD: files.xen,v 1.83 2008/02/27 04:19:24 dogcow 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 5version 20071109 6 7maxpartitions 8 8 9maxusers 2 16 128 10 11defparam opt_kernbase.h KERNBASE 12 13# options for MP configuration through the MP spec 14defflag opt_mpbios.h MPBIOS MPVERBOSE MPDEBUG MPBIOS_SCANPCI 15 16# delay before cpu_reset() for reboot. 17defparam CPURESET_DELAY 18 19# No unmapped page below kernel stack 20defflag NOREDZONE 21 22# Beep on halt 23defflag opt_beep.h BEEP_ONHALT 24defparam opt_beep.h BEEP_ONHALT_COUNT=3 25defparam opt_beep.h BEEP_ONHALT_PITCH=1500 26defparam opt_beep.h BEEP_ONHALT_PERIOD=250 27 28# PCI fixup options 29defflag opt_pcifixup.h PCI_ADDR_FIXUP PCI_BUS_FIXUP 30 PCI_INTR_FIXUP PCI_INTR_FIXUP_FORCE 31 32defparam PCI_CONF_MODE 33 34file arch/xen/x86/autoconf.c 35ifdef i386 36file arch/i386/i386/busfunc.S 37file arch/i386/i386/cpufunc.S 38file arch/i386/i386/cpu_in_cksum.S (inet | inet6) & cpu_in_cksum 39file arch/i386/i386/db_dbgreg.S ddb | kstack_check_dr0 40file arch/i386/i386/db_disasm.c ddb 41file arch/i386/i386/db_interface.c ddb 42file arch/i386/i386/db_memrw.c ddb | kgdb 43file arch/i386/i386/db_trace.c ddb 44file arch/i386/i386/dumpsys.c 45file arch/i386/i386/gdt.c 46file arch/i386/i386/ipkdb_glue.c ipkdb 47file arch/i386/i386/kgdb_machdep.c kgdb 48file arch/i386/i386/kobj_machdep.c modular 49file arch/i386/i386/machdep.c 50file arch/i386/i386/identcpu.c 51file arch/x86/x86/x86_identcpu.c 52file arch/i386/i386/longrun.c 53file arch/i386/i386/mem.c 54file arch/i386/i386/mtrr_k6.c mtrr 55file arch/x86/x86/pmap.c 56file arch/i386/i386/process_machdep.c 57file arch/i386/i386/procfs_machdep.c procfs 58file arch/i386/i386/syscall.c 59file arch/i386/i386/trap.c 60file arch/i386/i386/vm_machdep.c 61file arch/i386/i386/lock_stubs.S 62 63file arch/i386/i386/mptramp.S multiprocessor 64file arch/i386/i386/ipifuncs.c multiprocessor 65 66file arch/i386/i386/pmc.c perfctrs 67 68file crypto/des/arch/i386/des_enc.S des 69file crypto/des/arch/i386/des_cbc.S des 70 71file crypto/blowfish/arch/i386/bf_enc.S blowfish 72file crypto/blowfish/arch/i386/bf_cbc.S blowfish 73elifdef amd64 74file arch/amd64/amd64/busfunc.S dom0ops 75file arch/amd64/amd64/cpufunc.S 76file arch/amd64/amd64/cpu_in_cksum.S (inet | inet6) & cpu_in_cksum 77file arch/amd64/amd64/db_disasm.c ddb 78file arch/amd64/amd64/db_interface.c ddb 79file arch/amd64/amd64/db_memrw.c ddb | kgdb 80file arch/amd64/amd64/db_trace.c ddb 81file arch/amd64/amd64/kgdb_machdep.c kgdb 82file arch/amd64/amd64/kobj_machdep.c modular 83file arch/amd64/amd64/gdt.c 84file arch/amd64/amd64/machdep.c 85file arch/amd64/amd64/identcpu.c 86file arch/x86/x86/x86_identcpu.c 87file arch/amd64/amd64/mem.c 88file arch/x86/x86/pmap.c 89file arch/amd64/amd64/process_machdep.c 90file arch/amd64/amd64/procfs_machdep.c procfs 91file arch/amd64/amd64/syscall.c 92file arch/amd64/amd64/trap.c 93file arch/amd64/amd64/vm_machdep.c 94file arch/amd64/amd64/fpu.c 95file arch/amd64/amd64/lock_stubs.S 96file arch/amd64/amd64/mptramp.S multiprocessor 97file arch/amd64/amd64/ipifuncs.c multiprocessor 98endif 99 100file kern/subr_disk_mbr.c disk 101file arch/xen/x86/hypervisor_machdep.c 102file arch/xen/x86/idle_machdep.c 103# file arch/x86/x86/mtrr_i686.c mtrr 104file arch/xen/x86/x86_xpmap.c 105file arch/xen/x86/xen_intr.c 106file arch/xen/x86/xenfunc.c 107 108file arch/xen/xen/xen_machdep.c 109file arch/xen/xen/xen_debug.c 110 111file arch/xen/xen/clock.c 112file arch/xen/xen/evtchn.c 113file arch/xen/xen/ctrl_if.c !xen3 114 115file arch/xen/xen/xengnt.c xen3 116 117file dev/cons.c 118 119 120# 121# Machine-independent SCSI drivers 122# 123 124include "dev/scsipi/files.scsipi" 125 126# 127# Machine-independent ATA drivers 128# 129 130include "dev/ata/files.ata" 131 132# Memory Disk for install floppy 133file dev/md_root.c memory_disk_hooks 134 135file arch/x86/x86/bus_dma.c pci 136file arch/xen/x86/xen_bus_dma.c pci 137file arch/x86/x86/bus_space.c pci 138file arch/x86/x86/cacheinfo.c 139file arch/xen/x86/consinit.c 140file arch/xen/x86/intr.c 141file arch/x86/x86/ipi.c multiprocessor 142file arch/x86/x86/sys_machdep.c 143file arch/x86/x86/x86_machdep.c 144 145include "arch/xen/conf/files.compat" 146 147# BIOS32 routines 148define bios32 149ifdef i386 150file arch/i386/i386/bios32.c bios32 needs-flag 151elifdef amd64 152file arch/amd64/amd64/bios32.c bios32 needs-flag 153endif 154 155# xen specific mainbus attributes 156define cpubus { [apid = -1] } 157define ioapicbus { [apid = -1] } 158define apmbus {} 159define pnpbiosbus {} 160define vesabiosbus {} 161define hypervisorbus {} 162define xendevbus {} 163define ipmibus {} 164 165# 166# System bus types 167# 168 169device mainbus: cpubus, ioapicbus, hypervisorbus, bios32, ipmibus 170attach mainbus at root 171file arch/xen/x86/mainbus.c mainbus 172 173# Xen hypervisor 174device hypervisor { [apid = -1]}: isabus, pcibus, sysmon_power, xendevbus, acpibus 175attach hypervisor at hypervisorbus 176file arch/xen/xen/hypervisor.c hypervisor needs-flag 177file arch/xen/xen/shutdown_xenbus.c hypervisor & xen3 178 179# Xenbus (xen3 only) 180device xenbus {[id = -1]} 181attach xenbus at xendevbus 182file arch/xen/xenbus/xenbus_client.c xenbus & xen3 needs-flag 183file arch/xen/xenbus/xenbus_comms.c xenbus & xen3 needs-flag 184file arch/xen/xenbus/xenbus_dev.c xenbus & xen3 & dom0ops needs-flag 185file arch/xen/xenbus/xenbus_probe.c xenbus & xen3 needs-flag 186file arch/xen/xenbus/xenbus_xs.c xenbus & xen3 needs-flag 187 188ifdef i386 189# Numeric Processing Extension; Math Co-processor 190device npx 191file arch/i386/isa/npx.c npx needs-flag 192 193attach npx at xendevbus with npx_hv 194file arch/xen/i386/npx_hv.c npx_hv 195endif 196 197# Xen console support 198device xencons: tty 199attach xencons at xendevbus 200file arch/xen/xen/xencons.c xencons needs-flag 201 202# Xen event peudo-device 203defpseudo xenevt 204defpseudo xvif 205defpseudo xbdback 206 207# Xen Network driver 208device xennet: arp, ether, ifnet 209attach xennet at xendevbus with xennet_hypervisor 210attach xennet at xenbus with xennet_xenbus 211file arch/xen/xen/if_xennet_xenbus.c xennet_xenbus needs-flag 212file arch/xen/xen/if_xennet.c xennet_hypervisor needs-flag 213 214# Xen Block device driver and wd/sd/cd identities 215device xbd: disk 216attach xbd at xendevbus with xbd_hypervisor 217attach xbd at xenbus with xbd_xenbus 218#file arch/xen/xen/xbd_hypervisor.c xbd_hypervisor 219file arch/xen/xen/xbd_xenbus.c xbd_xenbus 220#file arch/xen/xen/xbd.c xbd | xbd_hypervisor | xbd_xenbus needs-flag 221file arch/xen/xen/xbd.c xbd_hypervisor needs-flag 222 223# Non-Xen specific devices and options 224 225include "dev/pckbport/files.pckbport" 226 227# 228# Machine-independent PCI devices 229# 230include "dev/i2o/files.i2o" 231include "dev/pci/files.pci" 232include "dev/pci/files.agp" 233file arch/x86/pci/agp_machdep.c agp 234file arch/xen/xen/pciide_machdep.c pciide_common 235 236# 237# Machine-independent ISA devices 238# 239include "dev/isa/files.isa" 240 241include "dev/usb/files.usb" 242 243include "dev/ieee1394/files.ieee1394" 244 245device fdc {drive = -1} #XXX 246 247include "dev/apm/files.apm" 248 249include "dev/acpi/files.acpi" 250file arch/xen/xen/xen_acpi_machdep.c acpi 251file arch/x86/x86/mpacpi.c acpi 252file arch/x86/x86/acpi_machdep.c acpi 253file arch/x86/x86/i8259.c xen3 254 255# MP configuration using Intel SMP specification 1.4 256file arch/x86/x86/mpbios.c mpbios 257 258ifdef i386 259file arch/i386/pci/pci_bus_fixup.c pci_bus_fixup 260file arch/i386/pci/pci_addr_fixup.c pci_addr_fixup 261endif 262 263file arch/x86/x86/apic.c ioapic 264 265device ioapic 266attach ioapic at ioapicbus 267file arch/x86/x86/ioapic.c ioapic needs-flag 268 269#IPMI device 270device ipmi : sysmon_envsys, sysmon_wdog 271attach ipmi at ipmibus 272file arch/x86/x86/ipmi.c ipmi needs-flag 273 274# PCI-Host bridge chipsets 275device pchb: pcibus, agpbus, agp_ali, agp_amd, agp_i810, agp_intel, agp_sis, 276 agp_via 277attach pchb at pci 278file arch/x86/pci/pchb.c pchb needs-flag 279file arch/x86/pci/pchb_rnd.c pchb & rnd 280 281# PCI-ISA bridges 282device pcib: isabus 283attach pcib at pci 284file arch/xen/xen/pcib.c pcib | ichlpcib 285 286# PCI-LPC bridges 287device ichlpcib: isabus, sysmon_wdog 288attach ichlpcib at pci 289file arch/x86/pci/ichlpcib.c ichlpcib 290 291 292# CPUS 293 294device cpu 295attach cpu at cpubus 296 297device vcpu 298attach vcpu at xendevbus 299 300file arch/xen/x86/cpu.c cpu | vcpu 301 302# 303# Compatibility modules 304# 305 306ifdef i386 307# VM86 mode 308file arch/i386/i386/vm86.c vm86 309 310# VM86 in kernel 311file arch/i386/i386/kvm86.c kvm86 312file arch/i386/i386/kvm86call.S kvm86 313 314# Binary compatibility with previous NetBSD releases (COMPAT_XX) 315file arch/i386/i386/compat_13_machdep.c compat_13 316file arch/i386/i386/compat_16_machdep.c compat_16 | compat_ibcs2 317 318# SVR4 binary compatibility (COMPAT_SVR4) 319include "compat/svr4/files.svr4" 320file arch/i386/i386/svr4_machdep.c compat_svr4 321file arch/i386/i386/svr4_sigcode.S compat_svr4 322file arch/i386/i386/svr4_syscall.c compat_svr4 323 324# MACH binary compatibility (COMPAT_MACH) 325include "compat/mach/files.mach" 326file arch/i386/i386/mach_machdep.c compat_mach | compat_darwin 327file arch/i386/i386/mach_sigcode.S compat_mach | compat_darwin 328file arch/i386/i386/mach_syscall.c compat_mach | compat_darwin 329file arch/i386/i386/macho_machdep.c exec_macho 330 331# DARWIN binary compatibility (COMPAT_DARWIN) 332include "compat/darwin/files.darwin" 333file arch/i386/i386/darwin_machdep.c compat_darwin 334 335# iBCS-2 binary compatibility (COMPAT_IBCS2) 336include "compat/ibcs2/files.ibcs2" 337file arch/i386/i386/ibcs2_machdep.c compat_ibcs2 338file arch/i386/i386/ibcs2_sigcode.S compat_ibcs2 339file arch/i386/i386/ibcs2_syscall.c compat_ibcs2 340 341# Linux binary compatibility (COMPAT_LINUX) 342include "compat/linux/files.linux" 343include "compat/linux/arch/i386/files.linux_i386" 344file arch/i386/i386/linux_sigcode.S compat_linux 345file arch/i386/i386/linux_syscall.c compat_linux 346file arch/x86/x86/linux_trap.c compat_linux 347 348# FreeBSD binary compatibility (COMPAT_FREEBSD) 349include "compat/freebsd/files.freebsd" 350file arch/i386/i386/freebsd_machdep.c compat_freebsd 351file arch/i386/i386/freebsd_sigcode.S compat_freebsd 352file arch/i386/i386/freebsd_syscall.c compat_freebsd 353 354# Win32 binary compatibility (COMPAT_PECOFF) 355include "compat/pecoff/files.pecoff" 356 357elifdef amd64 358# NetBSD/i386 32-bit binary compatibility (COMPAT_NETBSD32) 359include "compat/netbsd32/files.netbsd32" 360file arch/amd64/amd64/netbsd32_machdep.c compat_netbsd32 361file arch/amd64/amd64/netbsd32_sigcode.S compat_netbsd32 & compat_16 362file arch/amd64/amd64/netbsd32_syscall.c compat_netbsd32 363 364# Linux compatibility (COMPAT_LINUX) 365include "compat/linux/files.linux" 366include "compat/linux/arch/amd64/files.linux_amd64" 367file arch/amd64/amd64/linux_sigcode.S compat_linux 368file arch/amd64/amd64/linux_syscall.c compat_linux 369file arch/x86/x86/linux_trap.c compat_linux 370# Linux 32 bit compatibility (COMPAT_LINUX32) 371include "compat/linux32/files.linux32" 372include "compat/linux32/arch/amd64/files.linux32_amd64" 373file arch/amd64/amd64/linux32_sigcode.S compat_linux32 374file arch/amd64/amd64/linux32_syscall.c compat_linux32 375endif 376 377# OSS audio driver compatibility 378include "compat/ossaudio/files.ossaudio" 379 380# Bluetooth 381include "dev/bluetooth/files.bluetooth" 382 383# 384# CARDBUS 385# 386include "dev/cardbus/files.cardbus" 387ifdef i386 388file arch/i386/i386/rbus_machdep.c cardbus 389elifdef amd64 390file arch/amd64/amd64/rbus_machdep.c cardbus 391endif 392 393# this wants to be probed as late as possible. 394# 395# Machine-independent PCMCIA drivers 396# 397include "dev/pcmcia/files.pcmcia" 398 399# Domain-0 operations 400defflag opt_xen.h DOM0OPS XEN_COMPAT_030001 401file arch/xen/xen/privcmd.c dom0ops 402file arch/xen/x86/xen_shm_machdep.c dom0ops | xen3 403file arch/xen/xen/xbdback.c dom0ops & !xen3 404file arch/xen/xen/xennetback.c dom0ops & !xen3 405file arch/xen/xen/pci_machdep.c hypervisor & pci & !xen3 406file arch/x86/pci/pci_machdep.c hypervisor & pci & xen3 407file arch/xen/xen/pci_intr_machdep.c hypervisor & pci 408file arch/xen/xen/isa_machdep.c hypervisor & dom0ops 409file arch/xen/xen/xenevt.c xenevt & dom0ops 410file arch/xen/xen/xennetback_xenbus.c xvif & xen3 411file arch/xen/xen/xennet_checksum.c (xvif & xen3) | xennet_xenbus 412file arch/xen/xen/xbdback_xenbus.c xbdback & xen3 413 414ifdef i386 415include "arch/i386/conf/majors.i386" 416elifdef amd64 417include "arch/amd64/conf/majors.amd64" 418endif 419