[Qemu-devel][PATCH 05/12] KVM/MIPS: In KVM mode, inject IRQ2 (I/O) interupts via ioctls(). COP0 emulation is in-kernel

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



---
 hw/mips_int.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/hw/mips_int.c b/hw/mips_int.c
index 6423fd0..6c655af 100644
--- a/hw/mips_int.c
+++ b/hw/mips_int.c
@@ -23,6 +23,8 @@
 #include "hw.h"
 #include "mips_cpudevs.h"
 #include "cpu.h"
+#include "sysemu/kvm.h"
+#include "kvm_mips.h"
 
 static void cpu_mips_irq_request(void *opaque, int irq, int level)
 {
@@ -33,8 +35,21 @@ static void cpu_mips_irq_request(void *opaque, int irq, int level)
 
     if (level) {
         env->CP0_Cause |= 1 << (irq + CP0Ca_IP);
+
+#ifdef CONFIG_KVM
+        if (kvm_enabled() && irq == 2) {
+            kvm_mips_set_interrupt (env, irq, level);
+        }
+#endif
+
     } else {
         env->CP0_Cause &= ~(1 << (irq + CP0Ca_IP));
+
+#ifdef CONFIG_KVM
+        if (kvm_enabled() && irq == 2) {
+            kvm_mips_set_interrupt (env, irq, level);
+        }
+#endif
     }
 
     if (env->CP0_Cause & CP0Ca_IP_mask) {
-- 
1.7.11.3

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux