[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH 01/14] arm: start working on ARM



arm: start working on ARM.

Config.mk                 |  1 +
xen/Rules.mk              |  2 +-
xen/common/kexec.c        |  2 ++
xen/common/sysctl.c       |  8 ++++++++
xen/common/tmem_xen.c     |  2 +-
xen/drivers/Makefile      |  2 ++
xen/drivers/char/Makefile |  2 ++
xen/include/public/xen.h  |  2 ++
xen/include/xen/libelf.h  |  2 +-
9 files changed, 20 insertions(+), 3 deletions(-)

Signed-off-by: Jaemin Ryu 

diff -r b3de82b35189 Config.mk
--- a/Config.mk Fri Feb 03 12:21:09 2012 +0900
+++ b/Config.mk Fri Feb 03 15:52:40 2012 +0900
@@ -15,6 +15,7 @@ debug ?= y
XEN_COMPILE_ARCH    ?= $(shell uname -m | sed -e s/i.86/x86_32/ \
                          -e s/i86pc/x86_32/ -e s/amd64/x86_64/)
XEN_TARGET_ARCH     ?= $(XEN_COMPILE_ARCH)
+XEN_TARGET_SUBARCH  ?= $(XEN_TARGET_ARCH)
XEN_OS              ?= $(shell uname -s)

CONFIG_$(XEN_OS) := y
diff -r b3de82b35189 xen/Rules.mk
--- a/xen/Rules.mk      Fri Feb 03 12:21:09 2012 +0900
+++ b/xen/Rules.mk      Fri Feb 03 15:52:40 2012 +0900
@@ -26,9 +26,9 @@ perfc := y
endif

# Set ARCH/SUBARCH appropriately.
-override TARGET_SUBARCH  := $(XEN_TARGET_ARCH)
override TARGET_ARCH     := $(shell echo $(XEN_TARGET_ARCH) | \
                               sed -e 's/x86.*/x86/')
+override TARGET_SUBARCH  := $(XEN_TARGET_SUBARCH)

TARGET := $(BASEDIR)/xen

diff -r b3de82b35189 xen/common/kexec.c
--- a/xen/common/kexec.c        Fri Feb 03 12:21:09 2012 +0900
+++ b/xen/common/kexec.c        Fri Feb 03 15:52:40 2012 +0900
@@ -211,7 +211,9 @@ static void kexec_common_shutdown(void)
     console_start_sync();
     spin_debug_disable();
     one_cpu_only();
+#if !defined(__arm__)
     acpi_dmar_reinstate();
+#endif
}

void kexec_crash(void)
diff -r b3de82b35189 xen/common/sysctl.c
--- a/xen/common/sysctl.c       Fri Feb 03 12:21:09 2012 +0900
+++ b/xen/common/sysctl.c       Fri Feb 03 15:52:40 2012 +0900
@@ -226,6 +226,7 @@ long do_sysctl(XEN_GUEST_HANDLE(xen_sysc

     case XEN_SYSCTL_get_pmstat:
     {
+#if !defined(__arm__)
         ret = xsm_get_pmstat();
         if ( ret )
             break;
@@ -239,11 +240,15 @@ long do_sysctl(XEN_GUEST_HANDLE(xen_sysc
             ret = -EFAULT;
             break;
         }
+#else
+       ret = -EINVAL;
+#endif
     }
     break;

     case XEN_SYSCTL_pm_op:
     {
+#if !defined(__arm__)
         ret = xsm_pm_op();
         if ( ret )
             break;
@@ -257,6 +262,9 @@ long do_sysctl(XEN_GUEST_HANDLE(xen_sysc
             ret = -EFAULT;
             break;
         }
+#else
+       ret = -EINVAL;
+#endif
     }
     break;

diff -r b3de82b35189 xen/common/tmem_xen.c
--- a/xen/common/tmem_xen.c     Fri Feb 03 12:21:09 2012 +0900
+++ b/xen/common/tmem_xen.c     Fri Feb 03 15:52:40 2012 +0900
@@ -87,7 +87,7 @@ void tmh_copy_page(char *to, char*from)
#endif
}

-#ifdef __ia64__
+#if defined(__ia64__) || defined(__arm__)
static inline void *cli_get_page(tmem_cli_mfn_t cmfn, unsigned long *pcli_mfn,
                                  pfp_t **pcli_pfp, bool_t cli_write)
{
diff -r b3de82b35189 xen/drivers/Makefile
--- a/xen/drivers/Makefile      Fri Feb 03 12:21:09 2012 +0900
+++ b/xen/drivers/Makefile      Fri Feb 03 15:52:40 2012 +0900
@@ -1,6 +1,8 @@
subdir-y += char
+ifneq ($(TARGET_ARCH),arm)
subdir-y += cpufreq
subdir-y += pci
subdir-y += passthrough
subdir-$(HAS_ACPI) += acpi
subdir-$(HAS_VGA) += video
+endif
diff -r b3de82b35189 xen/drivers/char/Makefile
--- a/xen/drivers/char/Makefile Fri Feb 03 12:21:09 2012 +0900
+++ b/xen/drivers/char/Makefile Fri Feb 03 15:52:40 2012 +0900
@@ -1,3 +1,5 @@
obj-y += console.o
+ifneq ($(TARGET_ARCH),arm)
obj-y += ns16550.o
+endif
obj-y += serial.o
diff -r b3de82b35189 xen/include/public/xen.h
--- a/xen/include/public/xen.h  Fri Feb 03 12:21:09 2012 +0900
+++ b/xen/include/public/xen.h  Fri Feb 03 15:52:40 2012 +0900
@@ -33,6 +33,8 @@
#include "arch-x86/xen.h"
#elif defined(__ia64__)
#include "arch-ia64.h"
+#elif defined(__arm__)
+#include "arch-arm.h"
#else
#error "Unsupported architecture"
#endif
diff -r b3de82b35189 xen/include/xen/libelf.h
--- a/xen/include/xen/libelf.h  Fri Feb 03 12:21:09 2012 +0900
+++ b/xen/include/xen/libelf.h  Fri Feb 03 15:52:40 2012 +0900
@@ -23,7 +23,7 @@
#ifndef __XEN_LIBELF_H__
#define __XEN_LIBELF_H__

-#if defined(__i386__) || defined(__x86_64__) || defined(__ia64__)
+#if defined(__i386__) || defined(__x86_64__) || defined(__ia64__) || 
defined(__arm__)
#define XEN_ELF_LITTLE_ENDIAN
#else
#error define architectural endianness

Attachment: patch01.diff
Description: Binary data

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.