direct-io.hg

changeset 15100:fc0a9a40f151

[IA64] Switch to CONFIG_IA64_GENERIC config and wire in Xen machine vector

This enables the switch to the generic flavor ia64 kernel for the -xen
and -xen0 kernels. -xenU is changed to a CONFIG_IA64_XEN build.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
author Alex Williamson <alex.williamson@hp.com>
date Mon May 07 08:54:56 2007 -0600 (2007-05-07)
parents 3b3f00d42dc4
children 423055a4c972
files buildconfigs/linux-defconfig_xen0_ia64 buildconfigs/linux-defconfig_xenU_ia64 buildconfigs/linux-defconfig_xen_ia64 linux-2.6-xen-sparse/arch/ia64/xen/Makefile linux-2.6-xen-sparse/include/asm-ia64/dma-mapping.h linux-2.6-xen-sparse/include/asm-ia64/machvec_dig.h linux-2.6-xen-sparse/lib/Makefile
line diff
     1.1 --- a/buildconfigs/linux-defconfig_xen0_ia64	Mon May 07 08:52:12 2007 -0600
     1.2 +++ b/buildconfigs/linux-defconfig_xen0_ia64	Mon May 07 08:54:56 2007 -0600
     1.3 @@ -1,8 +1,9 @@
     1.4  #
     1.5  # Automatically generated make config: don't edit
     1.6 -# Linux kernel version: 2.6.18-xen0
     1.7 -# Mon Jan 29 10:16:18 2007
     1.8 +# Linux kernel version: 2.6.18
     1.9 +# Sun May  6 20:45:43 2007
    1.10  #
    1.11 +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
    1.12  
    1.13  #
    1.14  # Code maturity level options
    1.15 @@ -99,12 +100,13 @@ CONFIG_XEN_IA64_EXPOSE_P2M_USE_DTR=y
    1.16  CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
    1.17  CONFIG_DMA_IS_DMA32=y
    1.18  CONFIG_AUDIT_ARCH=y
    1.19 -# CONFIG_IA64_GENERIC is not set
    1.20 -CONFIG_IA64_DIG=y
    1.21 +CONFIG_IA64_GENERIC=y
    1.22 +# CONFIG_IA64_DIG is not set
    1.23  # CONFIG_IA64_HP_ZX1 is not set
    1.24  # CONFIG_IA64_HP_ZX1_SWIOTLB is not set
    1.25  # CONFIG_IA64_SGI_SN2 is not set
    1.26  # CONFIG_IA64_HP_SIM is not set
    1.27 +# CONFIG_IA64_XEN is not set
    1.28  # CONFIG_ITANIUM is not set
    1.29  CONFIG_MCKINLEY=y
    1.30  # CONFIG_IA64_PAGE_SIZE_4KB is not set
    1.31 @@ -120,6 +122,7 @@ CONFIG_HZ=100
    1.32  CONFIG_IA64_L1_CACHE_SHIFT=7
    1.33  CONFIG_IA64_CYCLONE=y
    1.34  CONFIG_IOSAPIC=y
    1.35 +# CONFIG_IA64_SGI_SN_XP is not set
    1.36  CONFIG_FORCE_MAX_ZONEORDER=11
    1.37  CONFIG_SMP=y
    1.38  CONFIG_NR_CPUS=16
    1.39 @@ -129,23 +132,37 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
    1.40  # CONFIG_PERMIT_BSP_REMOVE is not set
    1.41  # CONFIG_PREEMPT is not set
    1.42  CONFIG_SELECT_MEMORY_MODEL=y
    1.43 -CONFIG_FLATMEM_MANUAL=y
    1.44 -# CONFIG_DISCONTIGMEM_MANUAL is not set
    1.45 +# CONFIG_FLATMEM_MANUAL is not set
    1.46 +CONFIG_DISCONTIGMEM_MANUAL=y
    1.47  # CONFIG_SPARSEMEM_MANUAL is not set
    1.48 -CONFIG_FLATMEM=y
    1.49 +CONFIG_DISCONTIGMEM=y
    1.50  CONFIG_FLAT_NODE_MEM_MAP=y
    1.51 +CONFIG_NEED_MULTIPLE_NODES=y
    1.52  # CONFIG_SPARSEMEM_STATIC is not set
    1.53  CONFIG_SPLIT_PTLOCK_CPUS=4
    1.54 +# CONFIG_MIGRATION is not set
    1.55  CONFIG_RESOURCES_64BIT=y
    1.56  CONFIG_ARCH_SELECT_MEMORY_MODEL=y
    1.57  CONFIG_ARCH_DISCONTIGMEM_ENABLE=y
    1.58  CONFIG_ARCH_FLATMEM_ENABLE=y
    1.59  CONFIG_ARCH_SPARSEMEM_ENABLE=y
    1.60 -# CONFIG_VIRTUAL_MEM_MAP is not set
    1.61 +CONFIG_ARCH_DISCONTIGMEM_DEFAULT=y
    1.62 +CONFIG_NUMA=y
    1.63 +CONFIG_NODES_SHIFT=10
    1.64 +CONFIG_VIRTUAL_MEM_MAP=y
    1.65 +CONFIG_HOLES_IN_ZONE=y
    1.66 +CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y
    1.67 +CONFIG_HAVE_ARCH_NODEDATA_EXTENSION=y
    1.68  # CONFIG_IA32_SUPPORT is not set
    1.69 -CONFIG_IA64_MCA_RECOVERY=y
    1.70 +# CONFIG_IA64_MCA_RECOVERY is not set
    1.71  CONFIG_PERFMON=y
    1.72  CONFIG_IA64_PALINFO=y
    1.73 +CONFIG_SGI_SN=y
    1.74 +
    1.75 +#
    1.76 +# SN Devices
    1.77 +#
    1.78 +# CONFIG_SGI_IOC3 is not set
    1.79  
    1.80  #
    1.81  # Firmware Drivers
    1.82 @@ -172,6 +189,7 @@ CONFIG_ACPI_FAN=y
    1.83  CONFIG_ACPI_PROCESSOR=y
    1.84  CONFIG_ACPI_HOTPLUG_CPU=y
    1.85  CONFIG_ACPI_THERMAL=y
    1.86 +CONFIG_ACPI_NUMA=y
    1.87  CONFIG_ACPI_BLACKLIST_YEAR=0
    1.88  # CONFIG_ACPI_DEBUG is not set
    1.89  CONFIG_ACPI_EC=y
    1.90 @@ -203,6 +221,7 @@ CONFIG_HOTPLUG_PCI_ACPI=y
    1.91  # CONFIG_HOTPLUG_PCI_ACPI_IBM is not set
    1.92  # CONFIG_HOTPLUG_PCI_CPCI is not set
    1.93  # CONFIG_HOTPLUG_PCI_SHPC is not set
    1.94 +# CONFIG_HOTPLUG_PCI_SGI is not set
    1.95  
    1.96  #
    1.97  # PCCARD (PCMCIA/CardBus) support
    1.98 @@ -747,6 +766,8 @@ CONFIG_SERIAL_NONSTANDARD=y
    1.99  # CONFIG_SX is not set
   1.100  # CONFIG_RIO is not set
   1.101  # CONFIG_STALDRV is not set
   1.102 +# CONFIG_SGI_SNSC is not set
   1.103 +# CONFIG_SGI_TIOCX is not set
   1.104  
   1.105  #
   1.106  # Serial drivers
   1.107 @@ -755,6 +776,7 @@ CONFIG_SERIAL_NONSTANDARD=y
   1.108  #
   1.109  # Non-8250 serial port support
   1.110  #
   1.111 +# CONFIG_SERIAL_SGI_L1_CONSOLE is not set
   1.112  # CONFIG_SERIAL_JSM is not set
   1.113  CONFIG_UNIX98_PTYS=y
   1.114  CONFIG_LEGACY_PTYS=y
   1.115 @@ -782,6 +804,8 @@ CONFIG_AGP=y
   1.116  # CONFIG_AGP_SIS is not set
   1.117  # CONFIG_AGP_VIA is not set
   1.118  CONFIG_AGP_I460=y
   1.119 +# CONFIG_AGP_HP_ZX1 is not set
   1.120 +# CONFIG_AGP_SGI_TIOCA is not set
   1.121  CONFIG_DRM=y
   1.122  # CONFIG_DRM_TDFX is not set
   1.123  # CONFIG_DRM_R128 is not set
   1.124 @@ -793,6 +817,7 @@ CONFIG_DRM=y
   1.125  # CONFIG_RAW_DRIVER is not set
   1.126  # CONFIG_HPET is not set
   1.127  # CONFIG_HANGCHECK_TIMER is not set
   1.128 +# CONFIG_MMTIMER is not set
   1.129  
   1.130  #
   1.131  # TPM devices
   1.132 @@ -1541,6 +1566,13 @@ CONFIG_GENERIC_PENDING_IRQ=y
   1.133  CONFIG_IRQ_PER_CPU=y
   1.134  
   1.135  #
   1.136 +# HP Simulator drivers
   1.137 +#
   1.138 +# CONFIG_HP_SIMETH is not set
   1.139 +# CONFIG_HP_SIMSERIAL is not set
   1.140 +# CONFIG_HP_SIMSCSI is not set
   1.141 +
   1.142 +#
   1.143  # Instrumentation Support
   1.144  #
   1.145  # CONFIG_PROFILING is not set
   1.146 @@ -1615,9 +1647,6 @@ CONFIG_CRYPTO_DES=y
   1.147  #
   1.148  # Hardware crypto devices
   1.149  #
   1.150 -# CONFIG_XEN_UTIL is not set
   1.151 -CONFIG_XEN_BALLOON=y
   1.152 -CONFIG_XEN_REBOOT=y
   1.153  # CONFIG_XEN_SMPBOOT is not set
   1.154  CONFIG_XEN_INTERFACE_VERSION=0x00030205
   1.155  
   1.156 @@ -1642,15 +1671,14 @@ CONFIG_XEN_PCIDEV_BACKEND_SLOT=y
   1.157  CONFIG_XEN_TPMDEV_BACKEND=m
   1.158  CONFIG_XEN_BLKDEV_FRONTEND=y
   1.159  CONFIG_XEN_NETDEV_FRONTEND=y
   1.160 -# CONFIG_XEN_FRAMEBUFFER is not set
   1.161 +CONFIG_XEN_FRAMEBUFFER=y
   1.162 +CONFIG_XEN_KEYBOARD=y
   1.163  # CONFIG_XEN_SCRUB_PAGES is not set
   1.164  CONFIG_XEN_DISABLE_SERIAL=y
   1.165  CONFIG_XEN_SYSFS=y
   1.166  CONFIG_XEN_COMPAT_030002_AND_LATER=y
   1.167  # CONFIG_XEN_COMPAT_030004_AND_LATER is not set
   1.168  # CONFIG_XEN_COMPAT_LATEST_ONLY is not set
   1.169 -CONFIG_XEN_COMPAT_030002=y
   1.170 -CONFIG_XEN_COMPAT_030004=y
   1.171 +CONFIG_XEN_COMPAT=0x030002
   1.172  CONFIG_HAVE_IRQ_IGNORE_UNHANDLED=y
   1.173  CONFIG_NO_IDLE_HZ=y
   1.174 -CONFIG_XEN_DEVMEM=y
     2.1 --- a/buildconfigs/linux-defconfig_xenU_ia64	Mon May 07 08:52:12 2007 -0600
     2.2 +++ b/buildconfigs/linux-defconfig_xenU_ia64	Mon May 07 08:54:56 2007 -0600
     2.3 @@ -1,8 +1,9 @@
     2.4  #
     2.5  # Automatically generated make config: don't edit
     2.6 -# Linux kernel version: 2.6.18-xenU
     2.7 -# Mon Jan 29 10:26:51 2007
     2.8 +# Linux kernel version: 2.6.18
     2.9 +# Sun May  6 22:07:34 2007
    2.10  #
    2.11 +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
    2.12  
    2.13  #
    2.14  # Code maturity level options
    2.15 @@ -56,6 +57,7 @@ CONFIG_MODULES=y
    2.16  # CONFIG_MODVERSIONS is not set
    2.17  # CONFIG_MODULE_SRCVERSION_ALL is not set
    2.18  # CONFIG_KMOD is not set
    2.19 +CONFIG_STOP_MACHINE=y
    2.20  
    2.21  #
    2.22  # Block layer
    2.23 @@ -97,11 +99,12 @@ CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
    2.24  CONFIG_DMA_IS_DMA32=y
    2.25  CONFIG_AUDIT_ARCH=y
    2.26  # CONFIG_IA64_GENERIC is not set
    2.27 -CONFIG_IA64_DIG=y
    2.28 +# CONFIG_IA64_DIG is not set
    2.29  # CONFIG_IA64_HP_ZX1 is not set
    2.30  # CONFIG_IA64_HP_ZX1_SWIOTLB is not set
    2.31  # CONFIG_IA64_SGI_SN2 is not set
    2.32  # CONFIG_IA64_HP_SIM is not set
    2.33 +CONFIG_IA64_XEN=y
    2.34  # CONFIG_ITANIUM is not set
    2.35  CONFIG_MCKINLEY=y
    2.36  # CONFIG_IA64_PAGE_SIZE_4KB is not set
    2.37 @@ -175,7 +178,7 @@ CONFIG_ACPI_BLACKLIST_YEAR=0
    2.38  CONFIG_ACPI_EC=y
    2.39  CONFIG_ACPI_POWER=y
    2.40  CONFIG_ACPI_SYSTEM=y
    2.41 -# CONFIG_ACPI_CONTAINER is not set
    2.42 +CONFIG_ACPI_CONTAINER=y
    2.43  
    2.44  #
    2.45  # CPU Frequency scaling
    2.46 @@ -673,7 +676,6 @@ CONFIG_EFI_RTC=y
    2.47  CONFIG_AGP=y
    2.48  # CONFIG_AGP_SIS is not set
    2.49  # CONFIG_AGP_VIA is not set
    2.50 -# CONFIG_AGP_I460 is not set
    2.51  CONFIG_DRM=y
    2.52  # CONFIG_DRM_TDFX is not set
    2.53  # CONFIG_DRM_R128 is not set
    2.54 @@ -1467,9 +1469,6 @@ CONFIG_CRYPTO_DES=y
    2.55  #
    2.56  # Hardware crypto devices
    2.57  #
    2.58 -# CONFIG_XEN_UTIL is not set
    2.59 -CONFIG_XEN_BALLOON=y
    2.60 -CONFIG_XEN_REBOOT=y
    2.61  # CONFIG_XEN_SMPBOOT is not set
    2.62  CONFIG_XEN_INTERFACE_VERSION=0x00030205
    2.63  
    2.64 @@ -1491,8 +1490,6 @@ CONFIG_XEN_SYSFS=y
    2.65  CONFIG_XEN_COMPAT_030002_AND_LATER=y
    2.66  # CONFIG_XEN_COMPAT_030004_AND_LATER is not set
    2.67  # CONFIG_XEN_COMPAT_LATEST_ONLY is not set
    2.68 -CONFIG_XEN_COMPAT_030002=y
    2.69 -CONFIG_XEN_COMPAT_030004=y
    2.70 +CONFIG_XEN_COMPAT=0x030002
    2.71  CONFIG_HAVE_IRQ_IGNORE_UNHANDLED=y
    2.72  CONFIG_NO_IDLE_HZ=y
    2.73 -CONFIG_XEN_DEVMEM=y
     3.1 --- a/buildconfigs/linux-defconfig_xen_ia64	Mon May 07 08:52:12 2007 -0600
     3.2 +++ b/buildconfigs/linux-defconfig_xen_ia64	Mon May 07 08:54:56 2007 -0600
     3.3 @@ -1,8 +1,9 @@
     3.4  #
     3.5  # Automatically generated make config: don't edit
     3.6 -# Linux kernel version: 2.6.18-xen
     3.7 -# Mon Jan 29 10:01:13 2007
     3.8 +# Linux kernel version: 2.6.18
     3.9 +# Sun May  6 20:45:43 2007
    3.10  #
    3.11 +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
    3.12  
    3.13  #
    3.14  # Code maturity level options
    3.15 @@ -99,12 +100,13 @@ CONFIG_XEN_IA64_EXPOSE_P2M_USE_DTR=y
    3.16  CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
    3.17  CONFIG_DMA_IS_DMA32=y
    3.18  CONFIG_AUDIT_ARCH=y
    3.19 -# CONFIG_IA64_GENERIC is not set
    3.20 -CONFIG_IA64_DIG=y
    3.21 +CONFIG_IA64_GENERIC=y
    3.22 +# CONFIG_IA64_DIG is not set
    3.23  # CONFIG_IA64_HP_ZX1 is not set
    3.24  # CONFIG_IA64_HP_ZX1_SWIOTLB is not set
    3.25  # CONFIG_IA64_SGI_SN2 is not set
    3.26  # CONFIG_IA64_HP_SIM is not set
    3.27 +# CONFIG_IA64_XEN is not set
    3.28  # CONFIG_ITANIUM is not set
    3.29  CONFIG_MCKINLEY=y
    3.30  # CONFIG_IA64_PAGE_SIZE_4KB is not set
    3.31 @@ -120,6 +122,7 @@ CONFIG_HZ=100
    3.32  CONFIG_IA64_L1_CACHE_SHIFT=7
    3.33  CONFIG_IA64_CYCLONE=y
    3.34  CONFIG_IOSAPIC=y
    3.35 +# CONFIG_IA64_SGI_SN_XP is not set
    3.36  CONFIG_FORCE_MAX_ZONEORDER=11
    3.37  CONFIG_SMP=y
    3.38  CONFIG_NR_CPUS=16
    3.39 @@ -129,23 +132,37 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
    3.40  # CONFIG_PERMIT_BSP_REMOVE is not set
    3.41  # CONFIG_PREEMPT is not set
    3.42  CONFIG_SELECT_MEMORY_MODEL=y
    3.43 -CONFIG_FLATMEM_MANUAL=y
    3.44 -# CONFIG_DISCONTIGMEM_MANUAL is not set
    3.45 +# CONFIG_FLATMEM_MANUAL is not set
    3.46 +CONFIG_DISCONTIGMEM_MANUAL=y
    3.47  # CONFIG_SPARSEMEM_MANUAL is not set
    3.48 -CONFIG_FLATMEM=y
    3.49 +CONFIG_DISCONTIGMEM=y
    3.50  CONFIG_FLAT_NODE_MEM_MAP=y
    3.51 +CONFIG_NEED_MULTIPLE_NODES=y
    3.52  # CONFIG_SPARSEMEM_STATIC is not set
    3.53  CONFIG_SPLIT_PTLOCK_CPUS=4
    3.54 +# CONFIG_MIGRATION is not set
    3.55  CONFIG_RESOURCES_64BIT=y
    3.56  CONFIG_ARCH_SELECT_MEMORY_MODEL=y
    3.57  CONFIG_ARCH_DISCONTIGMEM_ENABLE=y
    3.58  CONFIG_ARCH_FLATMEM_ENABLE=y
    3.59  CONFIG_ARCH_SPARSEMEM_ENABLE=y
    3.60 -# CONFIG_VIRTUAL_MEM_MAP is not set
    3.61 +CONFIG_ARCH_DISCONTIGMEM_DEFAULT=y
    3.62 +CONFIG_NUMA=y
    3.63 +CONFIG_NODES_SHIFT=10
    3.64 +CONFIG_VIRTUAL_MEM_MAP=y
    3.65 +CONFIG_HOLES_IN_ZONE=y
    3.66 +CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y
    3.67 +CONFIG_HAVE_ARCH_NODEDATA_EXTENSION=y
    3.68  # CONFIG_IA32_SUPPORT is not set
    3.69 -CONFIG_IA64_MCA_RECOVERY=y
    3.70 +# CONFIG_IA64_MCA_RECOVERY is not set
    3.71  CONFIG_PERFMON=y
    3.72  CONFIG_IA64_PALINFO=y
    3.73 +CONFIG_SGI_SN=y
    3.74 +
    3.75 +#
    3.76 +# SN Devices
    3.77 +#
    3.78 +# CONFIG_SGI_IOC3 is not set
    3.79  
    3.80  #
    3.81  # Firmware Drivers
    3.82 @@ -172,6 +189,7 @@ CONFIG_ACPI_FAN=y
    3.83  CONFIG_ACPI_PROCESSOR=y
    3.84  CONFIG_ACPI_HOTPLUG_CPU=y
    3.85  CONFIG_ACPI_THERMAL=y
    3.86 +CONFIG_ACPI_NUMA=y
    3.87  CONFIG_ACPI_BLACKLIST_YEAR=0
    3.88  # CONFIG_ACPI_DEBUG is not set
    3.89  CONFIG_ACPI_EC=y
    3.90 @@ -203,6 +221,7 @@ CONFIG_HOTPLUG_PCI_ACPI=y
    3.91  # CONFIG_HOTPLUG_PCI_ACPI_IBM is not set
    3.92  # CONFIG_HOTPLUG_PCI_CPCI is not set
    3.93  # CONFIG_HOTPLUG_PCI_SHPC is not set
    3.94 +# CONFIG_HOTPLUG_PCI_SGI is not set
    3.95  
    3.96  #
    3.97  # PCCARD (PCMCIA/CardBus) support
    3.98 @@ -747,6 +766,8 @@ CONFIG_SERIAL_NONSTANDARD=y
    3.99  # CONFIG_SX is not set
   3.100  # CONFIG_RIO is not set
   3.101  # CONFIG_STALDRV is not set
   3.102 +# CONFIG_SGI_SNSC is not set
   3.103 +# CONFIG_SGI_TIOCX is not set
   3.104  
   3.105  #
   3.106  # Serial drivers
   3.107 @@ -755,6 +776,7 @@ CONFIG_SERIAL_NONSTANDARD=y
   3.108  #
   3.109  # Non-8250 serial port support
   3.110  #
   3.111 +# CONFIG_SERIAL_SGI_L1_CONSOLE is not set
   3.112  # CONFIG_SERIAL_JSM is not set
   3.113  CONFIG_UNIX98_PTYS=y
   3.114  CONFIG_LEGACY_PTYS=y
   3.115 @@ -782,6 +804,8 @@ CONFIG_AGP=y
   3.116  # CONFIG_AGP_SIS is not set
   3.117  # CONFIG_AGP_VIA is not set
   3.118  CONFIG_AGP_I460=y
   3.119 +# CONFIG_AGP_HP_ZX1 is not set
   3.120 +# CONFIG_AGP_SGI_TIOCA is not set
   3.121  CONFIG_DRM=y
   3.122  # CONFIG_DRM_TDFX is not set
   3.123  # CONFIG_DRM_R128 is not set
   3.124 @@ -793,6 +817,7 @@ CONFIG_DRM=y
   3.125  # CONFIG_RAW_DRIVER is not set
   3.126  # CONFIG_HPET is not set
   3.127  # CONFIG_HANGCHECK_TIMER is not set
   3.128 +# CONFIG_MMTIMER is not set
   3.129  
   3.130  #
   3.131  # TPM devices
   3.132 @@ -1541,6 +1566,13 @@ CONFIG_GENERIC_PENDING_IRQ=y
   3.133  CONFIG_IRQ_PER_CPU=y
   3.134  
   3.135  #
   3.136 +# HP Simulator drivers
   3.137 +#
   3.138 +# CONFIG_HP_SIMETH is not set
   3.139 +# CONFIG_HP_SIMSERIAL is not set
   3.140 +# CONFIG_HP_SIMSCSI is not set
   3.141 +
   3.142 +#
   3.143  # Instrumentation Support
   3.144  #
   3.145  # CONFIG_PROFILING is not set
   3.146 @@ -1615,9 +1647,6 @@ CONFIG_CRYPTO_DES=y
   3.147  #
   3.148  # Hardware crypto devices
   3.149  #
   3.150 -# CONFIG_XEN_UTIL is not set
   3.151 -CONFIG_XEN_BALLOON=y
   3.152 -CONFIG_XEN_REBOOT=y
   3.153  # CONFIG_XEN_SMPBOOT is not set
   3.154  CONFIG_XEN_INTERFACE_VERSION=0x00030205
   3.155  
   3.156 @@ -1650,8 +1679,6 @@ CONFIG_XEN_SYSFS=y
   3.157  CONFIG_XEN_COMPAT_030002_AND_LATER=y
   3.158  # CONFIG_XEN_COMPAT_030004_AND_LATER is not set
   3.159  # CONFIG_XEN_COMPAT_LATEST_ONLY is not set
   3.160 -CONFIG_XEN_COMPAT_030002=y
   3.161 -CONFIG_XEN_COMPAT_030004=y
   3.162 +CONFIG_XEN_COMPAT=0x030002
   3.163  CONFIG_HAVE_IRQ_IGNORE_UNHANDLED=y
   3.164  CONFIG_NO_IDLE_HZ=y
   3.165 -CONFIG_XEN_DEVMEM=y
     4.1 --- a/linux-2.6-xen-sparse/arch/ia64/xen/Makefile	Mon May 07 08:52:12 2007 -0600
     4.2 +++ b/linux-2.6-xen-sparse/arch/ia64/xen/Makefile	Mon May 07 08:54:56 2007 -0600
     4.3 @@ -3,7 +3,7 @@
     4.4  #
     4.5  
     4.6  obj-y := hypercall.o xenivt.o xenentry.o xensetup.o xenpal.o xenhpski.o \
     4.7 -	 hypervisor.o pci-dma-xen.o util.o xencomm.o xcom_hcall.o \
     4.8 -	 xcom_mini.o xcom_privcmd.o mem.o
     4.9 +	 hypervisor.o util.o xencomm.o xcom_hcall.o xcom_mini.o \
    4.10 +	 xcom_privcmd.o mem.o xen_dma.o
    4.11  
    4.12 -pci-dma-xen-y := ../../i386/kernel/pci-dma-xen.o
    4.13 +obj-$(CONFIG_IA64_GENERIC) += machvec.o
     5.1 --- a/linux-2.6-xen-sparse/include/asm-ia64/dma-mapping.h	Mon May 07 08:52:12 2007 -0600
     5.2 +++ b/linux-2.6-xen-sparse/include/asm-ia64/dma-mapping.h	Mon May 07 08:54:56 2007 -0600
     5.3 @@ -13,7 +13,6 @@
     5.4  #include <asm/swiotlb.h>
     5.5  #endif
     5.6  
     5.7 -#ifndef CONFIG_XEN
     5.8  #define dma_alloc_coherent	platform_dma_alloc_coherent
     5.9  #define dma_alloc_noncoherent	platform_dma_alloc_coherent	/* coherent mem. is cheap */
    5.10  #define dma_free_coherent	platform_dma_free_coherent
    5.11 @@ -27,47 +26,6 @@
    5.12  #define dma_sync_single_for_device platform_dma_sync_single_for_device
    5.13  #define dma_sync_sg_for_device	platform_dma_sync_sg_for_device
    5.14  #define dma_mapping_error	platform_dma_mapping_error
    5.15 -#else
    5.16 -int dma_map_sg(struct device *hwdev, struct scatterlist *sg, int nents,
    5.17 -               enum dma_data_direction direction);
    5.18 -void dma_unmap_sg(struct device *hwdev, struct scatterlist *sg, int nents,
    5.19 -                  enum dma_data_direction direction);
    5.20 -int dma_supported(struct device *dev, u64 mask);
    5.21 -void *dma_alloc_coherent(struct device *dev, size_t size,
    5.22 -                         dma_addr_t *dma_handle, gfp_t gfp);
    5.23 -void dma_free_coherent(struct device *dev, size_t size, void *vaddr,
    5.24 -                       dma_addr_t dma_handle);
    5.25 -dma_addr_t dma_map_single(struct device *dev, void *ptr, size_t size,
    5.26 -                          enum dma_data_direction direction);
    5.27 -void dma_unmap_single(struct device *dev, dma_addr_t dma_addr, size_t size,
    5.28 -                      enum dma_data_direction direction);
    5.29 -void dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle,
    5.30 -                             size_t size, enum dma_data_direction direction);
    5.31 -void dma_sync_single_for_device(struct device *dev, dma_addr_t dma_handle,
    5.32 -                                size_t size,
    5.33 -                                enum dma_data_direction direction);
    5.34 -int dma_mapping_error(dma_addr_t dma_addr);
    5.35 -
    5.36 -#define flush_write_buffers()	do { } while (0)
    5.37 -static inline void
    5.38 -dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg, int nelems,
    5.39 -                    enum dma_data_direction direction)
    5.40 -{
    5.41 -	if (swiotlb)
    5.42 -		swiotlb_sync_sg_for_cpu(dev,sg,nelems,direction);
    5.43 -	flush_write_buffers();
    5.44 -}
    5.45 -
    5.46 -static inline void
    5.47 -dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nelems,
    5.48 -                       enum dma_data_direction direction)
    5.49 -{
    5.50 -	if (swiotlb)
    5.51 -		swiotlb_sync_sg_for_device(dev,sg,nelems,direction);
    5.52 -	flush_write_buffers();
    5.53 -}
    5.54 -#endif
    5.55 -
    5.56  #define dma_map_page(dev, pg, off, size, dir)				\
    5.57  	dma_map_single(dev, page_address(pg) + (off), (size), (dir))
    5.58  #define dma_unmap_page(dev, dma_addr, size, dir)			\
    5.59 @@ -83,9 +41,7 @@ dma_sync_sg_for_device(struct device *de
    5.60  #define dma_sync_single_range_for_device(dev, dma_handle, offset, size, dir)	\
    5.61  	dma_sync_single_for_device(dev, dma_handle, size, dir)
    5.62  
    5.63 -#ifndef CONFIG_XEN
    5.64  #define dma_supported		platform_dma_supported
    5.65 -#endif
    5.66  
    5.67  static inline int
    5.68  dma_set_mask (struct device *dev, u64 mask)
    5.69 @@ -111,26 +67,19 @@ dma_cache_sync (void *vaddr, size_t size
    5.70  #define dma_is_consistent(dma_handle)	(1)	/* all we do is coherent memory... */
    5.71  
    5.72  #ifdef CONFIG_XEN
    5.73 -/* arch/i386/kernel/swiotlb.o requires */
    5.74 -void contiguous_bitmap_init(unsigned long end_pfn);
    5.75 -
    5.76 -static inline int
    5.77 -address_needs_mapping(struct device *hwdev, dma_addr_t addr)
    5.78 -{
    5.79 -	dma_addr_t mask = DMA_64BIT_MASK;
    5.80 -	/* If the device has a mask, use it, otherwise default to 64 bits */
    5.81 -	if (hwdev && hwdev->dma_mask)
    5.82 -		mask = *hwdev->dma_mask;
    5.83 -	return (addr & ~mask) != 0;
    5.84 -}
    5.85 -
    5.86  static inline int
    5.87  range_straddles_page_boundary(void *p, size_t size)
    5.88  {
    5.89  	extern unsigned long *contiguous_bitmap;
    5.90 +
    5.91 +	if (!is_running_on_xen())
    5.92 +		return 0;
    5.93 +
    5.94  	return (((((unsigned long)p & ~PAGE_MASK) + size) > PAGE_SIZE) &&
    5.95  	        !test_bit(__pa(p) >> PAGE_SHIFT, contiguous_bitmap));
    5.96  }
    5.97 +#else
    5.98 +#define range_straddles_page_boundary(addr, size)	(0)
    5.99  #endif
   5.100  
   5.101  #endif /* _ASM_IA64_DMA_MAPPING_H */
     6.1 --- a/linux-2.6-xen-sparse/include/asm-ia64/machvec_dig.h	Mon May 07 08:52:12 2007 -0600
     6.2 +++ b/linux-2.6-xen-sparse/include/asm-ia64/machvec_dig.h	Mon May 07 08:54:56 2007 -0600
     6.3 @@ -13,19 +13,4 @@ extern ia64_mv_setup_t dig_setup;
     6.4  #define platform_name		"dig"
     6.5  #define platform_setup		dig_setup
     6.6  
     6.7 -#ifdef CONFIG_XEN
     6.8 -# define platform_dma_map_sg		dma_map_sg
     6.9 -# define platform_dma_unmap_sg		dma_unmap_sg
    6.10 -# define platform_dma_mapping_error	dma_mapping_error
    6.11 -# define platform_dma_supported		dma_supported
    6.12 -# define platform_dma_alloc_coherent	dma_alloc_coherent
    6.13 -# define platform_dma_free_coherent	dma_free_coherent
    6.14 -# define platform_dma_map_single	dma_map_single
    6.15 -# define platform_dma_unmap_single	dma_unmap_single
    6.16 -# define platform_dma_sync_single_for_cpu \
    6.17 -					dma_sync_single_for_cpu
    6.18 -# define platform_dma_sync_single_for_device \
    6.19 -					dma_sync_single_for_device
    6.20 -#endif
    6.21 -
    6.22  #endif /* _ASM_IA64_MACHVEC_DIG_h */
     7.1 --- a/linux-2.6-xen-sparse/lib/Makefile	Mon May 07 08:52:12 2007 -0600
     7.2 +++ b/linux-2.6-xen-sparse/lib/Makefile	Mon May 07 08:54:56 2007 -0600
     7.3 @@ -52,7 +52,12 @@ obj-$(CONFIG_SMP) += percpu_counter.o
     7.4  obj-$(CONFIG_AUDIT_GENERIC) += audit.o
     7.5  
     7.6  obj-$(CONFIG_SWIOTLB) += swiotlb.o
     7.7 +ifeq ($(CONFIG_X86),y)
     7.8  swiotlb-$(CONFIG_XEN) := ../arch/i386/kernel/swiotlb.o
     7.9 +endif
    7.10 +ifeq ($(CONFIG_IA64),y)
    7.11 +swiotlb-$(CONFIG_XEN) := ../arch/ia64/xen/swiotlb.o
    7.12 +endif
    7.13  
    7.14  hostprogs-y	:= gen_crc32table
    7.15  clean-files	:= crc32table.h