With this patch dma-mapping.h and processor.h become unmodified.
privops.h overrides gcc/intel intrinsics methods so it should be
included from intrinsics.h
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
#include <asm/sigcontext.h>
#include <asm/system.h>
#include <asm/unistd.h>
-#ifdef CONFIG_XEN_IA64_VDSO_PARAVIRT
-# include <asm/privop.h>
-#endif
/*
* We can't easily refer to symbols inside the kernel. To avoid full runtime relocation,
* Copyright (C) 2005 Dan Magenheimer <dan.magenheimer@hp.com>
*/
-#include <asm/processor.h>
#include <asm/asmmacro.h>
+#include <asm/intrinsics.h>
GLOBAL_ENTRY(xen_get_psr)
XEN_HYPER_GET_PSR
-
-extern unsigned long xen_get_cpuid(int);
+#include <linux/kernel.h>
+#include <asm/hypervisor.h>
int
running_on_sim(void)
* David Mosberger-Tang <davidm@hpl.hp.com>
*/
#include <asm/machvec.h>
-#ifdef CONFIG_XEN
-/* Needed for arch/i386/kernel/swiotlb.c and arch/i386/kernel/pci-dma-xen.c */
-#include <asm/hypervisor.h>
-/* Needed for arch/i386/kernel/swiotlb.c */
-#include <asm/swiotlb.h>
-#endif
#define dma_alloc_coherent platform_dma_alloc_coherent
#define dma_alloc_noncoherent platform_dma_alloc_coherent /* coherent mem. is cheap */
#define dma_sync_single_for_device platform_dma_sync_single_for_device
#define dma_sync_sg_for_device platform_dma_sync_sg_for_device
#define dma_mapping_error platform_dma_mapping_error
+
#define dma_map_page(dev, pg, off, size, dir) \
dma_map_single(dev, page_address(pg) + (off), (size), (dir))
#define dma_unmap_page(dev, dma_addr, size, dir) \
#define dma_is_consistent(dma_handle) (1) /* all we do is coherent memory... */
-#ifdef CONFIG_XEN
-static inline int
-range_straddles_page_boundary(void *p, size_t size)
-{
- extern unsigned long *contiguous_bitmap;
-
- if (!is_running_on_xen())
- return 0;
-
- return (((((unsigned long)p & ~PAGE_MASK) + size) > PAGE_SIZE) &&
- !test_bit(__pa(p) >> PAGE_SHIFT, contiguous_bitmap));
-}
-#else
-#define range_straddles_page_boundary(addr, size) (0)
-#endif
-
#endif /* _ASM_IA64_DMA_MAPPING_H */
})
#include <linux/err.h>
-#ifdef CONFIG_XEN
-#include <asm/xen/privop.h>
-#endif /* CONFIG_XEN */
#ifdef HAVE_XEN_PLATFORM_COMPAT_H
#include <xen/platform-compat.h>
#endif
#define is_initial_xendomain() 0
#endif
+#ifdef CONFIG_XEN
+static inline int
+range_straddles_page_boundary(void *p, size_t size)
+{
+ extern unsigned long *contiguous_bitmap;
+
+ if (!is_running_on_xen())
+ return 0;
+
+ return (((((unsigned long)p & ~PAGE_MASK) + size) > PAGE_SIZE) &&
+ !test_bit(__pa(p) >> PAGE_SHIFT, contiguous_bitmap));
+}
+#else
+#define range_straddles_page_boundary(addr, size) (0)
+#endif
+
#endif /* __HYPERVISOR_H__ */
#endif /* !CONFIG_IA64_DEBUG_CMPXCHG */
#endif
+#include <asm/privop.h>
#endif /* _ASM_IA64_INTRINSICS_H */
#define PIO_RESERVED __IA64_UNCACHED_OFFSET
#define HAVE_ARCH_PIO_SIZE
-#include <asm/hypervisor.h>
#include <asm/intrinsics.h>
#include <asm/machvec.h>
#include <asm/page.h>
-#include <asm/privop.h>
#include <asm/system.h>
#include <asm-generic/iomap.h>
#include <asm/kregs.h>
#include <asm/ptrace.h>
#include <asm/ustack.h>
-#include <asm/privop.h>
#define IA64_NUM_DBG_REGS 8
/*
*
*/
-
+#ifndef __ASSEMBLY__
+#include <linux/types.h> /* arch-ia64.h requires uint64_t */
+#endif
#include <xen/interface/arch-ia64.h>
#define IA64_PARAVIRTUALIZED