| 
         
xen-ia64-devel
[Xen-ia64-devel] [PATCH 20/28] ia64/xen: domU xen machine vector	without
 
Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
---
 arch/ia64/kernel/acpi.c        |    6 ++++++
 arch/ia64/xen/machvec.c        |    4 ++++
 include/asm-ia64/machvec.h     |    2 ++
 include/asm-ia64/machvec_xen.h |   22 ++++++++++++++++++++++
 4 files changed, 34 insertions(+), 0 deletions(-)
 create mode 100644 arch/ia64/xen/machvec.c
 create mode 100644 include/asm-ia64/machvec_xen.h
diff --git a/arch/ia64/kernel/acpi.c b/arch/ia64/kernel/acpi.c
index 78f28d8..9c17a46 100644
--- a/arch/ia64/kernel/acpi.c
+++ b/arch/ia64/kernel/acpi.c
@@ -118,6 +118,10 @@ acpi_get_sysname(void)
                return "hpzx1";
        } else if (!strcmp(hdr->oem_id, "SGI")) {
                return "sn2";
+#ifdef CONFIG_XEN
+       } else if (is_running_on_xen() && !strcmp(hdr->oem_id, "XEN")) {
+               return "xen";
+#endif
        }
 
        return "dig";
@@ -132,6 +136,8 @@ acpi_get_sysname(void)
        return "sn2";
 # elif defined (CONFIG_IA64_DIG)
        return "dig";
+# elif defined (CONFIG_IA64_XEN)
+       return "xen";
 # else
 #      error Unknown platform.  Fix acpi.c.
 # endif
diff --git a/arch/ia64/xen/machvec.c b/arch/ia64/xen/machvec.c
new file mode 100644
index 0000000..4ad588a
--- /dev/null
+++ b/arch/ia64/xen/machvec.c
@@ -0,0 +1,4 @@
+#define MACHVEC_PLATFORM_NAME           xen
+#define MACHVEC_PLATFORM_HEADER         <asm/machvec_xen.h>
+#include <asm/machvec_init.h>
+
diff --git a/include/asm-ia64/machvec.h b/include/asm-ia64/machvec.h
index c201a20..cea8d63 100644
--- a/include/asm-ia64/machvec.h
+++ b/include/asm-ia64/machvec.h
@@ -120,6 +120,8 @@ extern void machvec_tlb_migrate_finish (struct mm_struct *);
 #  include <asm/machvec_hpzx1_swiotlb.h>
 # elif defined (CONFIG_IA64_SGI_SN2)
 #  include <asm/machvec_sn2.h>
+# elif defined (CONFIG_IA64_XEN)
+#  include <asm/machvec_xen.h>
 # elif defined (CONFIG_IA64_GENERIC)
 
 # ifdef MACHVEC_PLATFORM_HEADER
diff --git a/include/asm-ia64/machvec_xen.h b/include/asm-ia64/machvec_xen.h
new file mode 100644
index 0000000..ed0f84d
--- /dev/null
+++ b/include/asm-ia64/machvec_xen.h
@@ -0,0 +1,22 @@
+#ifndef _ASM_IA64_MACHVEC_XEN_h
+#define _ASM_IA64_MACHVEC_XEN_h
+
+extern ia64_mv_setup_t                 xen_setup;
+extern ia64_mv_cpu_init_t              xen_cpu_init;
+extern ia64_mv_irq_init_t              xen_irq_init;
+extern ia64_mv_send_ipi_t              xen_platform_send_ipi;
+
+/*
+ * This stuff has dual use!
+ *
+ * For a generic kernel, the macros are used to initialize the
+ * platform's machvec structure.  When compiling a non-generic kernel,
+ * the macros are used directly.
+ */
+#define platform_name                          "xen"
+#define platform_setup                         xen_setup
+#define platform_cpu_init                      xen_cpu_init
+#define platform_irq_init                      xen_irq_init
+#define platform_send_ipi                      xen_platform_send_ipi
+
+#endif /* _ASM_IA64_MACHVEC_XEN_h */
-- 
1.5.3
-- 
yamahata
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
 |   
 
| <Prev in Thread] | 
Current Thread | 
[Next in Thread>
 |  
- [Xen-ia64-devel] [PATCH 15/28] ia64/xen: define	xen_alloc_vm_area()/xen_free_vm_area() for ia64 arch., (continued)
 
 
[Xen-ia64-devel] [PATCH 16/28] ia64/xen: basic helper routines for	xen/ia64., yamahata
[Xen-ia64-devel] [PATCH 21/28] ia64/xen: define xen related address	conversion helper functions for domU, yamahata
[Xen-ia64-devel] [PATCH 18/28] ia64/xen: iosapic paravirtualization, yamahata
[Xen-ia64-devel] [PATCH 22/28] ia64/xen: mca paravirtualization, yamahata
[Xen-ia64-devel] [PATCH 20/28] ia64/xen: domU xen machine vector	without dma api.,
yamahata <=
[Xen-ia64-devel] [PATCH 10/28] RFC: ia64/xen: introduce xen	paravirtualized intrinsic operations for privileged instruction., yamahata
[Xen-ia64-devel] [PATCH 17/28] ia64/xen: domU initialization code., yamahata
[Xen-ia64-devel] [PATCH 26/28] ia64/xen: fsys paravirtualization., yamahata
[Xen-ia64-devel] [PATCH 25/28] ia64/xen: gate page	paravirtualization, yamahata
[Xen-ia64-devel] [PATCH 27/28] ia64/xen: update Kconfig to allow	xen domU Linux, yamahata
[Xen-ia64-devel] [PATCH 23/28] ia64/xen: sal paravirtualization., yamahata
[Xen-ia64-devel] [PATCH 19/28] ia64/xen: xen domU irq chip	introducing some helper functions, xen_send_ipi., yamahata
[Xen-ia64-devel] [PATCH 24/28] ia64/xen: time paravirtualization, yamahata
[Xen-ia64-devel] [PATCH 08/28] RFC: ia64/xen: xen hand written	assembly code paravirtualization., yamahata
 |  
  
 | 
    |