arm64: KVM: Move GIC accessors to arch_gicv3.h
authorVladimir Murzin <vladimir.murzin@arm.com>
Mon, 12 Sep 2016 14:49:16 +0000 (15:49 +0100)
committerChristoffer Dall <christoffer.dall@linaro.org>
Thu, 22 Sep 2016 11:21:46 +0000 (13:21 +0200)
Since we are going to share vgic-v3 save/restore code with ARM keep
arch specific accessors separately.

Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Acked-by: Christoffer Dall <christoffer.dall@linaro.org>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
arch/arm64/include/asm/arch_gicv3.h
arch/arm64/kvm/hyp/vgic-v3-sr.c

index 8ec88e5b290f9bc12a416841e73ef56414972b59..ae7dbd79e257f0a58b56c2521cbe35d778d1d84b 100644 (file)
 #include <linux/stringify.h>
 #include <asm/barrier.h>
 
+#define read_gicreg(r)                                                 \
+       ({                                                              \
+               u64 reg;                                                \
+               asm volatile("mrs_s %0, " __stringify(r) : "=r" (reg)); \
+               reg;                                                    \
+       })
+
+#define write_gicreg(v,r)                                              \
+       do {                                                            \
+               u64 __val = (v);                                        \
+               asm volatile("msr_s " __stringify(r) ", %0" : : "r" (__val));\
+       } while (0)
+
 /*
  * Low-level accessors
  *
index ee1ea6303554421287e7225e498de617553913aa..3947095cc0a1cec88e2ad2f5fa3a3e5ea81111c1 100644 (file)
 #define vtr_to_max_lr_idx(v)           ((v) & 0xf)
 #define vtr_to_nr_pri_bits(v)          (((u32)(v) >> 29) + 1)
 
-#define read_gicreg(r)                                                 \
-       ({                                                              \
-               u64 reg;                                                \
-               asm volatile("mrs_s %0, " __stringify(r) : "=r" (reg)); \
-               reg;                                                    \
-       })
-
-#define write_gicreg(v,r)                                              \
-       do {                                                            \
-               u64 __val = (v);                                        \
-               asm volatile("msr_s " __stringify(r) ", %0" : : "r" (__val));\
-       } while (0)
-
 static u64 __hyp_text __gic_v3_get_lr(unsigned int lr)
 {
        switch (lr & 0xf) {