diff options
author | Cornelia Huck <cohuck@redhat.com> | 2019-05-07 17:47:33 +0200 |
---|---|---|
committer | Cornelia Huck <cohuck@redhat.com> | 2019-06-24 17:27:57 +0200 |
commit | 8fadea24de4ef83dd2db3a9cd06b384fd820b9db (patch) | |
tree | aab722dbd72a8690a2cc024a879cd95802873656 /include/hw/s390x | |
parent | b5e89f044dea477cef0f8bf5da52035369d95157 (diff) |
vfio-ccw: support async command subregion
A vfio-ccw device may provide an async command subregion for
issuing halt/clear subchannel requests. If it is present, use
it for sending halt/clear request to the device; if not, fall
back to emulation (as done today).
Reviewed-by: Farhan Ali <alifm@linux.ibm.com>
Message-Id: <20190613092542.2834-1-cohuck@redhat.com>
Reviewed-by: Eric Farman <farman@linux.ibm.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Diffstat (limited to 'include/hw/s390x')
-rw-r--r-- | include/hw/s390x/css.h | 3 | ||||
-rw-r--r-- | include/hw/s390x/s390-ccw.h | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/include/hw/s390x/css.h b/include/hw/s390x/css.h index 7cc183ef43..d033387fba 100644 --- a/include/hw/s390x/css.h +++ b/include/hw/s390x/css.h @@ -215,6 +215,9 @@ IOInstEnding s390_ccw_cmd_request(SubchDev *sch); IOInstEnding do_subchannel_work_virtual(SubchDev *sub); IOInstEnding do_subchannel_work_passthrough(SubchDev *sub); +int s390_ccw_halt(SubchDev *sch); +int s390_ccw_clear(SubchDev *sch); + typedef enum { CSS_IO_ADAPTER_VIRTIO = 0, CSS_IO_ADAPTER_PCI = 1, diff --git a/include/hw/s390x/s390-ccw.h b/include/hw/s390x/s390-ccw.h index 901d805d79..fffb54562f 100644 --- a/include/hw/s390x/s390-ccw.h +++ b/include/hw/s390x/s390-ccw.h @@ -35,6 +35,8 @@ typedef struct S390CCWDeviceClass { void (*realize)(S390CCWDevice *dev, char *sysfsdev, Error **errp); void (*unrealize)(S390CCWDevice *dev, Error **errp); IOInstEnding (*handle_request) (SubchDev *sch); + int (*handle_halt) (SubchDev *sch); + int (*handle_clear) (SubchDev *sch); } S390CCWDeviceClass; #endif |