files.xen revision 1.79
1# $NetBSD: files.xen,v 1.79 2008/01/16 09:37:08 ad 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/i386/i386/dumpsys.c 44file arch/i386/i386/gdt.c 45file arch/i386/i386/in_cksum.S inet | inet6 46file arch/i386/i386/ipkdb_glue.c ipkdb 47file arch/i386/i386/kgdb_machdep.c kgdb 48file arch/i386/i386/machdep.c 49file arch/i386/i386/identcpu.c 50file arch/x86/x86/x86_identcpu.c 51file arch/i386/i386/mem.c 52file arch/i386/i386/mtrr_k6.c mtrr 53file arch/x86/x86/pmap.c 54file arch/i386/i386/process_machdep.c 55file arch/i386/i386/procfs_machdep.c procfs 56file arch/i386/i386/syscall.c 57file arch/i386/i386/trap.c 58file arch/i386/i386/vm_machdep.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/x86/x86/x86_identcpu.c 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/sys_machdep.c 144file arch/x86/x86/x86_machdep.c 145 146include "arch/xen/conf/files.compat" 147 148# BIOS32 routines 149define bios32 150ifdef i386 151file arch/i386/i386/bios32.c bios32 needs-flag 152elifdef amd64 153file arch/amd64/amd64/bios32.c bios32 needs-flag 154endif 155 156# xen specific mainbus attributes 157define cpubus { [apid = -1] } 158define ioapicbus { [apid = -1] } 159define apmbus {} 160define pnpbiosbus {} 161define vesabiosbus {} 162define hypervisorbus {} 163define xendevbus {} 164define ipmibus {} 165 166# 167# System bus types 168# 169 170device mainbus: cpubus, ioapicbus, hypervisorbus, bios32, ipmibus 171attach mainbus at root 172file arch/xen/x86/mainbus.c mainbus 173 174# Xen hypervisor 175device hypervisor { [apid = -1]}: isabus, pcibus, sysmon_power, xendevbus, acpibus 176attach hypervisor at hypervisorbus 177file arch/xen/xen/hypervisor.c hypervisor needs-flag 178file arch/xen/xen/shutdown_xenbus.c hypervisor & xen3 179 180# Xenbus (xen3 only) 181device xenbus {[id = -1]} 182attach xenbus at xendevbus 183file arch/xen/xenbus/xenbus_client.c xenbus & xen3 needs-flag 184file arch/xen/xenbus/xenbus_comms.c xenbus & xen3 needs-flag 185file arch/xen/xenbus/xenbus_dev.c xenbus & xen3 & dom0ops needs-flag 186file arch/xen/xenbus/xenbus_probe.c xenbus & xen3 needs-flag 187file arch/xen/xenbus/xenbus_xs.c xenbus & xen3 needs-flag 188 189ifdef i386 190# Numeric Processing Extension; Math Co-processor 191device npx 192file arch/i386/isa/npx.c npx needs-flag 193 194attach npx at xendevbus with npx_hv 195file arch/xen/i386/npx_hv.c npx_hv 196endif 197 198# Xen console support 199device xencons: tty 200attach xencons at xendevbus 201file arch/xen/xen/xencons.c xencons needs-flag 202 203# Xen event peudo-device 204defpseudo xenevt 205defpseudo xvif 206defpseudo xbdback 207 208# Xen Network driver 209device xennet: arp, ether, ifnet 210attach xennet at xendevbus with xennet_hypervisor 211attach xennet at xenbus with xennet_xenbus 212file arch/xen/xen/if_xennet_xenbus.c xennet_xenbus needs-flag 213file arch/xen/xen/if_xennet.c xennet_hypervisor needs-flag 214 215# Xen Block device driver and wd/sd/cd identities 216device xbd: disk 217attach xbd at xendevbus with xbd_hypervisor 218attach xbd at xenbus with xbd_xenbus 219#file arch/xen/xen/xbd_hypervisor.c xbd_hypervisor 220file arch/xen/xen/xbd_xenbus.c xbd_xenbus 221#file arch/xen/xen/xbd.c xbd | xbd_hypervisor | xbd_xenbus needs-flag 222file arch/xen/xen/xbd.c xbd_hypervisor needs-flag 223 224# Non-Xen specific devices and options 225 226include "dev/wscons/files.wscons" 227include "dev/wsfont/files.wsfont" 228include "dev/wsfb/files.wsfb" 229 230include "dev/pckbport/files.pckbport" 231 232# 233# Machine-independent PCI devices 234# 235include "dev/i2o/files.i2o" 236include "dev/pci/files.pci" 237include "dev/pci/files.agp" 238file arch/x86/pci/agp_machdep.c agp 239file arch/xen/xen/pciide_machdep.c pciide_common 240 241# 242# Machine-independent ISA devices 243# 244include "dev/isa/files.isa" 245 246include "dev/usb/files.usb" 247 248include "dev/ieee1394/files.ieee1394" 249 250device fdc {drive = -1} #XXX 251 252include "dev/apm/files.apm" 253 254include "dev/acpi/files.acpi" 255file arch/xen/xen/xen_acpi_machdep.c acpi 256file arch/x86/x86/mpacpi.c acpi 257file arch/x86/x86/acpi_machdep.c acpi 258file arch/x86/x86/i8259.c xen3 259 260# MP configuration using Intel SMP specification 1.4 261file arch/x86/x86/mpbios.c mpbios 262 263ifdef i386 264file arch/i386/pci/pci_bus_fixup.c pci_bus_fixup 265file arch/i386/pci/pci_addr_fixup.c pci_addr_fixup 266endif 267 268file arch/x86/x86/apic.c ioapic 269 270device ioapic 271attach ioapic at ioapicbus 272file arch/x86/x86/ioapic.c ioapic needs-flag 273 274#IPMI device 275device ipmi : sysmon_envsys, sysmon_wdog 276attach ipmi at ipmibus 277file arch/x86/x86/ipmi.c ipmi needs-flag 278 279# PCI-Host bridge chipsets 280device pchb: pcibus, agpbus, agp_ali, agp_amd, agp_i810, agp_intel, agp_sis, 281 agp_via 282attach pchb at pci 283file arch/x86/pci/pchb.c pchb needs-flag 284file arch/x86/pci/pchb_rnd.c pchb & rnd 285 286# PCI-ISA bridges 287device pcib: isabus 288attach pcib at pci 289file arch/xen/xen/pcib.c pcib | ichlpcib 290 291# PCI-LPC bridges 292device ichlpcib: isabus, sysmon_wdog 293attach ichlpcib at pci 294file arch/x86/pci/ichlpcib.c ichlpcib 295 296 297# CPUS 298 299device cpu 300attach cpu at cpubus 301 302device vcpu 303attach vcpu at xendevbus 304 305file arch/xen/x86/cpu.c cpu | vcpu 306 307# 308# Compatibility modules 309# 310 311ifdef i386 312# VM86 mode 313file arch/i386/i386/vm86.c vm86 314 315# VM86 in kernel 316file arch/i386/i386/kvm86.c kvm86 317file arch/i386/i386/kvm86call.S kvm86 318 319# Binary compatibility with previous NetBSD releases (COMPAT_XX) 320file arch/i386/i386/compat_13_machdep.c compat_13 321file arch/i386/i386/compat_16_machdep.c compat_16 | compat_ibcs2 322 323# SVR4 binary compatibility (COMPAT_SVR4) 324include "compat/svr4/files.svr4" 325file arch/i386/i386/svr4_machdep.c compat_svr4 326file arch/i386/i386/svr4_sigcode.S compat_svr4 327file arch/i386/i386/svr4_syscall.c compat_svr4 328 329# MACH binary compatibility (COMPAT_MACH) 330include "compat/mach/files.mach" 331file arch/i386/i386/mach_machdep.c compat_mach | compat_darwin 332file arch/i386/i386/mach_sigcode.S compat_mach | compat_darwin 333file arch/i386/i386/mach_syscall.c compat_mach | compat_darwin 334file arch/i386/i386/macho_machdep.c exec_macho 335 336# DARWIN binary compatibility (COMPAT_DARWIN) 337include "compat/darwin/files.darwin" 338file arch/i386/i386/darwin_machdep.c compat_darwin 339 340# iBCS-2 binary compatibility (COMPAT_IBCS2) 341include "compat/ibcs2/files.ibcs2" 342file arch/i386/i386/ibcs2_machdep.c compat_ibcs2 343file arch/i386/i386/ibcs2_sigcode.S compat_ibcs2 344file arch/i386/i386/ibcs2_syscall.c compat_ibcs2 345 346# Linux binary compatibility (COMPAT_LINUX) 347include "compat/linux/files.linux" 348include "compat/linux/arch/i386/files.linux_i386" 349file arch/i386/i386/linux_sigcode.S compat_linux 350file arch/i386/i386/linux_syscall.c compat_linux 351file arch/x86/x86/linux_trap.c compat_linux 352 353# FreeBSD binary compatibility (COMPAT_FREEBSD) 354include "compat/freebsd/files.freebsd" 355file arch/i386/i386/freebsd_machdep.c compat_freebsd 356file arch/i386/i386/freebsd_sigcode.S compat_freebsd 357file arch/i386/i386/freebsd_syscall.c compat_freebsd 358 359# Win32 binary compatibility (COMPAT_PECOFF) 360include "compat/pecoff/files.pecoff" 361 362elifdef amd64 363# NetBSD/i386 32-bit binary compatibility (COMPAT_NETBSD32) 364include "compat/netbsd32/files.netbsd32" 365file arch/amd64/amd64/netbsd32_machdep.c compat_netbsd32 366file arch/amd64/amd64/netbsd32_sigcode.S compat_netbsd32 & compat_16 367file arch/amd64/amd64/netbsd32_syscall.c compat_netbsd32 368 369# Linux compatibility (COMPAT_LINUX) 370include "compat/linux/files.linux" 371include "compat/linux/arch/amd64/files.linux_amd64" 372file arch/amd64/amd64/linux_sigcode.S compat_linux 373file arch/amd64/amd64/linux_syscall.c compat_linux 374file arch/x86/x86/linux_trap.c compat_linux 375# Linux 32 bit compatibility (COMPAT_LINUX32) 376include "compat/linux32/files.linux32" 377include "compat/linux32/arch/amd64/files.linux32_amd64" 378file arch/amd64/amd64/linux32_sigcode.S compat_linux32 379file arch/amd64/amd64/linux32_syscall.c compat_linux32 380endif 381 382# OSS audio driver compatibility 383include "compat/ossaudio/files.ossaudio" 384 385# Bluetooth 386include "dev/bluetooth/files.bluetooth" 387 388# 389# CARDBUS 390# 391include "dev/cardbus/files.cardbus" 392ifdef i386 393file arch/i386/i386/rbus_machdep.c cardbus 394elifdef amd64 395file arch/amd64/amd64/rbus_machdep.c cardbus 396endif 397 398# this wants to be probed as late as possible. 399# 400# Machine-independent PCMCIA drivers 401# 402include "dev/pcmcia/files.pcmcia" 403 404# Domain-0 operations 405defflag opt_xen.h DOM0OPS XEN_COMPAT_030001 406file arch/xen/xen/privcmd.c dom0ops 407file arch/xen/x86/xen_shm_machdep.c dom0ops | xen3 408file arch/xen/xen/xbdback.c dom0ops & !xen3 409file arch/xen/xen/xennetback.c dom0ops & !xen3 410file arch/xen/xen/pci_machdep.c hypervisor & pci & !xen3 411file arch/x86/pci/pci_machdep.c hypervisor & pci & xen3 412file arch/xen/xen/pci_intr_machdep.c hypervisor & pci 413file arch/xen/xen/isa_machdep.c hypervisor & dom0ops 414file arch/xen/xen/xenevt.c xenevt & dom0ops 415file arch/xen/xen/xennetback_xenbus.c xvif & xen3 416file arch/xen/xen/xennet_checksum.c (xvif & xen3) | xennet_xenbus 417file arch/xen/xen/xbdback_xenbus.c xbdback & xen3 418 419ifdef i386 420include "arch/i386/conf/majors.i386" 421elifdef amd64 422include "arch/amd64/conf/majors.amd64" 423endif 424