aboutsummaryrefslogtreecommitdiff
path: root/include/hw/s390x
diff options
context:
space:
mode:
authorYi Min Zhao <zyimin@linux.vnet.ibm.com>2017-02-17 15:00:59 +0800
committerChristian Borntraeger <borntraeger@de.ibm.com>2017-07-14 12:29:47 +0200
commit1622ffd5151ad09c47785a380531ef1ebfc95be8 (patch)
tree03ec6c19ce9e9d272a4785acf44b811e7bed4d01 /include/hw/s390x
parent6c1dd652a606f4446cdb8883ac68d6fb54b02e5c (diff)
s390x/flic: introduce inject_airq callback
Let's introduce a specialized way to inject adapter interrupts that, unlike the common interrupt injection method, allows to take the characteristics of the adapter into account. For adapters subject to AIS facility: - for non-kvm case, we handle the suppression for a given ISC in QEMU. - for kvm case, we pass adapter id to kvm to do airq injection. Add add tracepoint for suppressed airq and suppressing airq. Signed-off-by: Yi Min Zhao <zyimin@linux.vnet.ibm.com> Signed-off-by: Fei Li <sherrylf@linux.vnet.ibm.com> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Diffstat (limited to 'include/hw/s390x')
-rw-r--r--include/hw/s390x/s390_flic.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/hw/s390x/s390_flic.h b/include/hw/s390x/s390_flic.h
index f500184794..2f173d905c 100644
--- a/include/hw/s390x/s390_flic.h
+++ b/include/hw/s390x/s390_flic.h
@@ -64,6 +64,8 @@ typedef struct S390FLICStateClass {
int (*clear_io_irq)(S390FLICState *fs, uint16_t subchannel_id,
uint16_t subchannel_nr);
int (*modify_ais_mode)(S390FLICState *fs, uint8_t isc, uint16_t mode);
+ int (*inject_airq)(S390FLICState *fs, uint8_t type, uint8_t isc,
+ uint8_t flags);
} S390FLICStateClass;
#define TYPE_KVM_S390_FLIC "s390-flic-kvm"