diff mbox series

[v2,1/6] irqchip/gic-v4.1: Fix programming of GICR_VPROPBASER_4_1_SIZE

Message ID 20200206075711.1275-2-yuzenghui@huawei.com (mailing list archive)
State Mainlined
Commit e88bd316e5971fe78884ad1f466b9fc576575e5f
Headers show
Series irqchip/gic-v4.1: Cleanup and fixes for GICv4.1 | expand

Commit Message

Zenghui Yu Feb. 6, 2020, 7:57 a.m. UTC
The Size field of GICv4.1 VPROPBASER register indicates number of
pages minus one and together Page_Size and Size control the vPEID
width. Let's respect this requirement of the architecture.

Signed-off-by: Zenghui Yu <yuzenghui@huawei.com>
---
 drivers/irqchip/irq-gic-v3-its.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
index e5a25d97f8db..992bc72cab6f 100644
--- a/drivers/irqchip/irq-gic-v3-its.c
+++ b/drivers/irqchip/irq-gic-v3-its.c
@@ -2531,7 +2531,7 @@  static int allocate_vpe_l1_table(void)
 		npg = 1;
 	}
 
-	val |= FIELD_PREP(GICR_VPROPBASER_4_1_SIZE, npg);
+	val |= FIELD_PREP(GICR_VPROPBASER_4_1_SIZE, npg - 1);
 
 	/* Right, that's the number of CPU pages we need for L1 */
 	np = DIV_ROUND_UP(npg * psz, PAGE_SIZE);