---
 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 majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to