direct-io.hg

changeset 1925:be1be474b56f

bitkeeper revision 1.1108.1.30 (41062d6aonyZEGT1Lf5fC27ACa4P2A)

Merge freefall.cl.cam.ac.uk:/auto/groups/xeno/BK/xeno.bk
into freefall.cl.cam.ac.uk:/auto/groups/xeno/users/cl349/BK/xeno.bk-26dom0
author cl349@freefall.cl.cam.ac.uk
date Tue Jul 27 10:24:42 2004 +0000 (2004-07-27)
parents 42f37b71f9b1 978031085604
children ae191540ab44
files .rootkeys Makefile linux-2.6.7-xen-sparse/arch/xen/Kconfig linux-2.6.7-xen-sparse/arch/xen/Kconfig.drivers linux-2.6.7-xen-sparse/arch/xen/boot/Makefile linux-2.6.7-xen-sparse/arch/xen/configs/xen0_defconfig linux-2.6.7-xen-sparse/arch/xen/configs/xenU_defconfig linux-2.6.7-xen-sparse/arch/xen/i386/Kconfig linux-2.6.7-xen-sparse/arch/xen/i386/kernel/setup.c linux-2.6.7-xen-sparse/arch/xen/i386/mm/Makefile linux-2.6.7-xen-sparse/arch/xen/i386/mm/init.c linux-2.6.7-xen-sparse/arch/xen/i386/mm/ioremap.c linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/fixmap.h linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/io.h linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/mach-xen/pci-functions.h linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/tlbflush.h linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/vga.h
line diff
     1.1 --- a/.rootkeys	Mon Jul 26 20:03:34 2004 +0000
     1.2 +++ b/.rootkeys	Tue Jul 27 10:24:42 2004 +0000
     1.3 @@ -154,6 +154,7 @@ 40f562372u3A7_kfbYYixPHJJxYUxA linux-2.6
     1.4  40f56237utH41NPukqHksuNf29IC9A linux-2.6.7-xen-sparse/arch/xen/Kconfig.drivers
     1.5  40f56237penAAlWVBVDpeQZNFIg8CA linux-2.6.7-xen-sparse/arch/xen/Makefile
     1.6  40f56237JTc60m1FRlUxkUaGSQKrNw linux-2.6.7-xen-sparse/arch/xen/boot/Makefile
     1.7 +40f56237hRxbacU_3PdoAl6DjZ3Jnw linux-2.6.7-xen-sparse/arch/xen/configs/xen0_defconfig
     1.8  40f56237wubfjJKlfIzZlI3ZM2VgGA linux-2.6.7-xen-sparse/arch/xen/configs/xenU_defconfig
     1.9  40f56237Mta0yHNaMS_qtM2rge0qYA linux-2.6.7-xen-sparse/arch/xen/i386/Kconfig
    1.10  40f56238u2CJdXNpjsZgHBxeVyY-2g linux-2.6.7-xen-sparse/arch/xen/i386/Makefile
    1.11 @@ -182,6 +183,7 @@ 40f56238a3w6-byOzexIlMgni76Lcg linux-2.6
    1.12  40f56238ILx8xlbywNbzTdv5Zr4xXQ linux-2.6.7-xen-sparse/arch/xen/i386/mm/fault.c
    1.13  40f562383SKvDStdtrvzr5fyCbW4rw linux-2.6.7-xen-sparse/arch/xen/i386/mm/hypervisor.c
    1.14  40f56239xcNylAxuGsQHwi1AyMLV8w linux-2.6.7-xen-sparse/arch/xen/i386/mm/init.c
    1.15 +41062ab7CjxC1UBaFhOMWWdhHkIUyg linux-2.6.7-xen-sparse/arch/xen/i386/mm/ioremap.c
    1.16  40f5623906UYHv1rsVUeRc0tFT0dWw linux-2.6.7-xen-sparse/arch/xen/i386/mm/pgtable.c
    1.17  40f56239zOksGg_H4XD4ye6iZNtoZA linux-2.6.7-xen-sparse/arch/xen/kernel/Makefile
    1.18  40f56239bvOjuuuViZ0XMlNiREFC0A linux-2.6.7-xen-sparse/arch/xen/kernel/ctrl_if.c
    1.19 @@ -215,6 +217,7 @@ 40f5623an3wOvFKmpIvqSxQfWzklVQ linux-2.6
    1.20  40f5623ayR1vnzfF__htza35a8Ft-g linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/mach-xen/mach_time.h
    1.21  40f5623a4YdRdVzYWJzOOoqe8mnrXA linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/mach-xen/mach_timer.h
    1.22  40f5623aDLxmbOtUHvkWztKjAO4EjA linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/mach-xen/mach_traps.h
    1.23 +41062ab7HMSSuaUv3_Z4agLpjSO88A linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/mach-xen/pci-functions.h
    1.24  40f5623aDMCsWOFO0jktZ4e8sjwvEg linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/mach-xen/setup_arch_post.h
    1.25  40f5623arsFXkGdPvIqvFi3yFXGR0Q linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/mach-xen/setup_arch_pre.h
    1.26  40f5623aFTyFTR-vdiA-KaGxk5JOKQ linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/msr.h
    1.27 @@ -231,6 +234,7 @@ 40f5623bgzm_9vwxpzJswlAxg298Gg linux-2.6
    1.28  40f5623bVdKP7Dt7qm8twu3NcnGNbA linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/system.h
    1.29  40f5623bSgGrvrGRpD71K-lIYqaGgg linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/timer.h
    1.30  40f5623bc8LKPRO09wY5dGDnY_YCpw linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/tlbflush.h
    1.31 +41062ab7uFxnCq-KtPeAm-aV8CicgA linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/vga.h
    1.32  40f5623bxUbeGjkRrjDguCy_Gm8RLw linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/xor.h
    1.33  40f5623bqoi4GEoBiiUc6TZk1HjsMg linux-2.6.7-xen-sparse/include/asm-xen/blkif.h
    1.34  40f5623bYNP7tHE2zX6YQxp9Zq2utQ linux-2.6.7-xen-sparse/include/asm-xen/ctrl_if.h
     2.1 --- a/Makefile	Mon Jul 26 20:03:34 2004 +0000
     2.2 +++ b/Makefile	Tue Jul 27 10:24:42 2004 +0000
     2.3 @@ -67,9 +67,10 @@ mk-linux-trees: pristine-linux-src
     2.4  	$(RM) -rf $(LINUX_TREES)
     2.5  	echo $(LINUX_SRC) | grep -q bz2 && \
     2.6  	    tar -jxf $(LINUX_SRC) || tar -zxf $(LINUX_SRC)
     2.7 -	mv linux-$(LINUX_VER) linux-$(LINUX_VER)-xenU
     2.8 +	mv linux-$(LINUX_VER) linux-$(LINUX_VER)-xen0
     2.9  	( cd linux-$(LINUX_VER)-xen-sparse ; \
    2.10 -          ./mkbuildtree ../linux-$(LINUX_VER)-xenU )
    2.11 +          ./mkbuildtree ../linux-$(LINUX_VER)-xen0 )
    2.12 +	cp -al linux-$(LINUX_VER)-xen0 linux-$(LINUX_VER)-xenU
    2.13  endif
    2.14  
    2.15  # configure the specified linux tree
     3.1 --- a/linux-2.6.7-xen-sparse/arch/xen/Kconfig	Mon Jul 26 20:03:34 2004 +0000
     3.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/Kconfig	Tue Jul 27 10:24:42 2004 +0000
     3.3 @@ -20,7 +20,24 @@ config NO_IDLE_HZ
     3.4  	bool
     3.5  	default y
     3.6  
     3.7 -source "init/Kconfig"
     3.8 +
     3.9 +menu "XEN"
    3.10 +
    3.11 +config XEN_PRIVILEGED_GUEST
    3.12 +	bool "Privileged Guest (domain 0)"
    3.13 +	default n
    3.14 +	help
    3.15 +	  Support for privileged operation (domain 0)
    3.16 +
    3.17 +config XEN_PHYSDEV_ACCESS
    3.18 +	bool "Device-driver domain (physical device access)"
    3.19 +	default y if XEN_PRIVILEGED_GUEST
    3.20 +	default n
    3.21 +	help
    3.22 +	  Device-driver domain (physical device access)
    3.23 +
    3.24 +endmenu
    3.25 +
    3.26  
    3.27  #config VT
    3.28  #	bool
    3.29 @@ -50,6 +67,8 @@ config X86_64
    3.30  
    3.31  endchoice
    3.32  
    3.33 +source "init/Kconfig"
    3.34 +
    3.35  if X86
    3.36  source "arch/xen/i386/Kconfig"
    3.37  endif
     4.1 --- a/linux-2.6.7-xen-sparse/arch/xen/Kconfig.drivers	Mon Jul 26 20:03:34 2004 +0000
     4.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/Kconfig.drivers	Tue Jul 27 10:24:42 2004 +0000
     4.3 @@ -4,11 +4,19 @@ menu "Device Drivers"
     4.4  
     4.5  source "drivers/base/Kconfig"
     4.6  
     4.7 -#source "drivers/block/Kconfig"
     4.8 +if XEN_PHYSDEV_ACCESS
     4.9 +source "drivers/block/Kconfig"
    4.10 +source "drivers/ide/Kconfig"
    4.11 +source "drivers/scsi/Kconfig"
    4.12 +source "drivers/cdrom/Kconfig"
    4.13 +source "drivers/md/Kconfig"
    4.14 +endif
    4.15  
    4.16  source "net/Kconfig"
    4.17  
    4.18 -#source "drivers/input/Kconfig"
    4.19 +if XEN_PHYSDEV_ACCESS
    4.20 +source "drivers/input/Kconfig"
    4.21 +endif
    4.22  
    4.23  config INPUT
    4.24  	tristate "Input devices (needed for keyboard, mouse, ...)" if EMBEDDED
    4.25 @@ -28,7 +36,9 @@ config INPUT
    4.26  	  To compile this driver as a module, choose M here: the
    4.27  	  module will be called input.
    4.28  
    4.29 -#source "drivers/char/Kconfig"
    4.30 +if XEN_PHYSDEV_ACCESS
    4.31 +source "drivers/char/Kconfig"
    4.32 +endif
    4.33  
    4.34  config UNIX98_PTYS
    4.35  	bool "Unix98 PTY support" if EMBEDDED
    4.36 @@ -54,7 +64,9 @@ config UNIX98_PTYS
    4.37  	  you're on an embedded system and want to conserve memory.
    4.38  
    4.39  
    4.40 -#source "drivers/video/Kconfig"
    4.41 +if XEN_PHYSDEV_ACCESS
    4.42 +source "drivers/video/Kconfig"
    4.43 +endif
    4.44  
    4.45  #config XEN_EVTCHN
    4.46  #	bool "Xen Event Channel"
     5.1 --- a/linux-2.6.7-xen-sparse/arch/xen/boot/Makefile	Mon Jul 26 20:03:34 2004 +0000
     5.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/boot/Makefile	Tue Jul 27 10:24:42 2004 +0000
     5.3 @@ -1,3 +1,8 @@
     5.4  
     5.5 -vmlinuz: vmlinux FORCE
     5.6 +OBJCOPYFLAGS := -g --strip-unneeded
     5.7 +
     5.8 +vmlinuz: vmlinux-stripped FORCE
     5.9  	$(call if_changed,gzip)
    5.10 +
    5.11 +vmlinux-stripped: vmlinux FORCE
    5.12 +	$(call if_changed,objcopy)
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/configs/xen0_defconfig	Tue Jul 27 10:24:42 2004 +0000
     6.3 @@ -0,0 +1,632 @@
     6.4 +#
     6.5 +# Automatically generated make config: don't edit
     6.6 +#
     6.7 +CONFIG_XEN=y
     6.8 +CONFIG_ARCH_XEN=y
     6.9 +CONFIG_NO_IDLE_HZ=y
    6.10 +
    6.11 +#
    6.12 +# XEN
    6.13 +#
    6.14 +CONFIG_XEN_PRIVILEGED_GUEST=y
    6.15 +CONFIG_XEN_PHYSDEV_ACCESS=y
    6.16 +CONFIG_X86=y
    6.17 +# CONFIG_X86_64 is not set
    6.18 +
    6.19 +#
    6.20 +# Code maturity level options
    6.21 +#
    6.22 +# CONFIG_EXPERIMENTAL is not set
    6.23 +CONFIG_CLEAN_COMPILE=y
    6.24 +CONFIG_STANDALONE=y
    6.25 +CONFIG_BROKEN_ON_SMP=y
    6.26 +
    6.27 +#
    6.28 +# General setup
    6.29 +#
    6.30 +CONFIG_SWAP=y
    6.31 +# CONFIG_SYSVIPC is not set
    6.32 +# CONFIG_BSD_PROCESS_ACCT is not set
    6.33 +# CONFIG_SYSCTL is not set
    6.34 +# CONFIG_AUDIT is not set
    6.35 +CONFIG_LOG_BUF_SHIFT=14
    6.36 +# CONFIG_HOTPLUG is not set
    6.37 +# CONFIG_IKCONFIG is not set
    6.38 +# CONFIG_EMBEDDED is not set
    6.39 +CONFIG_KALLSYMS=y
    6.40 +# CONFIG_KALLSYMS_ALL is not set
    6.41 +CONFIG_FUTEX=y
    6.42 +CONFIG_EPOLL=y
    6.43 +CONFIG_IOSCHED_NOOP=y
    6.44 +CONFIG_IOSCHED_AS=y
    6.45 +CONFIG_IOSCHED_DEADLINE=y
    6.46 +CONFIG_IOSCHED_CFQ=y
    6.47 +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
    6.48 +
    6.49 +#
    6.50 +# Loadable module support
    6.51 +#
    6.52 +CONFIG_MODULES=y
    6.53 +CONFIG_MODULE_UNLOAD=y
    6.54 +CONFIG_OBSOLETE_MODPARM=y
    6.55 +CONFIG_KMOD=y
    6.56 +
    6.57 +#
    6.58 +# X86 Processor Configuration
    6.59 +#
    6.60 +CONFIG_XENARCH="i386"
    6.61 +CONFIG_MMU=y
    6.62 +CONFIG_UID16=y
    6.63 +CONFIG_GENERIC_ISA_DMA=y
    6.64 +# CONFIG_M386 is not set
    6.65 +# CONFIG_M486 is not set
    6.66 +# CONFIG_M586 is not set
    6.67 +# CONFIG_M586TSC is not set
    6.68 +# CONFIG_M586MMX is not set
    6.69 +# CONFIG_M686 is not set
    6.70 +# CONFIG_MPENTIUMII is not set
    6.71 +# CONFIG_MPENTIUMIII is not set
    6.72 +# CONFIG_MPENTIUMM is not set
    6.73 +CONFIG_MPENTIUM4=y
    6.74 +# CONFIG_MK6 is not set
    6.75 +# CONFIG_MK7 is not set
    6.76 +# CONFIG_MK8 is not set
    6.77 +# CONFIG_MCRUSOE is not set
    6.78 +# CONFIG_MWINCHIPC6 is not set
    6.79 +# CONFIG_MWINCHIP2 is not set
    6.80 +# CONFIG_MWINCHIP3D is not set
    6.81 +# CONFIG_MCYRIXIII is not set
    6.82 +# CONFIG_MVIAC3_2 is not set
    6.83 +# CONFIG_X86_GENERIC is not set
    6.84 +CONFIG_X86_CMPXCHG=y
    6.85 +CONFIG_X86_XADD=y
    6.86 +CONFIG_X86_L1_CACHE_SHIFT=7
    6.87 +CONFIG_RWSEM_XCHGADD_ALGORITHM=y
    6.88 +CONFIG_X86_WP_WORKS_OK=y
    6.89 +CONFIG_X86_INVLPG=y
    6.90 +CONFIG_X86_BSWAP=y
    6.91 +CONFIG_X86_POPAD_OK=y
    6.92 +CONFIG_X86_GOOD_APIC=y
    6.93 +CONFIG_X86_INTEL_USERCOPY=y
    6.94 +CONFIG_X86_USE_PPRO_CHECKSUM=y
    6.95 +# CONFIG_HPET_TIMER is not set
    6.96 +# CONFIG_HPET_EMULATE_RTC is not set
    6.97 +# CONFIG_SMP is not set
    6.98 +CONFIG_PREEMPT=y
    6.99 +CONFIG_X86_CPUID=y
   6.100 +
   6.101 +#
   6.102 +# Firmware Drivers
   6.103 +#
   6.104 +CONFIG_NOHIGHMEM=y
   6.105 +# CONFIG_HIGHMEM4G is not set
   6.106 +# CONFIG_HIGHMEM64G is not set
   6.107 +CONFIG_HAVE_DEC_LOCK=y
   6.108 +
   6.109 +#
   6.110 +# Bus options (PCI, PCMCIA, EISA, MCA, ISA)
   6.111 +#
   6.112 +CONFIG_PCI=y
   6.113 +# CONFIG_PCI_GOBIOS is not set
   6.114 +# CONFIG_PCI_GOMMCONFIG is not set
   6.115 +# CONFIG_PCI_GODIRECT is not set
   6.116 +CONFIG_PCI_GOANY=y
   6.117 +CONFIG_PCI_BIOS=y
   6.118 +CONFIG_PCI_DIRECT=y
   6.119 +CONFIG_PCI_MMCONFIG=y
   6.120 +CONFIG_PCI_LEGACY_PROC=y
   6.121 +# CONFIG_PCI_NAMES is not set
   6.122 +CONFIG_ISA=y
   6.123 +# CONFIG_EISA is not set
   6.124 +# CONFIG_MCA is not set
   6.125 +# CONFIG_SCx200 is not set
   6.126 +
   6.127 +#
   6.128 +# Kernel hacking
   6.129 +#
   6.130 +CONFIG_DEBUG_KERNEL=y
   6.131 +CONFIG_EARLY_PRINTK=y
   6.132 +# CONFIG_DEBUG_STACKOVERFLOW is not set
   6.133 +# CONFIG_DEBUG_STACK_USAGE is not set
   6.134 +# CONFIG_DEBUG_SLAB is not set
   6.135 +# CONFIG_MAGIC_SYSRQ is not set
   6.136 +# CONFIG_DEBUG_SPINLOCK is not set
   6.137 +# CONFIG_DEBUG_PAGEALLOC is not set
   6.138 +CONFIG_DEBUG_INFO=y
   6.139 +# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
   6.140 +CONFIG_FRAME_POINTER=y
   6.141 +# CONFIG_4KSTACKS is not set
   6.142 +CONFIG_X86_BIOS_REBOOT=y
   6.143 +CONFIG_X86_STD_RESOURCES=y
   6.144 +CONFIG_PC=y
   6.145 +
   6.146 +#
   6.147 +# Executable file formats
   6.148 +#
   6.149 +CONFIG_BINFMT_ELF=y
   6.150 +# CONFIG_BINFMT_AOUT is not set
   6.151 +# CONFIG_BINFMT_MISC is not set
   6.152 +
   6.153 +#
   6.154 +# Device Drivers
   6.155 +#
   6.156 +
   6.157 +#
   6.158 +# Generic Driver Options
   6.159 +#
   6.160 +# CONFIG_DEBUG_DRIVER is not set
   6.161 +
   6.162 +#
   6.163 +# Block devices
   6.164 +#
   6.165 +# CONFIG_BLK_DEV_FD is not set
   6.166 +# CONFIG_BLK_DEV_XD is not set
   6.167 +# CONFIG_BLK_CPQ_DA is not set
   6.168 +# CONFIG_BLK_CPQ_CISS_DA is not set
   6.169 +# CONFIG_BLK_DEV_DAC960 is not set
   6.170 +# CONFIG_BLK_DEV_LOOP is not set
   6.171 +# CONFIG_BLK_DEV_NBD is not set
   6.172 +# CONFIG_BLK_DEV_CARMEL is not set
   6.173 +# CONFIG_BLK_DEV_RAM is not set
   6.174 +# CONFIG_LBD is not set
   6.175 +
   6.176 +#
   6.177 +# ATA/ATAPI/MFM/RLL support
   6.178 +#
   6.179 +CONFIG_IDE=y
   6.180 +# CONFIG_BLK_DEV_IDE is not set
   6.181 +# CONFIG_BLK_DEV_HD_ONLY is not set
   6.182 +# CONFIG_BLK_DEV_HD is not set
   6.183 +
   6.184 +#
   6.185 +# SCSI device support
   6.186 +#
   6.187 +CONFIG_SCSI=y
   6.188 +CONFIG_SCSI_PROC_FS=y
   6.189 +
   6.190 +#
   6.191 +# SCSI support type (disk, tape, CD-ROM)
   6.192 +#
   6.193 +CONFIG_BLK_DEV_SD=y
   6.194 +# CONFIG_CHR_DEV_ST is not set
   6.195 +# CONFIG_CHR_DEV_OSST is not set
   6.196 +# CONFIG_BLK_DEV_SR is not set
   6.197 +# CONFIG_CHR_DEV_SG is not set
   6.198 +
   6.199 +#
   6.200 +# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
   6.201 +#
   6.202 +# CONFIG_SCSI_MULTI_LUN is not set
   6.203 +# CONFIG_SCSI_CONSTANTS is not set
   6.204 +# CONFIG_SCSI_LOGGING is not set
   6.205 +
   6.206 +#
   6.207 +# SCSI Transport Attributes
   6.208 +#
   6.209 +# CONFIG_SCSI_SPI_ATTRS is not set
   6.210 +# CONFIG_SCSI_FC_ATTRS is not set
   6.211 +
   6.212 +#
   6.213 +# SCSI low-level drivers
   6.214 +#
   6.215 +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
   6.216 +# CONFIG_SCSI_7000FASST is not set
   6.217 +# CONFIG_SCSI_ACARD is not set
   6.218 +# CONFIG_SCSI_AHA152X is not set
   6.219 +# CONFIG_SCSI_AHA1542 is not set
   6.220 +# CONFIG_SCSI_AIC7XXX is not set
   6.221 +# CONFIG_SCSI_AIC7XXX_OLD is not set
   6.222 +# CONFIG_SCSI_AIC79XX is not set
   6.223 +# CONFIG_SCSI_DPT_I2O is not set
   6.224 +# CONFIG_SCSI_ADVANSYS is not set
   6.225 +# CONFIG_SCSI_IN2000 is not set
   6.226 +# CONFIG_SCSI_MEGARAID is not set
   6.227 +# CONFIG_SCSI_BUSLOGIC is not set
   6.228 +# CONFIG_SCSI_DMX3191D is not set
   6.229 +# CONFIG_SCSI_DTC3280 is not set
   6.230 +# CONFIG_SCSI_EATA is not set
   6.231 +# CONFIG_SCSI_EATA_PIO is not set
   6.232 +# CONFIG_SCSI_FUTURE_DOMAIN is not set
   6.233 +# CONFIG_SCSI_GDTH is not set
   6.234 +# CONFIG_SCSI_GENERIC_NCR5380 is not set
   6.235 +# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
   6.236 +# CONFIG_SCSI_IPS is not set
   6.237 +# CONFIG_SCSI_INIA100 is not set
   6.238 +# CONFIG_SCSI_NCR53C406A is not set
   6.239 +# CONFIG_SCSI_SYM53C8XX_2 is not set
   6.240 +# CONFIG_SCSI_IPR is not set
   6.241 +# CONFIG_SCSI_PAS16 is not set
   6.242 +# CONFIG_SCSI_PSI240I is not set
   6.243 +# CONFIG_SCSI_QLOGIC_FAS is not set
   6.244 +# CONFIG_SCSI_QLOGIC_ISP is not set
   6.245 +# CONFIG_SCSI_QLOGIC_FC is not set
   6.246 +# CONFIG_SCSI_QLOGIC_1280 is not set
   6.247 +CONFIG_SCSI_QLA2XXX=y
   6.248 +# CONFIG_SCSI_QLA21XX is not set
   6.249 +# CONFIG_SCSI_QLA22XX is not set
   6.250 +# CONFIG_SCSI_QLA2300 is not set
   6.251 +# CONFIG_SCSI_QLA2322 is not set
   6.252 +# CONFIG_SCSI_QLA6312 is not set
   6.253 +# CONFIG_SCSI_QLA6322 is not set
   6.254 +# CONFIG_SCSI_SYM53C416 is not set
   6.255 +# CONFIG_SCSI_DC390T is not set
   6.256 +# CONFIG_SCSI_T128 is not set
   6.257 +# CONFIG_SCSI_U14_34F is not set
   6.258 +# CONFIG_SCSI_ULTRASTOR is not set
   6.259 +# CONFIG_SCSI_NSP32 is not set
   6.260 +# CONFIG_SCSI_DEBUG is not set
   6.261 +
   6.262 +#
   6.263 +# Old CD-ROM drivers (not SCSI, not IDE)
   6.264 +#
   6.265 +# CONFIG_CD_NO_IDESCSI is not set
   6.266 +
   6.267 +#
   6.268 +# Multi-device support (RAID and LVM)
   6.269 +#
   6.270 +# CONFIG_MD is not set
   6.271 +
   6.272 +#
   6.273 +# Networking support
   6.274 +#
   6.275 +CONFIG_NET=y
   6.276 +
   6.277 +#
   6.278 +# Networking options
   6.279 +#
   6.280 +CONFIG_PACKET=y
   6.281 +# CONFIG_PACKET_MMAP is not set
   6.282 +# CONFIG_NETLINK_DEV is not set
   6.283 +CONFIG_UNIX=y
   6.284 +# CONFIG_NET_KEY is not set
   6.285 +CONFIG_INET=y
   6.286 +# CONFIG_IP_MULTICAST is not set
   6.287 +# CONFIG_IP_ADVANCED_ROUTER is not set
   6.288 +CONFIG_IP_PNP=y
   6.289 +# CONFIG_IP_PNP_DHCP is not set
   6.290 +# CONFIG_IP_PNP_BOOTP is not set
   6.291 +# CONFIG_IP_PNP_RARP is not set
   6.292 +# CONFIG_NET_IPIP is not set
   6.293 +# CONFIG_NET_IPGRE is not set
   6.294 +# CONFIG_SYN_COOKIES is not set
   6.295 +# CONFIG_INET_AH is not set
   6.296 +# CONFIG_INET_ESP is not set
   6.297 +# CONFIG_INET_IPCOMP is not set
   6.298 +# CONFIG_NETFILTER is not set
   6.299 +# CONFIG_BRIDGE is not set
   6.300 +# CONFIG_VLAN_8021Q is not set
   6.301 +# CONFIG_DECNET is not set
   6.302 +# CONFIG_LLC2 is not set
   6.303 +# CONFIG_IPX is not set
   6.304 +# CONFIG_ATALK is not set
   6.305 +
   6.306 +#
   6.307 +# QoS and/or fair queueing
   6.308 +#
   6.309 +# CONFIG_NET_SCHED is not set
   6.310 +
   6.311 +#
   6.312 +# Network testing
   6.313 +#
   6.314 +# CONFIG_NET_PKTGEN is not set
   6.315 +# CONFIG_NETPOLL is not set
   6.316 +# CONFIG_NET_POLL_CONTROLLER is not set
   6.317 +# CONFIG_HAMRADIO is not set
   6.318 +# CONFIG_IRDA is not set
   6.319 +# CONFIG_BT is not set
   6.320 +CONFIG_NETDEVICES=y
   6.321 +# CONFIG_DUMMY is not set
   6.322 +# CONFIG_BONDING is not set
   6.323 +# CONFIG_EQUALIZER is not set
   6.324 +# CONFIG_TUN is not set
   6.325 +
   6.326 +#
   6.327 +# ARCnet devices
   6.328 +#
   6.329 +# CONFIG_ARCNET is not set
   6.330 +
   6.331 +#
   6.332 +# Ethernet (10 or 100Mbit)
   6.333 +#
   6.334 +CONFIG_NET_ETHERNET=y
   6.335 +CONFIG_MII=y
   6.336 +# CONFIG_HAPPYMEAL is not set
   6.337 +# CONFIG_SUNGEM is not set
   6.338 +# CONFIG_NET_VENDOR_3COM is not set
   6.339 +# CONFIG_LANCE is not set
   6.340 +# CONFIG_NET_VENDOR_SMC is not set
   6.341 +# CONFIG_NET_VENDOR_RACAL is not set
   6.342 +
   6.343 +#
   6.344 +# Tulip family network device support
   6.345 +#
   6.346 +# CONFIG_NET_TULIP is not set
   6.347 +# CONFIG_DEPCA is not set
   6.348 +# CONFIG_HP100 is not set
   6.349 +# CONFIG_NET_ISA is not set
   6.350 +# CONFIG_NET_PCI is not set
   6.351 +# CONFIG_NET_POCKET is not set
   6.352 +
   6.353 +#
   6.354 +# Ethernet (1000 Mbit)
   6.355 +#
   6.356 +# CONFIG_ACENIC is not set
   6.357 +# CONFIG_DL2K is not set
   6.358 +CONFIG_E1000=y
   6.359 +# CONFIG_E1000_NAPI is not set
   6.360 +# CONFIG_NS83820 is not set
   6.361 +# CONFIG_HAMACHI is not set
   6.362 +# CONFIG_R8169 is not set
   6.363 +# CONFIG_SK98LIN is not set
   6.364 +# CONFIG_TIGON3 is not set
   6.365 +
   6.366 +#
   6.367 +# Ethernet (10000 Mbit)
   6.368 +#
   6.369 +# CONFIG_IXGB is not set
   6.370 +# CONFIG_S2IO is not set
   6.371 +
   6.372 +#
   6.373 +# Token Ring devices
   6.374 +#
   6.375 +# CONFIG_TR is not set
   6.376 +
   6.377 +#
   6.378 +# Wireless LAN (non-hamradio)
   6.379 +#
   6.380 +# CONFIG_NET_RADIO is not set
   6.381 +
   6.382 +#
   6.383 +# Wan interfaces
   6.384 +#
   6.385 +# CONFIG_WAN is not set
   6.386 +# CONFIG_FDDI is not set
   6.387 +# CONFIG_PPP is not set
   6.388 +# CONFIG_SLIP is not set
   6.389 +# CONFIG_NET_FC is not set
   6.390 +
   6.391 +#
   6.392 +# Input device support
   6.393 +#
   6.394 +CONFIG_INPUT=y
   6.395 +
   6.396 +#
   6.397 +# Userland interfaces
   6.398 +#
   6.399 +CONFIG_INPUT_MOUSEDEV=y
   6.400 +CONFIG_INPUT_MOUSEDEV_PSAUX=y
   6.401 +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
   6.402 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
   6.403 +# CONFIG_INPUT_JOYDEV is not set
   6.404 +# CONFIG_INPUT_TSDEV is not set
   6.405 +# CONFIG_INPUT_EVDEV is not set
   6.406 +# CONFIG_INPUT_EVBUG is not set
   6.407 +
   6.408 +#
   6.409 +# Input I/O drivers
   6.410 +#
   6.411 +# CONFIG_GAMEPORT is not set
   6.412 +CONFIG_SOUND_GAMEPORT=y
   6.413 +CONFIG_SERIO=y
   6.414 +CONFIG_SERIO_I8042=y
   6.415 +CONFIG_SERIO_SERPORT=y
   6.416 +# CONFIG_SERIO_CT82C710 is not set
   6.417 +# CONFIG_SERIO_PCIPS2 is not set
   6.418 +
   6.419 +#
   6.420 +# Input Device Drivers
   6.421 +#
   6.422 +CONFIG_INPUT_KEYBOARD=y
   6.423 +CONFIG_KEYBOARD_ATKBD=y
   6.424 +# CONFIG_KEYBOARD_SUNKBD is not set
   6.425 +# CONFIG_KEYBOARD_LKKBD is not set
   6.426 +# CONFIG_KEYBOARD_XTKBD is not set
   6.427 +# CONFIG_KEYBOARD_NEWTON is not set
   6.428 +CONFIG_INPUT_MOUSE=y
   6.429 +CONFIG_MOUSE_PS2=y
   6.430 +# CONFIG_MOUSE_SERIAL is not set
   6.431 +# CONFIG_MOUSE_INPORT is not set
   6.432 +# CONFIG_MOUSE_LOGIBM is not set
   6.433 +# CONFIG_MOUSE_PC110PAD is not set
   6.434 +# CONFIG_MOUSE_VSXXXAA is not set
   6.435 +# CONFIG_INPUT_JOYSTICK is not set
   6.436 +# CONFIG_INPUT_TOUCHSCREEN is not set
   6.437 +# CONFIG_INPUT_MISC is not set
   6.438 +
   6.439 +#
   6.440 +# Character devices
   6.441 +#
   6.442 +CONFIG_VT=y
   6.443 +CONFIG_VT_CONSOLE=y
   6.444 +CONFIG_HW_CONSOLE=y
   6.445 +# CONFIG_SERIAL_NONSTANDARD is not set
   6.446 +
   6.447 +#
   6.448 +# Serial drivers
   6.449 +#
   6.450 +# CONFIG_SERIAL_8250 is not set
   6.451 +
   6.452 +#
   6.453 +# Non-8250 serial port support
   6.454 +#
   6.455 +CONFIG_UNIX98_PTYS=y
   6.456 +CONFIG_LEGACY_PTYS=y
   6.457 +CONFIG_LEGACY_PTY_COUNT=256
   6.458 +# CONFIG_QIC02_TAPE is not set
   6.459 +
   6.460 +#
   6.461 +# IPMI
   6.462 +#
   6.463 +# CONFIG_IPMI_HANDLER is not set
   6.464 +
   6.465 +#
   6.466 +# Watchdog Cards
   6.467 +#
   6.468 +# CONFIG_WATCHDOG is not set
   6.469 +# CONFIG_HW_RANDOM is not set
   6.470 +# CONFIG_NVRAM is not set
   6.471 +# CONFIG_RTC is not set
   6.472 +# CONFIG_GEN_RTC is not set
   6.473 +# CONFIG_DTLK is not set
   6.474 +# CONFIG_R3964 is not set
   6.475 +# CONFIG_APPLICOM is not set
   6.476 +
   6.477 +#
   6.478 +# Ftape, the floppy tape device driver
   6.479 +#
   6.480 +# CONFIG_FTAPE is not set
   6.481 +# CONFIG_AGP is not set
   6.482 +# CONFIG_DRM is not set
   6.483 +# CONFIG_MWAVE is not set
   6.484 +# CONFIG_RAW_DRIVER is not set
   6.485 +# CONFIG_HANGCHECK_TIMER is not set
   6.486 +
   6.487 +#
   6.488 +# Graphics support
   6.489 +#
   6.490 +# CONFIG_FB is not set
   6.491 +# CONFIG_VIDEO_SELECT is not set
   6.492 +
   6.493 +#
   6.494 +# Console display driver support
   6.495 +#
   6.496 +CONFIG_VGA_CONSOLE=y
   6.497 +# CONFIG_MDA_CONSOLE is not set
   6.498 +CONFIG_DUMMY_CONSOLE=y
   6.499 +
   6.500 +#
   6.501 +# File systems
   6.502 +#
   6.503 +CONFIG_EXT2_FS=y
   6.504 +# CONFIG_EXT2_FS_XATTR is not set
   6.505 +CONFIG_EXT3_FS=y
   6.506 +CONFIG_EXT3_FS_XATTR=y
   6.507 +# CONFIG_EXT3_FS_POSIX_ACL is not set
   6.508 +# CONFIG_EXT3_FS_SECURITY is not set
   6.509 +CONFIG_JBD=y
   6.510 +# CONFIG_JBD_DEBUG is not set
   6.511 +CONFIG_FS_MBCACHE=y
   6.512 +# CONFIG_REISERFS_FS is not set
   6.513 +# CONFIG_JFS_FS is not set
   6.514 +# CONFIG_XFS_FS is not set
   6.515 +# CONFIG_MINIX_FS is not set
   6.516 +# CONFIG_ROMFS_FS is not set
   6.517 +# CONFIG_QUOTA is not set
   6.518 +# CONFIG_AUTOFS_FS is not set
   6.519 +# CONFIG_AUTOFS4_FS is not set
   6.520 +
   6.521 +#
   6.522 +# CD-ROM/DVD Filesystems
   6.523 +#
   6.524 +# CONFIG_ISO9660_FS is not set
   6.525 +# CONFIG_UDF_FS is not set
   6.526 +
   6.527 +#
   6.528 +# DOS/FAT/NT Filesystems
   6.529 +#
   6.530 +# CONFIG_FAT_FS is not set
   6.531 +# CONFIG_NTFS_FS is not set
   6.532 +
   6.533 +#
   6.534 +# Pseudo filesystems
   6.535 +#
   6.536 +CONFIG_PROC_FS=y
   6.537 +CONFIG_PROC_KCORE=y
   6.538 +CONFIG_SYSFS=y
   6.539 +# CONFIG_DEVPTS_FS_XATTR is not set
   6.540 +CONFIG_TMPFS=y
   6.541 +# CONFIG_HUGETLBFS is not set
   6.542 +# CONFIG_HUGETLB_PAGE is not set
   6.543 +CONFIG_RAMFS=y
   6.544 +
   6.545 +#
   6.546 +# Miscellaneous filesystems
   6.547 +#
   6.548 +# CONFIG_HFSPLUS_FS is not set
   6.549 +# CONFIG_CRAMFS is not set
   6.550 +# CONFIG_VXFS_FS is not set
   6.551 +# CONFIG_HPFS_FS is not set
   6.552 +# CONFIG_QNX4FS_FS is not set
   6.553 +# CONFIG_SYSV_FS is not set
   6.554 +# CONFIG_UFS_FS is not set
   6.555 +
   6.556 +#
   6.557 +# Network File Systems
   6.558 +#
   6.559 +CONFIG_NFS_FS=y
   6.560 +CONFIG_NFS_V3=y
   6.561 +# CONFIG_NFSD is not set
   6.562 +CONFIG_ROOT_NFS=y
   6.563 +CONFIG_LOCKD=y
   6.564 +CONFIG_LOCKD_V4=y
   6.565 +# CONFIG_EXPORTFS is not set
   6.566 +CONFIG_SUNRPC=y
   6.567 +# CONFIG_SMB_FS is not set
   6.568 +# CONFIG_CIFS is not set
   6.569 +# CONFIG_NCP_FS is not set
   6.570 +# CONFIG_CODA_FS is not set
   6.571 +
   6.572 +#
   6.573 +# Partition Types
   6.574 +#
   6.575 +# CONFIG_PARTITION_ADVANCED is not set
   6.576 +CONFIG_MSDOS_PARTITION=y
   6.577 +
   6.578 +#
   6.579 +# Native Language Support
   6.580 +#
   6.581 +CONFIG_NLS=y
   6.582 +CONFIG_NLS_DEFAULT="iso8859-1"
   6.583 +CONFIG_NLS_CODEPAGE_437=y
   6.584 +# CONFIG_NLS_CODEPAGE_737 is not set
   6.585 +# CONFIG_NLS_CODEPAGE_775 is not set
   6.586 +# CONFIG_NLS_CODEPAGE_850 is not set
   6.587 +# CONFIG_NLS_CODEPAGE_852 is not set
   6.588 +# CONFIG_NLS_CODEPAGE_855 is not set
   6.589 +# CONFIG_NLS_CODEPAGE_857 is not set
   6.590 +# CONFIG_NLS_CODEPAGE_860 is not set
   6.591 +# CONFIG_NLS_CODEPAGE_861 is not set
   6.592 +# CONFIG_NLS_CODEPAGE_862 is not set
   6.593 +# CONFIG_NLS_CODEPAGE_863 is not set
   6.594 +# CONFIG_NLS_CODEPAGE_864 is not set
   6.595 +# CONFIG_NLS_CODEPAGE_865 is not set
   6.596 +# CONFIG_NLS_CODEPAGE_866 is not set
   6.597 +# CONFIG_NLS_CODEPAGE_869 is not set
   6.598 +# CONFIG_NLS_CODEPAGE_936 is not set
   6.599 +# CONFIG_NLS_CODEPAGE_950 is not set
   6.600 +# CONFIG_NLS_CODEPAGE_932 is not set
   6.601 +# CONFIG_NLS_CODEPAGE_949 is not set
   6.602 +# CONFIG_NLS_CODEPAGE_874 is not set
   6.603 +# CONFIG_NLS_ISO8859_8 is not set
   6.604 +# CONFIG_NLS_CODEPAGE_1250 is not set
   6.605 +# CONFIG_NLS_CODEPAGE_1251 is not set
   6.606 +CONFIG_NLS_ISO8859_1=y
   6.607 +# CONFIG_NLS_ISO8859_2 is not set
   6.608 +# CONFIG_NLS_ISO8859_3 is not set
   6.609 +# CONFIG_NLS_ISO8859_4 is not set
   6.610 +# CONFIG_NLS_ISO8859_5 is not set
   6.611 +# CONFIG_NLS_ISO8859_6 is not set
   6.612 +# CONFIG_NLS_ISO8859_7 is not set
   6.613 +# CONFIG_NLS_ISO8859_9 is not set
   6.614 +# CONFIG_NLS_ISO8859_13 is not set
   6.615 +# CONFIG_NLS_ISO8859_14 is not set
   6.616 +# CONFIG_NLS_ISO8859_15 is not set
   6.617 +# CONFIG_NLS_KOI8_R is not set
   6.618 +# CONFIG_NLS_KOI8_U is not set
   6.619 +# CONFIG_NLS_UTF8 is not set
   6.620 +
   6.621 +#
   6.622 +# Security options
   6.623 +#
   6.624 +# CONFIG_SECURITY is not set
   6.625 +
   6.626 +#
   6.627 +# Cryptographic options
   6.628 +#
   6.629 +# CONFIG_CRYPTO is not set
   6.630 +
   6.631 +#
   6.632 +# Library routines
   6.633 +#
   6.634 +CONFIG_CRC32=y
   6.635 +CONFIG_LIBCRC32C=y
     7.1 --- a/linux-2.6.7-xen-sparse/arch/xen/configs/xenU_defconfig	Mon Jul 26 20:03:34 2004 +0000
     7.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/configs/xenU_defconfig	Tue Jul 27 10:24:42 2004 +0000
     7.3 @@ -3,6 +3,15 @@
     7.4  #
     7.5  CONFIG_XEN=y
     7.6  CONFIG_ARCH_XEN=y
     7.7 +CONFIG_NO_IDLE_HZ=y
     7.8 +
     7.9 +#
    7.10 +# XEN
    7.11 +#
    7.12 +# CONFIG_XEN_PRIVILEGED_GUEST is not set
    7.13 +# CONFIG_XEN_PHYSDEV_ACCESS is not set
    7.14 +CONFIG_X86=y
    7.15 +# CONFIG_X86_64 is not set
    7.16  
    7.17  #
    7.18  # Code maturity level options
    7.19 @@ -43,8 +52,6 @@ CONFIG_MODULE_UNLOAD=y
    7.20  CONFIG_OBSOLETE_MODPARM=y
    7.21  # CONFIG_MODVERSIONS is not set
    7.22  CONFIG_KMOD=y
    7.23 -CONFIG_X86=y
    7.24 -# CONFIG_X86_64 is not set
    7.25  
    7.26  #
    7.27  # X86 Processor Configuration
     8.1 --- a/linux-2.6.7-xen-sparse/arch/xen/i386/Kconfig	Mon Jul 26 20:03:34 2004 +0000
     8.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/i386/Kconfig	Tue Jul 27 10:24:42 2004 +0000
     8.3 @@ -626,6 +626,154 @@ config REGPARM
     8.4  	-mregparm=3 is used.
     8.5  
     8.6  
     8.7 +if XEN_PHYSDEV_ACCESS
     8.8 +
     8.9 +menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
    8.10 +
    8.11 +config X86_VISWS_APIC
    8.12 +	bool
    8.13 +	depends on X86_VISWS
    8.14 +	default y
    8.15 +
    8.16 +config X86_LOCAL_APIC
    8.17 +	bool
    8.18 +	depends on (X86_VISWS || SMP) && !X86_VOYAGER
    8.19 +	default y
    8.20 +
    8.21 +config X86_IO_APIC
    8.22 +	bool
    8.23 +	depends on SMP && !(X86_VISWS || X86_VOYAGER)
    8.24 +	default y
    8.25 +
    8.26 +config PCI
    8.27 +	bool "PCI support" if !X86_VISWS
    8.28 +	depends on !X86_VOYAGER
    8.29 +	default y if X86_VISWS
    8.30 +	help
    8.31 +	  Find out whether you have a PCI motherboard. PCI is the name of a
    8.32 +	  bus system, i.e. the way the CPU talks to the other stuff inside
    8.33 +	  your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
    8.34 +	  VESA. If you have PCI, say Y, otherwise N.
    8.35 +
    8.36 +	  The PCI-HOWTO, available from
    8.37 +	  <http://www.tldp.org/docs.html#howto>, contains valuable
    8.38 +	  information about which PCI hardware does work under Linux and which
    8.39 +	  doesn't.
    8.40 +
    8.41 +choice
    8.42 +	prompt "PCI access mode"
    8.43 +	depends on PCI && !X86_VISWS
    8.44 +	default PCI_GOANY
    8.45 +	---help---
    8.46 +	  On PCI systems, the BIOS can be used to detect the PCI devices and
    8.47 +	  determine their configuration. However, some old PCI motherboards
    8.48 +	  have BIOS bugs and may crash if this is done. Also, some embedded
    8.49 +	  PCI-based systems don't have any BIOS at all. Linux can also try to
    8.50 +	  detect the PCI hardware directly without using the BIOS.
    8.51 +
    8.52 +	  With this option, you can specify how Linux should detect the
    8.53 +	  PCI devices. If you choose "BIOS", the BIOS will be used,
    8.54 +	  if you choose "Direct", the BIOS won't be used, and if you
    8.55 +	  choose "MMConfig", then PCI Express MMCONFIG will be used.
    8.56 +	  If you choose "Any", the kernel will try MMCONFIG, then the
    8.57 +	  direct access method and falls back to the BIOS if that doesn't
    8.58 +	  work. If unsure, go with the default, which is "Any".
    8.59 +
    8.60 +config PCI_GOBIOS
    8.61 +	bool "BIOS"
    8.62 +
    8.63 +config PCI_GOMMCONFIG
    8.64 +	bool "MMConfig"
    8.65 +
    8.66 +config PCI_GODIRECT
    8.67 +	bool "Direct"
    8.68 +
    8.69 +config PCI_GOANY
    8.70 +	bool "Any"
    8.71 +
    8.72 +endchoice
    8.73 +
    8.74 +config PCI_BIOS
    8.75 +	bool
    8.76 +	depends on !X86_VISWS && PCI && (PCI_GOBIOS || PCI_GOANY)
    8.77 +	default y
    8.78 +
    8.79 +config PCI_DIRECT
    8.80 +	bool
    8.81 + 	depends on PCI && ((PCI_GODIRECT || PCI_GOANY) || X86_VISWS)
    8.82 +	default y
    8.83 +
    8.84 +config PCI_MMCONFIG
    8.85 +	bool
    8.86 +	depends on PCI && (PCI_GOMMCONFIG || PCI_GOANY)
    8.87 +	select ACPI_BOOT
    8.88 +	default y
    8.89 +
    8.90 +source "drivers/pci/Kconfig"
    8.91 +
    8.92 +config ISA
    8.93 +	bool "ISA support"
    8.94 +	depends on !(X86_VOYAGER || X86_VISWS)
    8.95 +	help
    8.96 +	  Find out whether you have ISA slots on your motherboard.  ISA is the
    8.97 +	  name of a bus system, i.e. the way the CPU talks to the other stuff
    8.98 +	  inside your box.  Other bus systems are PCI, EISA, MicroChannel
    8.99 +	  (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
   8.100 +	  newer boards don't support it.  If you have ISA, say Y, otherwise N.
   8.101 +
   8.102 +config EISA
   8.103 +	bool "EISA support"
   8.104 +	depends on ISA
   8.105 +	---help---
   8.106 +	  The Extended Industry Standard Architecture (EISA) bus was
   8.107 +	  developed as an open alternative to the IBM MicroChannel bus.
   8.108 +
   8.109 +	  The EISA bus provided some of the features of the IBM MicroChannel
   8.110 +	  bus while maintaining backward compatibility with cards made for
   8.111 +	  the older ISA bus.  The EISA bus saw limited use between 1988 and
   8.112 +	  1995 when it was made obsolete by the PCI bus.
   8.113 +
   8.114 +	  Say Y here if you are building a kernel for an EISA-based machine.
   8.115 +
   8.116 +	  Otherwise, say N.
   8.117 +
   8.118 +source "drivers/eisa/Kconfig"
   8.119 +
   8.120 +config MCA
   8.121 +	bool "MCA support"
   8.122 +	depends on !(X86_VISWS || X86_VOYAGER)
   8.123 +	help
   8.124 +	  MicroChannel Architecture is found in some IBM PS/2 machines and
   8.125 +	  laptops.  It is a bus system similar to PCI or ISA. See
   8.126 +	  <file:Documentation/mca.txt> (and especially the web page given
   8.127 +	  there) before attempting to build an MCA bus kernel.
   8.128 +
   8.129 +config MCA
   8.130 +	depends on X86_VOYAGER
   8.131 +	default y if X86_VOYAGER
   8.132 +
   8.133 +source "drivers/mca/Kconfig"
   8.134 +
   8.135 +config SCx200
   8.136 +	tristate "NatSemi SCx200 support"
   8.137 +	depends on !X86_VOYAGER
   8.138 +	help
   8.139 +	  This provides basic support for the National Semiconductor SCx200 
   8.140 +	  processor.  Right now this is just a driver for the GPIO pins.
   8.141 +
   8.142 +	  If you don't know what to do here, say N.
   8.143 +
   8.144 +	  This support is also available as a module.  If compiled as a
   8.145 +	  module, it will be called scx200.
   8.146 +
   8.147 +source "drivers/pcmcia/Kconfig"
   8.148 +
   8.149 +source "drivers/pci/hotplug/Kconfig"
   8.150 +
   8.151 +endmenu
   8.152 +
   8.153 +endif
   8.154 +
   8.155  menu "Kernel hacking"
   8.156  
   8.157  config DEBUG_KERNEL
     9.1 --- a/linux-2.6.7-xen-sparse/arch/xen/i386/kernel/setup.c	Mon Jul 26 20:03:34 2004 +0000
     9.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/i386/kernel/setup.c	Tue Jul 27 10:24:42 2004 +0000
     9.3 @@ -1126,6 +1126,16 @@ void __init setup_arch(char **cmdline_p)
     9.4  	}
     9.5  	aux_device_present = AUX_DEVICE_INFO;
     9.6  
     9.7 +#ifdef CONFIG_XEN_PHYSDEV_ACCESS
     9.8 +	/* This is drawn from a dump from vgacon:startup in standard Linux. */
     9.9 +	screen_info.orig_video_mode = 3; 
    9.10 +	screen_info.orig_video_isVGA = 1;
    9.11 +	screen_info.orig_video_lines = 25;
    9.12 +	screen_info.orig_video_cols = 80;
    9.13 +	screen_info.orig_video_ega_bx = 3;
    9.14 +	screen_info.orig_video_points = 16;
    9.15 +#endif
    9.16 +
    9.17  #ifdef CONFIG_BLK_DEV_RAM
    9.18  	rd_image_start = RAMDISK_FLAGS & RAMDISK_IMAGE_START_MASK;
    9.19  	rd_prompt = ((RAMDISK_FLAGS & RAMDISK_PROMPT_FLAG) != 0);
    10.1 --- a/linux-2.6.7-xen-sparse/arch/xen/i386/mm/Makefile	Mon Jul 26 20:03:34 2004 +0000
    10.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/i386/mm/Makefile	Tue Jul 27 10:24:42 2004 +0000
    10.3 @@ -6,8 +6,8 @@ XENARCH	:= $(subst ",,$(CONFIG_XENARCH))
    10.4  
    10.5  CFLAGS	+= -Iarch/$(XENARCH)/mm
    10.6  
    10.7 -obj-y	:= init.o fault.o pgtable.o hypervisor.o
    10.8 -c-obj-y	:= ioremap.o extable.o pageattr.o 
    10.9 +obj-y	:= init.o fault.o ioremap.o pgtable.o hypervisor.o
   10.10 +c-obj-y	:= extable.o pageattr.o 
   10.11  
   10.12  c-obj-$(CONFIG_DISCONTIGMEM)	+= discontig.o
   10.13  c-obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o
    11.1 --- a/linux-2.6.7-xen-sparse/arch/xen/i386/mm/init.c	Mon Jul 26 20:03:34 2004 +0000
    11.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/i386/mm/init.c	Tue Jul 27 10:24:42 2004 +0000
    11.3 @@ -458,6 +458,10 @@ extern void zone_sizes_init(void);
    11.4   */
    11.5  void __init paging_init(void)
    11.6  {
    11.7 +#ifdef CONFIG_XEN_PHYSDEV_ACCESS
    11.8 +	int i;
    11.9 +#endif
   11.10 +
   11.11  	pagetable_init();
   11.12  
   11.13  	wrprotect_bootpt((pgd_t *)start_info.pt_base, swapper_pg_dir, 1);
   11.14 @@ -494,6 +498,12 @@ void __init paging_init(void)
   11.15  	set_fixmap_ma(FIX_SHARED_INFO, start_info.shared_info);
   11.16  	HYPERVISOR_shared_info = (shared_info_t *)fix_to_virt(FIX_SHARED_INFO);
   11.17  	memset(empty_zero_page, 0, sizeof(empty_zero_page));
   11.18 +
   11.19 +#ifdef CONFIG_XEN_PHYSDEV_ACCESS
   11.20 +	/* Setup mapping of lower 1st MB */
   11.21 +	for (i = 0; i < NR_FIX_ISAMAPS; i++)
   11.22 +		set_fixmap_ma(FIX_ISAMAP_BEGIN - i, i * PAGE_SIZE);
   11.23 +#endif
   11.24  }
   11.25  
   11.26  /*
    12.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/i386/mm/ioremap.c	Tue Jul 27 10:24:42 2004 +0000
    12.3 @@ -0,0 +1,318 @@
    12.4 +/*
    12.5 + * arch/i386/mm/ioremap.c
    12.6 + *
    12.7 + * Re-map IO memory to kernel address space so that we can access it.
    12.8 + * This is needed for high PCI addresses that aren't mapped in the
    12.9 + * 640k-1MB IO memory area on PC's
   12.10 + *
   12.11 + * (C) Copyright 1995 1996 Linus Torvalds
   12.12 + */
   12.13 +
   12.14 +#include <linux/vmalloc.h>
   12.15 +#include <linux/init.h>
   12.16 +#include <linux/slab.h>
   12.17 +#include <asm/io.h>
   12.18 +#include <asm/pgalloc.h>
   12.19 +#include <asm/fixmap.h>
   12.20 +#include <asm/cacheflush.h>
   12.21 +#include <asm/tlbflush.h>
   12.22 +#include <asm/pgtable.h>
   12.23 +
   12.24 +static inline void remap_area_pte(pte_t * pte, unsigned long address, unsigned long size,
   12.25 +	unsigned long phys_addr, unsigned long flags)
   12.26 +{
   12.27 +	unsigned long end;
   12.28 +	unsigned long pfn;
   12.29 +
   12.30 +	address &= ~PMD_MASK;
   12.31 +	end = address + size;
   12.32 +	if (end > PMD_SIZE)
   12.33 +		end = PMD_SIZE;
   12.34 +	if (address >= end)
   12.35 +		BUG();
   12.36 +	pfn = phys_addr >> PAGE_SHIFT;
   12.37 +	do {
   12.38 +		if (!pte_none(*pte)) {
   12.39 +			printk("remap_area_pte: page already exists\n");
   12.40 +			BUG();
   12.41 +		}
   12.42 +		set_pte(pte, pfn_pte_ma(pfn, __pgprot(_PAGE_PRESENT | _PAGE_RW | 
   12.43 +					_PAGE_DIRTY | _PAGE_ACCESSED | flags)));
   12.44 +		address += PAGE_SIZE;
   12.45 +		pfn++;
   12.46 +		pte++;
   12.47 +	} while (address && (address < end));
   12.48 +}
   12.49 +
   12.50 +static inline int remap_area_pmd(pmd_t * pmd, unsigned long address, unsigned long size,
   12.51 +	unsigned long phys_addr, unsigned long flags)
   12.52 +{
   12.53 +	unsigned long end;
   12.54 +
   12.55 +	address &= ~PGDIR_MASK;
   12.56 +	end = address + size;
   12.57 +	if (end > PGDIR_SIZE)
   12.58 +		end = PGDIR_SIZE;
   12.59 +	phys_addr -= address;
   12.60 +	if (address >= end)
   12.61 +		BUG();
   12.62 +	do {
   12.63 +		pte_t * pte = pte_alloc_kernel(&init_mm, pmd, address);
   12.64 +		if (!pte)
   12.65 +			return -ENOMEM;
   12.66 +		remap_area_pte(pte, address, end - address, address + phys_addr, flags);
   12.67 +		address = (address + PMD_SIZE) & PMD_MASK;
   12.68 +		pmd++;
   12.69 +	} while (address && (address < end));
   12.70 +	return 0;
   12.71 +}
   12.72 +
   12.73 +static int remap_area_pages(unsigned long address, unsigned long phys_addr,
   12.74 +				 unsigned long size, unsigned long flags)
   12.75 +{
   12.76 +	int error;
   12.77 +	pgd_t * dir;
   12.78 +	unsigned long end = address + size;
   12.79 +
   12.80 +	phys_addr -= address;
   12.81 +	dir = pgd_offset(&init_mm, address);
   12.82 +	flush_cache_all();
   12.83 +	if (address >= end)
   12.84 +		BUG();
   12.85 +	spin_lock(&init_mm.page_table_lock);
   12.86 +	do {
   12.87 +		pmd_t *pmd;
   12.88 +		pmd = pmd_alloc(&init_mm, dir, address);
   12.89 +		error = -ENOMEM;
   12.90 +		if (!pmd)
   12.91 +			break;
   12.92 +		if (remap_area_pmd(pmd, address, end - address,
   12.93 +					 phys_addr + address, flags))
   12.94 +			break;
   12.95 +		error = 0;
   12.96 +		address = (address + PGDIR_SIZE) & PGDIR_MASK;
   12.97 +		dir++;
   12.98 +	} while (address && (address < end));
   12.99 +	spin_unlock(&init_mm.page_table_lock);
  12.100 +	flush_tlb_all();
  12.101 +	return error;
  12.102 +}
  12.103 +
  12.104 +/*
  12.105 + * Generic mapping function (not visible outside):
  12.106 + */
  12.107 +
  12.108 +/*
  12.109 + * Remap an arbitrary physical address space into the kernel virtual
  12.110 + * address space. Needed when the kernel wants to access high addresses
  12.111 + * directly.
  12.112 + *
  12.113 + * NOTE! We need to allow non-page-aligned mappings too: we will obviously
  12.114 + * have to convert them into an offset in a page-aligned mapping, but the
  12.115 + * caller shouldn't need to know that small detail.
  12.116 + */
  12.117 +void * __ioremap(unsigned long phys_addr, unsigned long size, unsigned long flags)
  12.118 +{
  12.119 +	void * addr;
  12.120 +	struct vm_struct * area;
  12.121 +	unsigned long offset, last_addr;
  12.122 +
  12.123 +	/* Don't allow wraparound or zero size */
  12.124 +	last_addr = phys_addr + size - 1;
  12.125 +	if (!size || last_addr < phys_addr)
  12.126 +		return NULL;
  12.127 +
  12.128 +        if (phys_addr >= 0x0 && last_addr < 0x100000)
  12.129 +                return isa_bus_to_virt(phys_addr);
  12.130 +
  12.131 +	/*
  12.132 +	 * Don't remap the low PCI/ISA area, it's always mapped..
  12.133 +	 */
  12.134 +	if (phys_addr >= 0xA0000 && last_addr < 0x100000)
  12.135 +		return phys_to_virt(phys_addr);
  12.136 +
  12.137 +	/*
  12.138 +	 * Don't allow anybody to remap normal RAM that we're using..
  12.139 +	 */
  12.140 +	if (phys_addr < virt_to_phys(high_memory)) {
  12.141 +		char *t_addr, *t_end;
  12.142 +		struct page *page;
  12.143 +
  12.144 +		t_addr = __va(phys_addr);
  12.145 +		t_end = t_addr + (size - 1);
  12.146 +	   
  12.147 +		for(page = virt_to_page(t_addr); page <= virt_to_page(t_end); page++)
  12.148 +			if(!PageReserved(page))
  12.149 +				return NULL;
  12.150 +	}
  12.151 +
  12.152 +	/*
  12.153 +	 * Mappings have to be page-aligned
  12.154 +	 */
  12.155 +	offset = phys_addr & ~PAGE_MASK;
  12.156 +	phys_addr &= PAGE_MASK;
  12.157 +	size = PAGE_ALIGN(last_addr+1) - phys_addr;
  12.158 +
  12.159 +	/*
  12.160 +	 * Ok, go for it..
  12.161 +	 */
  12.162 +	area = get_vm_area(size, VM_IOREMAP);
  12.163 +	if (!area)
  12.164 +		return NULL;
  12.165 +	area->phys_addr = phys_addr;
  12.166 +	addr = area->addr;
  12.167 +	if (remap_area_pages((unsigned long) addr, phys_addr, size, flags)) {
  12.168 +		vunmap(addr);
  12.169 +		return NULL;
  12.170 +	}
  12.171 +	return (void *) (offset + (char *)addr);
  12.172 +}
  12.173 +
  12.174 +
  12.175 +/**
  12.176 + * ioremap_nocache     -   map bus memory into CPU space
  12.177 + * @offset:    bus address of the memory
  12.178 + * @size:      size of the resource to map
  12.179 + *
  12.180 + * ioremap_nocache performs a platform specific sequence of operations to
  12.181 + * make bus memory CPU accessible via the readb/readw/readl/writeb/
  12.182 + * writew/writel functions and the other mmio helpers. The returned
  12.183 + * address is not guaranteed to be usable directly as a virtual
  12.184 + * address. 
  12.185 + *
  12.186 + * This version of ioremap ensures that the memory is marked uncachable
  12.187 + * on the CPU as well as honouring existing caching rules from things like
  12.188 + * the PCI bus. Note that there are other caches and buffers on many 
  12.189 + * busses. In particular driver authors should read up on PCI writes
  12.190 + *
  12.191 + * It's useful if some control registers are in such an area and
  12.192 + * write combining or read caching is not desirable:
  12.193 + * 
  12.194 + * Must be freed with iounmap.
  12.195 + */
  12.196 +
  12.197 +void *ioremap_nocache (unsigned long phys_addr, unsigned long size)
  12.198 +{
  12.199 +	unsigned long last_addr;
  12.200 +	void *p = __ioremap(phys_addr, size, _PAGE_PCD);
  12.201 +	if (!p) 
  12.202 +		return p; 
  12.203 +
  12.204 +	/* Guaranteed to be > phys_addr, as per __ioremap() */
  12.205 +	last_addr = phys_addr + size - 1;
  12.206 +
  12.207 +	if (last_addr < virt_to_phys(high_memory)) { 
  12.208 +		struct page *ppage = virt_to_page(__va(phys_addr));		
  12.209 +		unsigned long npages;
  12.210 +
  12.211 +		phys_addr &= PAGE_MASK;
  12.212 +
  12.213 +		/* This might overflow and become zero.. */
  12.214 +		last_addr = PAGE_ALIGN(last_addr);
  12.215 +
  12.216 +		/* .. but that's ok, because modulo-2**n arithmetic will make
  12.217 +	 	* the page-aligned "last - first" come out right.
  12.218 +	 	*/
  12.219 +		npages = (last_addr - phys_addr) >> PAGE_SHIFT;
  12.220 +
  12.221 +		if (change_page_attr(ppage, npages, PAGE_KERNEL_NOCACHE) < 0) { 
  12.222 +			iounmap(p); 
  12.223 +			p = NULL;
  12.224 +		}
  12.225 +		global_flush_tlb();
  12.226 +	}
  12.227 +
  12.228 +	return p;					
  12.229 +}
  12.230 +
  12.231 +void iounmap(void *addr)
  12.232 +{
  12.233 +	struct vm_struct *p;
  12.234 +        if ((unsigned long)addr <= 0x100000)
  12.235 +                return;
  12.236 +	if (addr <= high_memory) 
  12.237 +		return; 
  12.238 +	p = remove_vm_area((void *) (PAGE_MASK & (unsigned long) addr));
  12.239 +	if (!p) { 
  12.240 +		printk("__iounmap: bad address %p\n", addr);
  12.241 +		return;
  12.242 +	} 
  12.243 +
  12.244 +	if (p->flags && p->phys_addr < virt_to_phys(high_memory)) { 
  12.245 +		change_page_attr(virt_to_page(__va(p->phys_addr)),
  12.246 +				 p->size >> PAGE_SHIFT,
  12.247 +				 PAGE_KERNEL); 				 
  12.248 +		global_flush_tlb();
  12.249 +	} 
  12.250 +	kfree(p); 
  12.251 +}
  12.252 +
  12.253 +void __init *bt_ioremap(unsigned long phys_addr, unsigned long size)
  12.254 +{
  12.255 +	unsigned long offset, last_addr;
  12.256 +	unsigned int nrpages;
  12.257 +	enum fixed_addresses idx;
  12.258 +
  12.259 +	/* Don't allow wraparound or zero size */
  12.260 +	last_addr = phys_addr + size - 1;
  12.261 +	if (!size || last_addr < phys_addr)
  12.262 +		return NULL;
  12.263 +
  12.264 +        if (phys_addr >= 0x0 && last_addr < 0x100000)
  12.265 +                return isa_bus_to_virt(phys_addr);
  12.266 +
  12.267 +	/*
  12.268 +	 * Don't remap the low PCI/ISA area, it's always mapped..
  12.269 +	 */
  12.270 +	if (phys_addr >= 0xA0000 && last_addr < 0x100000)
  12.271 +		return phys_to_virt(phys_addr);
  12.272 +
  12.273 +	/*
  12.274 +	 * Mappings have to be page-aligned
  12.275 +	 */
  12.276 +	offset = phys_addr & ~PAGE_MASK;
  12.277 +	phys_addr &= PAGE_MASK;
  12.278 +	size = PAGE_ALIGN(last_addr) - phys_addr;
  12.279 +
  12.280 +	/*
  12.281 +	 * Mappings have to fit in the FIX_BTMAP area.
  12.282 +	 */
  12.283 +	nrpages = size >> PAGE_SHIFT;
  12.284 +	if (nrpages > NR_FIX_BTMAPS)
  12.285 +		return NULL;
  12.286 +
  12.287 +	/*
  12.288 +	 * Ok, go for it..
  12.289 +	 */
  12.290 +	idx = FIX_BTMAP_BEGIN;
  12.291 +	while (nrpages > 0) {
  12.292 +		set_fixmap_ma(idx, phys_addr);
  12.293 +		phys_addr += PAGE_SIZE;
  12.294 +		--idx;
  12.295 +		--nrpages;
  12.296 +	}
  12.297 +	return (void*) (offset + fix_to_virt(FIX_BTMAP_BEGIN));
  12.298 +}
  12.299 +
  12.300 +void __init bt_iounmap(void *addr, unsigned long size)
  12.301 +{
  12.302 +	unsigned long virt_addr;
  12.303 +	unsigned long offset;
  12.304 +	unsigned int nrpages;
  12.305 +	enum fixed_addresses idx;
  12.306 +
  12.307 +	virt_addr = (unsigned long)addr;
  12.308 +        if (virt_addr < 0x100000)
  12.309 +                return;
  12.310 +	if (virt_addr < fix_to_virt(FIX_BTMAP_BEGIN))
  12.311 +		return;
  12.312 +	offset = virt_addr & ~PAGE_MASK;
  12.313 +	nrpages = PAGE_ALIGN(offset + size - 1) >> PAGE_SHIFT;
  12.314 +
  12.315 +	idx = FIX_BTMAP_BEGIN;
  12.316 +	while (nrpages > 0) {
  12.317 +		clear_fixmap(idx);
  12.318 +		--idx;
  12.319 +		--nrpages;
  12.320 +	}
  12.321 +}
    13.1 --- a/linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/fixmap.h	Mon Jul 26 20:03:34 2004 +0000
    13.2 +++ b/linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/fixmap.h	Tue Jul 27 10:24:42 2004 +0000
    13.3 @@ -75,6 +75,11 @@ enum fixed_addresses {
    13.4  	FIX_PCIE_MCFG,
    13.5  #endif
    13.6  	FIX_SHARED_INFO,
    13.7 +#ifdef CONFIG_XEN_PHYSDEV_ACCESS
    13.8 +#define NR_FIX_ISAMAPS	256
    13.9 +	FIX_ISAMAP_END,
   13.10 +	FIX_ISAMAP_BEGIN = FIX_ISAMAP_END + NR_FIX_ISAMAPS - 1,
   13.11 +#endif
   13.12  	__end_of_permanent_fixed_addresses,
   13.13  	/* temporary boot-time mappings, used before ioremap() is functional */
   13.14  #define NR_FIX_BTMAPS	16
    14.1 --- a/linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/io.h	Mon Jul 26 20:03:34 2004 +0000
    14.2 +++ b/linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/io.h	Tue Jul 27 10:24:42 2004 +0000
    14.3 @@ -44,6 +44,7 @@
    14.4  #ifdef __KERNEL__
    14.5  
    14.6  #include <linux/vmalloc.h>
    14.7 +#include <asm/fixmap.h>
    14.8  
    14.9  /**
   14.10   *	virt_to_phys	-	map virtual addresses to physical
   14.11 @@ -119,9 +120,13 @@ extern void bt_iounmap(void *addr, unsig
   14.12  /*
   14.13   * ISA I/O bus memory addresses are 1:1 with the physical address.
   14.14   */
   14.15 -#define isa_virt_to_bus(_x) phys_to_machine(virt_to_phys(_x))
   14.16 -#define isa_page_to_bus(_x) phys_to_machine(page_to_phys(_x))
   14.17 -#define isa_bus_to_virt(_x) phys_to_virt(machine_to_phys(_x))
   14.18 +#define isa_virt_to_bus(_x) BUG() // should be (void *)((FIX_ISAMAP_BEGIN - __virt_to_fix((_x))) << PAGE_SHIFT)
   14.19 +#define isa_page_to_bus(_x) BUG()  // page_to_phys(_x)
   14.20 +#ifdef CONFIG_XEN_PHYSDEV_ACCESS
   14.21 +#define isa_bus_to_virt(_x) (void *)__fix_to_virt(FIX_ISAMAP_BEGIN - ((_x) >> PAGE_SHIFT))
   14.22 +#else
   14.23 +#define isa_bus_to_virt(_x) (void *)0L /* XXXcl */
   14.24 +#endif
   14.25  
   14.26  /*
   14.27   * However PCI ones are not necessarily 1:1 and therefore these interfaces
    15.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.2 +++ b/linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/mach-xen/pci-functions.h	Tue Jul 27 10:24:42 2004 +0000
    15.3 @@ -0,0 +1,19 @@
    15.4 +/*
    15.5 + *	PCI BIOS function numbering for conventional PCI BIOS 
    15.6 + *	systems
    15.7 + */
    15.8 +
    15.9 +#define PCIBIOS_PCI_FUNCTION_ID 	0xb1XX
   15.10 +#define PCIBIOS_PCI_BIOS_PRESENT 	0xb101
   15.11 +#define PCIBIOS_FIND_PCI_DEVICE		0xb102
   15.12 +#define PCIBIOS_FIND_PCI_CLASS_CODE	0xb103
   15.13 +#define PCIBIOS_GENERATE_SPECIAL_CYCLE	0xb106
   15.14 +#define PCIBIOS_READ_CONFIG_BYTE	0xb108
   15.15 +#define PCIBIOS_READ_CONFIG_WORD	0xb109
   15.16 +#define PCIBIOS_READ_CONFIG_DWORD	0xb10a
   15.17 +#define PCIBIOS_WRITE_CONFIG_BYTE	0xb10b
   15.18 +#define PCIBIOS_WRITE_CONFIG_WORD	0xb10c
   15.19 +#define PCIBIOS_WRITE_CONFIG_DWORD	0xb10d
   15.20 +#define PCIBIOS_GET_ROUTING_OPTIONS	0xb10e
   15.21 +#define PCIBIOS_SET_PCI_HW_INT		0xb10f
   15.22 +
    16.1 --- a/linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/tlbflush.h	Mon Jul 26 20:03:34 2004 +0000
    16.2 +++ b/linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/tlbflush.h	Tue Jul 27 10:24:42 2004 +0000
    16.3 @@ -16,17 +16,8 @@
    16.4   */
    16.5  #define __flush_tlb_global()						\
    16.6  	do {								\
    16.7 -		unsigned int tmpreg;					\
    16.8 -									\
    16.9 -		__asm__ __volatile__(					\
   16.10 -			"movl %1, %%cr4;  # turn off PGE     \n"	\
   16.11 -			"movl %%cr3, %0;                     \n"	\
   16.12 -			"movl %0, %%cr3;  # flush TLB        \n"	\
   16.13 -			"movl %2, %%cr4;  # turn PGE back on \n"	\
   16.14 -			: "=&r" (tmpreg)				\
   16.15 -			: "r" (mmu_cr4_features & ~X86_CR4_PGE),	\
   16.16 -			  "r" (mmu_cr4_features)			\
   16.17 -			: "memory");					\
   16.18 +		queue_tlb_flush();					\
   16.19 +		xen_flush_page_update_queue();				\
   16.20  	} while (0)
   16.21  
   16.22  extern unsigned long pgkern_mask;
    17.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    17.2 +++ b/linux-2.6.7-xen-sparse/include/asm-xen/asm-i386/vga.h	Tue Jul 27 10:24:42 2004 +0000
    17.3 @@ -0,0 +1,20 @@
    17.4 +/*
    17.5 + *	Access to VGA videoram
    17.6 + *
    17.7 + *	(c) 1998 Martin Mares <mj@ucw.cz>
    17.8 + */
    17.9 +
   17.10 +#ifndef _LINUX_ASM_VGA_H_
   17.11 +#define _LINUX_ASM_VGA_H_
   17.12 +
   17.13 +/*
   17.14 + *	On the PC, we can just recalculate addresses and then
   17.15 + *	access the videoram directly without any black magic.
   17.16 + */
   17.17 +
   17.18 +#define VGA_MAP_MEM(x) (unsigned long)isa_bus_to_virt(x)
   17.19 +
   17.20 +#define vga_readb(x) (*(x))
   17.21 +#define vga_writeb(x,y) (*(y) = (x))
   17.22 +
   17.23 +#endif