All of lore.kernel.org
 help / color / mirror / Atom feed
* KVM works on RPi4
@ 2019-06-29 17:09 ` Jan Kiszka
  0 siblings, 0 replies; 16+ messages in thread
From: Jan Kiszka @ 2019-06-29 17:09 UTC (permalink / raw)
  To: kvmarm, kvm; +Cc: Marc Zyngier

Hi all,

just got KVM running on the Raspberry Pi4. Seems they now embedded all
required logic into that new SoC.

However, as the Raspberry kernel is not yet ready for 64-bit (and
upstream is not in sight), I had to use legacy 32-bit mode. And there we
stumble over the core detection. This little patch made it work, though:

diff --git a/arch/arm/kvm/guest.c b/arch/arm/kvm/guest.c
index 2b8de885b2bf..01606aad73cc 100644
--- a/arch/arm/kvm/guest.c
+++ b/arch/arm/kvm/guest.c
@@ -290,6 +290,7 @@ int __attribute_const__ kvm_target_cpu(void)
 	case ARM_CPU_PART_CORTEX_A7:
 		return KVM_ARM_TARGET_CORTEX_A7;
 	case ARM_CPU_PART_CORTEX_A15:
+	case ARM_CPU_PART_CORTEX_A72:
 		return KVM_ARM_TARGET_CORTEX_A15;
 	default:
 		return -EINVAL;

That raises the question if this is hack or a valid change and if there
is general interest in mapping 64-bit cores on 32-bit if they happen to
run in 32-bit mode.

Jan

PS: The RPi device tree lacks description of the GICH maintenance
interrupts. Seems KVM is fine without that - because it has the
information hard-coded or because it can live without that interrupt?
_______________________________________________
kvmarm mailing list
kvmarm@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm

^ permalink raw reply related	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2019-08-26 12:00 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-06-29 17:09 KVM works on RPi4 Jan Kiszka
2019-06-29 17:09 ` Jan Kiszka
2019-06-29 22:42 ` Marc Zyngier
2019-06-29 22:42   ` Marc Zyngier
2019-06-30  9:34   ` Jan Kiszka
2019-06-30  9:34     ` Jan Kiszka
2019-06-30 10:18     ` Jan Kiszka
2019-06-30 10:18       ` Jan Kiszka
2019-06-30 10:49       ` Jan Kiszka
2019-06-30 10:49         ` Jan Kiszka
2019-07-01  8:18         ` Vladimir Murzin
2019-07-01  8:18           ` Vladimir Murzin
2019-08-26  8:38       ` Christoffer Dall
2019-08-26  8:38         ` Christoffer Dall
2019-08-26 12:00         ` Peter Maydell
2019-08-26 12:00           ` Peter Maydell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.