Skip to content

Commit 5f6bd3f

Browse files
Fuad TabbaMarc Zyngier
authored andcommitted
KVM: arm64: Define FGT nMASK bits relative to other fields
Now that RES0 and MASK have full coverage, no need to manually encode nMASK. Calculate it relative to the other fields. No functional change intended. Signed-off-by: Fuad Tabba <tabba@google.com> Signed-off-by: Marc Zyngier <maz@kernel.org> Link: https://lore.kernel.org/r/20231214100158.2305400-14-tabba@google.com
1 parent 9ff67dd commit 5f6bd3f

1 file changed

Lines changed: 7 additions & 7 deletions

File tree

arch/arm64/include/asm/kvm_arm.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -346,7 +346,7 @@
346346
*/
347347
#define __HFGRTR_EL2_RES0 HFGxTR_EL2_RES0
348348
#define __HFGRTR_EL2_MASK GENMASK(49, 0)
349-
#define __HFGRTR_EL2_nMASK (GENMASK(63, 52) | BIT(50))
349+
#define __HFGRTR_EL2_nMASK ~(__HFGRTR_EL2_RES0 | __HFGRTR_EL2_MASK)
350350

351351
/*
352352
* The HFGWTR bits are a subset of HFGRTR bits. To ensure we don't miss any
@@ -357,34 +357,34 @@
357357
GENMASK(15, 14) | GENMASK(10, 9) | BIT(2))
358358
#define __HFGWTR_EL2_RES0 (__HFGRTR_EL2_RES0 | __HFGRTR_ONLY_MASK)
359359
#define __HFGWTR_EL2_MASK (__HFGRTR_EL2_MASK & ~__HFGRTR_ONLY_MASK)
360-
#define __HFGWTR_EL2_nMASK (__HFGRTR_EL2_nMASK & ~__HFGRTR_ONLY_MASK)
360+
#define __HFGWTR_EL2_nMASK ~(__HFGWTR_EL2_RES0 | __HFGWTR_EL2_MASK)
361361

362362
#define __HFGITR_EL2_RES0 HFGITR_EL2_RES0
363363
#define __HFGITR_EL2_MASK (BIT(62) | BIT(60) | GENMASK(54, 0))
364-
#define __HFGITR_EL2_nMASK GENMASK(59, 55)
364+
#define __HFGITR_EL2_nMASK ~(__HFGITR_EL2_RES0 | __HFGITR_EL2_MASK)
365365

366366
#define __HDFGRTR_EL2_RES0 HDFGRTR_EL2_RES0
367367
#define __HDFGRTR_EL2_MASK (BIT(63) | GENMASK(58, 50) | GENMASK(48, 43) | \
368368
GENMASK(41, 40) | GENMASK(37, 22) | \
369369
GENMASK(19, 9) | GENMASK(7, 0))
370-
#define __HDFGRTR_EL2_nMASK GENMASK(62, 59)
370+
#define __HDFGRTR_EL2_nMASK ~(__HDFGRTR_EL2_RES0 | __HDFGRTR_EL2_MASK)
371371

372372
#define __HDFGWTR_EL2_RES0 HDFGWTR_EL2_RES0
373373
#define __HDFGWTR_EL2_MASK (GENMASK(57, 52) | GENMASK(50, 48) | \
374374
GENMASK(46, 44) | GENMASK(42, 41) | \
375375
GENMASK(37, 35) | GENMASK(33, 31) | \
376376
GENMASK(29, 23) | GENMASK(21, 10) | \
377377
GENMASK(8, 7) | GENMASK(5, 0))
378-
#define __HDFGWTR_EL2_nMASK GENMASK(62, 60)
378+
#define __HDFGWTR_EL2_nMASK ~(__HDFGWTR_EL2_RES0 | __HDFGWTR_EL2_MASK)
379379

380380
#define __HAFGRTR_EL2_RES0 HAFGRTR_EL2_RES0
381381
#define __HAFGRTR_EL2_MASK (GENMASK(49, 17) | GENMASK(4, 0))
382-
#define __HAFGRTR_EL2_nMASK 0UL
382+
#define __HAFGRTR_EL2_nMASK ~(__HAFGRTR_EL2_RES0 | __HAFGRTR_EL2_MASK)
383383

384384
/* Similar definitions for HCRX_EL2 */
385385
#define __HCRX_EL2_RES0 HCRX_EL2_RES0
386386
#define __HCRX_EL2_MASK (BIT(6))
387-
#define __HCRX_EL2_nMASK (GENMASK(24, 14) | GENMASK(11, 7) | GENMASK(5, 0))
387+
#define __HCRX_EL2_nMASK ~(__HCRX_EL2_RES0 | __HCRX_EL2_MASK)
388388

389389
/* Hyp Prefetch Fault Address Register (HPFAR/HDFAR) */
390390
#define HPFAR_MASK (~UL(0xf))

0 commit comments

Comments
 (0)