arm64: KVM: Add support for 16-bit VMID
[firefly-linux-kernel-4.4.55.git] / arch / arm / include / asm / kvm_arm.h
index 01d4d7abe34e694e9b29e64a4b1d6c77be578781..e22089fb44dc86b7ed2fdb175bc6ec7b47ee4001 100644 (file)
 #define VTTBR_BADDR_SHIFT (VTTBR_X - 1)
 #define VTTBR_BADDR_MASK  (((_AC(1, ULL) << (40 - VTTBR_X)) - 1) << VTTBR_BADDR_SHIFT)
 #define VTTBR_VMID_SHIFT  _AC(48, ULL)
-#define VTTBR_VMID_MASK          (_AC(0xff, ULL) << VTTBR_VMID_SHIFT)
+#define VTTBR_VMID_MASK(size)  (_AT(u64, (1 << size) - 1) << VTTBR_VMID_SHIFT)
 
 /* Hyp Syndrome Register (HSR) bits */
 #define HSR_EC_SHIFT   (26)