aboutsummaryrefslogtreecommitdiff
path: root/include/hw/i386/apic_internal.h
diff options
context:
space:
mode:
authorRadim Krčmář <rkrcmar@redhat.com>2016-10-10 17:28:43 +0200
committerEduardo Habkost <ehabkost@redhat.com>2016-10-17 15:44:49 -0200
commit267ee357153bb61870b60da69ba9f839ddb0e32e (patch)
tree00d445a965aa271f50d8740ba131b9159e9277ce /include/hw/i386/apic_internal.h
parent2f114315dcf239bc513f18ae0b04b5df81cae059 (diff)
downloadqemu-267ee357153bb61870b60da69ba9f839ddb0e32e.zip
qemu-267ee357153bb61870b60da69ba9f839ddb0e32e.tar.gz
qemu-267ee357153bb61870b60da69ba9f839ddb0e32e.tar.bz2
apic: add send_msi() to APICCommonClass
The MMIO based interface to APIC doesn't work well with MSIs that have upper address bits set (remapped x2APIC MSIs). A specialized interface is a quick and dirty way to avoid the shortcoming. Reviewed-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com> Signed-off-by: Radim Krčmář <rkrcmar@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'include/hw/i386/apic_internal.h')
-rw-r--r--include/hw/i386/apic_internal.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/hw/i386/apic_internal.h b/include/hw/i386/apic_internal.h
index 2866848..cdd11fb 100644
--- a/include/hw/i386/apic_internal.h
+++ b/include/hw/i386/apic_internal.h
@@ -146,6 +146,10 @@ typedef struct APICCommonClass
void (*pre_save)(APICCommonState *s);
void (*post_load)(APICCommonState *s);
void (*reset)(APICCommonState *s);
+ /* send_msi emulates an APIC bus and its proper place would be in a new
+ * device, but it's convenient to have it here for now.
+ */
+ void (*send_msi)(MSIMessage *msi);
} APICCommonClass;
struct APICCommonState {