aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/virtual
diff options
context:
space:
mode:
authorAndre Przywara <andre.przywara@arm.com>2015-01-13 07:02:13 -0500
committerChristoffer Dall <christoffer.dall@linaro.org>2015-01-20 12:25:33 -0500
commit4fa96afd94a9bb29135d6e2e8fdb527e58f4fd5c (patch)
treeaa982135e881964a54d5e6e7f85563393abefb3d /Documentation/virtual
parentac3d373564d9744068d867a0eb16da2ff8d5ee9d (diff)
arm/arm64: KVM: force alignment of VGIC dist/CPU/redist addresses
Although the GIC architecture requires us to map the MMIO regions only at page aligned addresses, we currently do not enforce this from the kernel side. Restrict any vGICv2 regions to be 4K aligned and any GICv3 regions to be 64K aligned. Document this requirement. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Diffstat (limited to 'Documentation/virtual')
-rw-r--r--Documentation/virtual/kvm/devices/arm-vgic.txt4
1 files changed, 4 insertions, 0 deletions
diff --git a/Documentation/virtual/kvm/devices/arm-vgic.txt b/Documentation/virtual/kvm/devices/arm-vgic.txt
index 5d4fd4b944cd..3fb905429e8a 100644
--- a/Documentation/virtual/kvm/devices/arm-vgic.txt
+++ b/Documentation/virtual/kvm/devices/arm-vgic.txt
@@ -20,20 +20,24 @@ Groups:
20 KVM_VGIC_V2_ADDR_TYPE_DIST (rw, 64-bit) 20 KVM_VGIC_V2_ADDR_TYPE_DIST (rw, 64-bit)
21 Base address in the guest physical address space of the GIC distributor 21 Base address in the guest physical address space of the GIC distributor
22 register mappings. Only valid for KVM_DEV_TYPE_ARM_VGIC_V2. 22 register mappings. Only valid for KVM_DEV_TYPE_ARM_VGIC_V2.
23 This address needs to be 4K aligned and the region covers 4 KByte.
23 24
24 KVM_VGIC_V2_ADDR_TYPE_CPU (rw, 64-bit) 25 KVM_VGIC_V2_ADDR_TYPE_CPU (rw, 64-bit)
25 Base address in the guest physical address space of the GIC virtual cpu 26 Base address in the guest physical address space of the GIC virtual cpu
26 interface register mappings. Only valid for KVM_DEV_TYPE_ARM_VGIC_V2. 27 interface register mappings. Only valid for KVM_DEV_TYPE_ARM_VGIC_V2.
28 This address needs to be 4K aligned and the region covers 4 KByte.
27 29
28 KVM_VGIC_V3_ADDR_TYPE_DIST (rw, 64-bit) 30 KVM_VGIC_V3_ADDR_TYPE_DIST (rw, 64-bit)
29 Base address in the guest physical address space of the GICv3 distributor 31 Base address in the guest physical address space of the GICv3 distributor
30 register mappings. Only valid for KVM_DEV_TYPE_ARM_VGIC_V3. 32 register mappings. Only valid for KVM_DEV_TYPE_ARM_VGIC_V3.
33 This address needs to be 64K aligned and the region covers 64 KByte.
31 34
32 KVM_VGIC_V3_ADDR_TYPE_REDIST (rw, 64-bit) 35 KVM_VGIC_V3_ADDR_TYPE_REDIST (rw, 64-bit)
33 Base address in the guest physical address space of the GICv3 36 Base address in the guest physical address space of the GICv3
34 redistributor register mappings. There are two 64K pages for each 37 redistributor register mappings. There are two 64K pages for each
35 VCPU and all of the redistributor pages are contiguous. 38 VCPU and all of the redistributor pages are contiguous.
36 Only valid for KVM_DEV_TYPE_ARM_VGIC_V3. 39 Only valid for KVM_DEV_TYPE_ARM_VGIC_V3.
40 This address needs to be 64K aligned.
37 41
38 42
39 KVM_DEV_ARM_VGIC_GRP_DIST_REGS 43 KVM_DEV_ARM_VGIC_GRP_DIST_REGS