diff options
| author | Tony Lindgren <tony@atomide.com> | 2012-11-09 14:58:01 -0800 | 
|---|---|---|
| committer | Tony Lindgren <tony@atomide.com> | 2012-11-09 14:58:01 -0800 | 
| commit | edf8dde393f879fc2d8c22d4bc01ff8d37b80e1a (patch) | |
| tree | 61425adc8b2059a9c12a3ce66ba7361fea1b0bb3 /arch/arm/xen/hypercall.S | |
| parent | 6ba54ab4a49bbad736b0254aa6bdf0cb83013815 (diff) | |
| parent | 3d70f8c617a436c7146ecb81df2265b4626dfe89 (diff) | |
| download | olio-linux-3.10-edf8dde393f879fc2d8c22d4bc01ff8d37b80e1a.tar.xz olio-linux-3.10-edf8dde393f879fc2d8c22d4bc01ff8d37b80e1a.zip  | |
Merge branch 'linus' into omap-for-v3.8/cleanup-headers-prepare-multiplatform-v3
Diffstat (limited to 'arch/arm/xen/hypercall.S')
| -rw-r--r-- | arch/arm/xen/hypercall.S | 14 | 
1 files changed, 5 insertions, 9 deletions
diff --git a/arch/arm/xen/hypercall.S b/arch/arm/xen/hypercall.S index 074f5ed101b..71f723984cb 100644 --- a/arch/arm/xen/hypercall.S +++ b/arch/arm/xen/hypercall.S @@ -48,20 +48,16 @@  #include <linux/linkage.h>  #include <asm/assembler.h> +#include <asm/opcodes-virt.h>  #include <xen/interface/xen.h> -/* HVC 0xEA1 */ -#ifdef CONFIG_THUMB2_KERNEL -#define xen_hvc .word 0xf7e08ea1 -#else -#define xen_hvc .word 0xe140ea71 -#endif +#define XEN_IMM 0xEA1  #define HYPERCALL_SIMPLE(hypercall)		\  ENTRY(HYPERVISOR_##hypercall)			\  	mov r12, #__HYPERVISOR_##hypercall;	\ -	xen_hvc;							\ +	__HVC(XEN_IMM);						\  	mov pc, lr;							\  ENDPROC(HYPERVISOR_##hypercall) @@ -76,7 +72,7 @@ ENTRY(HYPERVISOR_##hypercall)			\  	stmdb sp!, {r4}						\  	ldr r4, [sp, #4]					\  	mov r12, #__HYPERVISOR_##hypercall;	\ -	xen_hvc								\ +	__HVC(XEN_IMM);						\  	ldm sp!, {r4}						\  	mov pc, lr							\  ENDPROC(HYPERVISOR_##hypercall) @@ -100,7 +96,7 @@ ENTRY(privcmd_call)  	mov r2, r3  	ldr r3, [sp, #8]  	ldr r4, [sp, #4] -	xen_hvc +	__HVC(XEN_IMM)  	ldm sp!, {r4}  	mov pc, lr  ENDPROC(privcmd_call);  |