diff options
author | kaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk> | 2006-07-14 10:37:12 +0100 |
---|---|---|
committer | kaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk> | 2006-07-14 10:37:12 +0100 |
commit | 7eb542e4624994551f8f02a903ab39939b7db5d4 (patch) | |
tree | 27fb4aad18163ff52829daccdf37370af7f103a3 | |
parent | 3e8ad22aa8b2496b4a0d20382590c9bac89844b4 (diff) | |
download | xen-7eb542e4624994551f8f02a903ab39939b7db5d4.tar.gz xen-7eb542e4624994551f8f02a903ab39939b7db5d4.tar.bz2 xen-7eb542e4624994551f8f02a903ab39939b7db5d4.zip |
[powerpc] add PowerPC support to libxc
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
-rw-r--r-- | tools/libxc/Makefile | 5 | ||||
-rw-r--r-- | tools/libxc/xc_load_elf.c | 4 | ||||
-rw-r--r-- | tools/libxc/xenctrl.h | 5 |
3 files changed, 12 insertions, 2 deletions
diff --git a/tools/libxc/Makefile b/tools/libxc/Makefile index 0ee949a3e1..64ec867a1e 100644 --- a/tools/libxc/Makefile +++ b/tools/libxc/Makefile @@ -26,11 +26,12 @@ CTRL_SRCS-$(CONFIG_X86) += xc_ptrace.c xc_ptrace_core.c xc_pagetab.c CTRL_SRCS-$(CONFIG_Linux) += xc_linux.c GUEST_SRCS-y := -GUEST_SRCS-y += xc_linux_build.c GUEST_SRCS-y += xc_load_bin.c GUEST_SRCS-y += xc_load_elf.c GUEST_SRCS-y += xg_private.c -GUEST_SRCS-$(CONFIG_IA64) += xc_ia64_stubs.c +GUEST_SRCS-$(CONFIG_POWERPC) += xc_ppc_linux_build.c +GUEST_SRCS-$(CONFIG_X86) += xc_linux_build.c +GUEST_SRCS-$(CONFIG_IA64) += xc_ia64_stubs.c xc_linux_build.c GUEST_SRCS-$(CONFIG_MIGRATE) += xc_linux_restore.c xc_linux_save.c GUEST_SRCS-$(CONFIG_HVM) += xc_hvm_build.c diff --git a/tools/libxc/xc_load_elf.c b/tools/libxc/xc_load_elf.c index c005409924..5fc1757601 100644 --- a/tools/libxc/xc_load_elf.c +++ b/tools/libxc/xc_load_elf.c @@ -38,6 +38,10 @@ loadelfsymtab( #define ELFCLASS ELFCLASS64 #define ELFDATA ELFDATA2LSB #define ELFMACHINE EM_X86_64 +#elif defined(__powerpc__) +#define ELFCLASS ELFCLASS64 +#define ELFDATA ELFDATA2MSB +#define ELFMACHINE EM_PPC64 #endif int probe_elf(const char *image, diff --git a/tools/libxc/xenctrl.h b/tools/libxc/xenctrl.h index c18f1807ab..55fda21223 100644 --- a/tools/libxc/xenctrl.h +++ b/tools/libxc/xenctrl.h @@ -47,6 +47,11 @@ #define mb() #define rmb() #define wmb() +#elif defined(__powerpc__) +/* XXX loosen these up later */ +#define mb() __asm__ __volatile__ ("sync" : : : "memory") +#define rmb() __asm__ __volatile__ ("sync" : : : "memory") /* lwsync? */ +#define wmb() __asm__ __volatile__ ("sync" : : : "memory") /* eieio? */ #else #error "Define barriers" #endif |