Skip to content

Commit e290dbb

Browse files
committed
RISC-V: KVM: Drop the _MASK suffix from hgatp.VMID mask defines
The hgatp.VMID mask defines are used before shifting when extracting VMID value from hgatp CSR value so based on the convention followed in the other parts of asm/csr.h, the hgatp.VMID mask defines should not have a _MASK suffix. While we are here, let's use GENMASK() for hgatp.VMID and hgatp.PPN. Signed-off-by: Anup Patel <apatel@ventanamicro.com> Reviewed-by: Andrew Jones <ajones@ventanamicro.com> Reviewed-by: Atish Patra <atishp@rivosinc.com> Signed-off-by: Anup Patel <anup@brainfault.org>
1 parent 8fe6f7e commit e290dbb

3 files changed

Lines changed: 9 additions & 10 deletions

File tree

arch/riscv/include/asm/csr.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -131,25 +131,25 @@
131131

132132
#define HGATP32_MODE_SHIFT 31
133133
#define HGATP32_VMID_SHIFT 22
134-
#define HGATP32_VMID_MASK _AC(0x1FC00000, UL)
135-
#define HGATP32_PPN _AC(0x003FFFFF, UL)
134+
#define HGATP32_VMID GENMASK(28, 22)
135+
#define HGATP32_PPN GENMASK(21, 0)
136136

137137
#define HGATP64_MODE_SHIFT 60
138138
#define HGATP64_VMID_SHIFT 44
139-
#define HGATP64_VMID_MASK _AC(0x03FFF00000000000, UL)
140-
#define HGATP64_PPN _AC(0x00000FFFFFFFFFFF, UL)
139+
#define HGATP64_VMID GENMASK(57, 44)
140+
#define HGATP64_PPN GENMASK(43, 0)
141141

142142
#define HGATP_PAGE_SHIFT 12
143143

144144
#ifdef CONFIG_64BIT
145145
#define HGATP_PPN HGATP64_PPN
146146
#define HGATP_VMID_SHIFT HGATP64_VMID_SHIFT
147-
#define HGATP_VMID_MASK HGATP64_VMID_MASK
147+
#define HGATP_VMID HGATP64_VMID
148148
#define HGATP_MODE_SHIFT HGATP64_MODE_SHIFT
149149
#else
150150
#define HGATP_PPN HGATP32_PPN
151151
#define HGATP_VMID_SHIFT HGATP32_VMID_SHIFT
152-
#define HGATP_VMID_MASK HGATP32_VMID_MASK
152+
#define HGATP_VMID HGATP32_VMID
153153
#define HGATP_MODE_SHIFT HGATP32_MODE_SHIFT
154154
#endif
155155

arch/riscv/kvm/mmu.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -755,8 +755,7 @@ void kvm_riscv_gstage_update_hgatp(struct kvm_vcpu *vcpu)
755755
unsigned long hgatp = gstage_mode;
756756
struct kvm_arch *k = &vcpu->kvm->arch;
757757

758-
hgatp |= (READ_ONCE(k->vmid.vmid) << HGATP_VMID_SHIFT) &
759-
HGATP_VMID_MASK;
758+
hgatp |= (READ_ONCE(k->vmid.vmid) << HGATP_VMID_SHIFT) & HGATP_VMID;
760759
hgatp |= (k->pgd_phys >> PAGE_SHIFT) & HGATP_PPN;
761760

762761
csr_write(CSR_HGATP, hgatp);

arch/riscv/kvm/vmid.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@ void __init kvm_riscv_gstage_vmid_detect(void)
2626

2727
/* Figure-out number of VMID bits in HW */
2828
old = csr_read(CSR_HGATP);
29-
csr_write(CSR_HGATP, old | HGATP_VMID_MASK);
29+
csr_write(CSR_HGATP, old | HGATP_VMID);
3030
vmid_bits = csr_read(CSR_HGATP);
31-
vmid_bits = (vmid_bits & HGATP_VMID_MASK) >> HGATP_VMID_SHIFT;
31+
vmid_bits = (vmid_bits & HGATP_VMID) >> HGATP_VMID_SHIFT;
3232
vmid_bits = fls_long(vmid_bits);
3333
csr_write(CSR_HGATP, old);
3434

0 commit comments

Comments
 (0)