KVM: arm64: vgic-its: Fix compatibility with 32-bit
authorVladimir Murzin <vladimir.murzin@arm.com>
Wed, 2 Nov 2016 11:55:33 +0000 (11:55 +0000)
committerMarc Zyngier <marc.zyngier@arm.com>
Mon, 14 Nov 2016 10:32:24 +0000 (10:32 +0000)
commite29bd6f26703088930a5b3595623cf155ddea600
treeea18441c085351d80204aef5a32d14df92fe7c41
parenta25f0944ba9b1d8a6813fd6f1a86f1bd59ac25a6
KVM: arm64: vgic-its: Fix compatibility with 32-bit

Evaluate GITS_BASER_ENTRY_SIZE once as an int data (GITS_BASER<n>'s
Entry Size is 5-bit wide only), so when used as divider no reference
to __aeabi_uldivmod is generated when build for AArch32.

Use unsigned long long for GITS_BASER_PAGE_SIZE_* since they are
used in conjunction with 64-bit data.

Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
include/linux/irqchip/arm-gic-v3.h
virt/kvm/arm/vgic/vgic-its.c