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