qemu/include/hw/s390x
Fei Li 6c1dd652a6 s390x/flic: introduce modify_ais_mode callback
In order to emulate the adapter interruption suppression (AIS)
facility properly, the guest needs to be able to modify the AIS mask.
Interrupt suppression will be handled via the flic (for kvm, via a
recently introduced kernel backend; for !kvm, in the flic code), so
let's introduce a method to change the mode via the flic interface.

We introduce the 'simm' and 'nimm' fields to QEMUS390FLICState
to store interruption modes for each ISC. Each bit in 'simm' and
'nimm' targets one ISC, and collaboratively indicate three modes:
ALL-Interruptions, SINGLE-Interruption and NO-Interruptions. This
interface can initiate most transitions between the states; transition
from SINGLE-Interruption to NO-Interruptions via adapter interrupt
injection will be introduced in a following patch. The meaningful
combinations are as follows:

    interruption mode | simm bit | nimm bit
    ------------------|----------|----------
             ALL      |    0     |     0
           SINGLE     |    1     |     0
             NO       |    1     |     1

Co-authored-by: Yi Min Zhao <zyimin@linux.vnet.ibm.com>
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>
2017-07-14 12:29:47 +02:00
..
3270-ccw.h s390x/3270: 3270 data stream handling 2017-05-04 10:34:37 +02:00
adapter.h s390x/virtio-ccw: wire up irq routing and irqfds 2014-05-20 13:05:58 +02:00
css-bridge.h s390x/css: realize css_create_sch 2017-05-19 12:29:01 +02:00
css.h s390x: add flags field for registering I/O adapter 2017-07-14 12:29:47 +02:00
ebcdic.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
event-facility.h Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
ioinst.h s390x/css: fence off MIDA 2017-06-06 10:17:11 +02:00
s390-ccw.h s390x/css: introduce and realize ccw-request callback 2017-05-19 12:29:01 +02:00
s390-virtio-ccw.h s390x/css: add s390-squash-mcss machine option 2017-05-19 12:29:01 +02:00
s390_flic.h s390x/flic: introduce modify_ais_mode callback 2017-07-14 12:29:47 +02:00
sclp.h s390x/sclp: propagate hmfai 2016-09-06 17:06:50 +02:00
storage-attributes.h s390x/migration: Monitor commands for storage attributes 2017-07-14 12:29:47 +02:00
storage-keys.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00