-
Andre Przywara authored
At the moment kvmtool always tries to instantiate a virtual GICv2 interrupt controller for the guest, and fails with some scary error message if that doesn't work. The user has then to manually specify "--irqchip=gicv3", which is not really obvious. With the advent of more GICv3-only machines, let's try to be more clever and implement some auto-detection of the GIC type needed: We try gicv3-its, gicv3, gicv2m and gicv2, in that order. The first one succeeding wins. For GICv2 machines the first two will always fail. On GICv3 machines offering GICv2 compatibility we used to prefer a virtual GICv2 in the guest, but these days the GICv3 support both in guests and in KVM is equally mature and wide-spread, so we should use the GICv3 emulation for the guest as well. This algorithm is in effect is there is no explicit --irqchip parameter on the command line. We still allow the GIC type to be set explicitly. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Will Deacon <will.deacon@arm.com>
c57e001a