[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH qom-next 10/12] pc: Enable MSI support at APIC level
From: |
Igor Mammedov |
Subject: |
[Qemu-devel] [PATCH qom-next 10/12] pc: Enable MSI support at APIC level |
Date: |
Wed, 30 May 2012 00:10:23 +0200 |
From: Jan Kiszka <address@hidden>
Push msi_supported enabling to the APIC implementations where we can
encapsulate the decision more cleanly, hiding the details from the
generic code.
Acked-by: Stefano Stabellini <address@hidden>
Signed-off-by: Jan Kiszka <address@hidden>
Signed-off-by: Marcelo Tosatti <address@hidden>
---
hw/apic.c | 3 +++
hw/pc.c | 9 ---------
hw/xen.h | 10 ----------
hw/xen_apic.c | 5 +++++
4 files changed, 8 insertions(+), 19 deletions(-)
diff --git a/hw/apic.c b/hw/apic.c
index 1207c33..92e8339 100644
--- a/hw/apic.c
+++ b/hw/apic.c
@@ -19,6 +19,7 @@
#include "apic_internal.h"
#include "apic.h"
#include "ioapic.h"
+#include "msi.h"
#include "host-utils.h"
#include "trace.h"
#include "pc.h"
@@ -866,6 +867,8 @@ static void apic_init(APICCommonState *s)
s->timer = qemu_new_timer_ns(vm_clock, apic_timer, s);
local_apics[s->idx] = s;
+
+ msi_supported = true;
}
static void apic_class_init(ObjectClass *klass, void *data)
diff --git a/hw/pc.c b/hw/pc.c
index e38bf24..d178801 100644
--- a/hw/pc.c
+++ b/hw/pc.c
@@ -912,15 +912,6 @@ static DeviceState *apic_init(void *env, uint8_t apic_id)
apic_mapped = 1;
}
- /* KVM does not support MSI yet. */
- if (!kvm_irqchip_in_kernel()) {
- msi_supported = true;
- }
-
- if (xen_msi_support()) {
- msi_supported = true;
- }
-
return dev;
}
diff --git a/hw/xen.h b/hw/xen.h
index 3ae4cd0..e5926b7 100644
--- a/hw/xen.h
+++ b/hw/xen.h
@@ -57,14 +57,4 @@ void xen_register_framebuffer(struct MemoryRegion *mr);
# define HVM_MAX_VCPUS 32
#endif
-static inline int xen_msi_support(void)
-{
-#if defined(CONFIG_XEN_CTRL_INTERFACE_VERSION) \
- && CONFIG_XEN_CTRL_INTERFACE_VERSION >= 420
- return xen_enabled();
-#else
- return 0;
-#endif
-}
-
#endif /* QEMU_HW_XEN_H */
diff --git a/hw/xen_apic.c b/hw/xen_apic.c
index 1725ff6..a9e101f 100644
--- a/hw/xen_apic.c
+++ b/hw/xen_apic.c
@@ -40,6 +40,11 @@ static void xen_apic_init(APICCommonState *s)
{
memory_region_init_io(&s->io_memory, &xen_apic_io_ops, s, "xen-apic-msi",
MSI_SPACE_SIZE);
+
+#if defined(CONFIG_XEN_CTRL_INTERFACE_VERSION) \
+ && CONFIG_XEN_CTRL_INTERFACE_VERSION >= 420
+ msi_supported = true;
+#endif
}
static void xen_apic_set_base(APICCommonState *s, uint64_t val)
--
1.7.7.6
- [Qemu-devel] [PATCH qom-next 12/12] target-i386: move reset callback to cpu.c and call cpu_reset() in x86_cpu_realize(), (continued)
- [Qemu-devel] [PATCH qom-next 12/12] target-i386: move reset callback to cpu.c and call cpu_reset() in x86_cpu_realize(), Igor Mammedov, 2012/05/29
- [Qemu-devel] [PATCH qom-next 08/12] target-i386: introduce cpu-model property for x86_cpu, Igor Mammedov, 2012/05/29
- [Qemu-devel] [PATCH qom-next 11/12] target-i386: initialize APIC at CPU level, Igor Mammedov, 2012/05/29
- Re: [Qemu-devel] [PATCH qom-next 11/12] target-i386: initialize APIC at CPU level, Jan Kiszka, 2012/05/30
- Re: [Qemu-devel] [PATCH qom-next 11/12] target-i386: initialize APIC at CPU level, Igor Mammedov, 2012/05/30
- Re: [Qemu-devel] [PATCH qom-next 11/12] target-i386: initialize APIC at CPU level, Jan Kiszka, 2012/05/30
- Re: [Qemu-devel] [PATCH qom-next 11/12] target-i386: initialize APIC at CPU level, Igor Mammedov, 2012/05/30
- Re: [Qemu-devel] [PATCH qom-next 11/12] target-i386: initialize APIC at CPU level, Jan Kiszka, 2012/05/30
- Re: [Qemu-devel] [PATCH qom-next 11/12] target-i386: initialize APIC at CPU level, Igor Mammedov, 2012/05/30
[Qemu-devel] [PATCH qom-next 10/12] pc: Enable MSI support at APIC level,
Igor Mammedov <=
[Qemu-devel] [PATCH qom-next v3 0/12] target-i386: re-factor CPU creation/initialization to QOM, Igor Mammedov, 2012/05/29