Add QAPI event SCLP_CPI_INFO_AVAILABLE to notify the availability of Control-Program Identification data in QOM.
Signed-off-by: Shalini Chellathurai Saroja <[email protected]> Suggested-by: Thomas Huth <[email protected]> --- hw/s390x/sclpcpi.c | 4 ++++ qapi/machine-s390x.json | 25 +++++++++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/hw/s390x/sclpcpi.c b/hw/s390x/sclpcpi.c index 7aa039d510..90da61b1c8 100644 --- a/hw/s390x/sclpcpi.c +++ b/hw/s390x/sclpcpi.c @@ -54,6 +54,7 @@ #include "hw/s390x/event-facility.h" #include "hw/s390x/ebcdic.h" #include "qapi/qapi-visit-machine.h" +#include "qapi/qapi-events-machine-s390x.h" #include "migration/vmstate.h" typedef struct Data { @@ -106,6 +107,9 @@ static int write_event_data(SCLPEvent *event, EventBufferHeader *evt_buf_hdr) e->timestamp = qemu_clock_get_ns(QEMU_CLOCK_HOST); cpim->ebh.flags = SCLP_EVENT_BUFFER_ACCEPTED; + + qapi_event_send_sclp_cpi_info_available(true); + return SCLP_RC_NORMAL_COMPLETION; } diff --git a/qapi/machine-s390x.json b/qapi/machine-s390x.json index 966dbd61d2..338653e0b8 100644 --- a/qapi/machine-s390x.json +++ b/qapi/machine-s390x.json @@ -119,3 +119,28 @@ { 'command': 'query-s390x-cpu-polarization', 'returns': 'CpuPolarizationInfo', 'features': [ 'unstable' ] } + +## +# @SCLP_CPI_INFO_AVAILABLE: +# +# Emitted when the Control-Program Identification data is available +# in the QOM tree. +# +# @iscpiavailable: is CPI data available in QOM +# +# Features: +# +# @unstable: This event is experimental. +# +# Since: 10.2 +# +# .. qmp-example:: +# +# <- { "event": "SCLP_CPI_INFO_AVAILABLE", +# "data": { "iscpiavailable": true }, +# "timestamp": { "seconds": 1401385907, "microseconds": 422329 } } +## +{ 'event': 'SCLP_CPI_INFO_AVAILABLE', + 'data': { 'iscpiavailable': 'bool' }, + 'features': [ 'unstable' ] +} -- 2.49.0
