Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

xen/arm: use the __HVC macro

Use the new __HVC macro in hypercall.S.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>

authored by

Stefano Stabellini and committed by
Konrad Rzeszutek Wilk
c8d258a7 1bcaba51

+5 -9
+5 -9
arch/arm/xen/hypercall.S
··· 48 48 49 49 #include <linux/linkage.h> 50 50 #include <asm/assembler.h> 51 + #include <asm/opcodes-virt.h> 51 52 #include <xen/interface/xen.h> 52 53 53 54 54 - /* HVC 0xEA1 */ 55 - #ifdef CONFIG_THUMB2_KERNEL 56 - #define xen_hvc .word 0xf7e08ea1 57 - #else 58 - #define xen_hvc .word 0xe140ea71 59 - #endif 55 + #define XEN_IMM 0xEA1 60 56 61 57 #define HYPERCALL_SIMPLE(hypercall) \ 62 58 ENTRY(HYPERVISOR_##hypercall) \ 63 59 mov r12, #__HYPERVISOR_##hypercall; \ 64 - xen_hvc; \ 60 + __HVC(XEN_IMM); \ 65 61 mov pc, lr; \ 66 62 ENDPROC(HYPERVISOR_##hypercall) 67 63 ··· 72 76 stmdb sp!, {r4} \ 73 77 ldr r4, [sp, #4] \ 74 78 mov r12, #__HYPERVISOR_##hypercall; \ 75 - xen_hvc \ 79 + __HVC(XEN_IMM); \ 76 80 ldm sp!, {r4} \ 77 81 mov pc, lr \ 78 82 ENDPROC(HYPERVISOR_##hypercall) ··· 96 100 mov r2, r3 97 101 ldr r3, [sp, #8] 98 102 ldr r4, [sp, #4] 99 - xen_hvc 103 + __HVC(XEN_IMM) 100 104 ldm sp!, {r4} 101 105 mov pc, lr 102 106 ENDPROC(privcmd_call);