diff options
author | Markus Armbruster | 2022-02-22 13:02:07 +0100 |
---|---|---|
committer | Markus Armbruster | 2022-02-28 11:39:35 +0100 |
commit | 2beb1e5f9acb443d90fe4d366463f89d32d83bc8 (patch) | |
tree | 3039414c1a58c8778309dd16014befeb882489a7 /hw/ppc | |
parent | hw/rtc: Compile pl031 once-only (diff) | |
download | qemu-2beb1e5f9acb443d90fe4d366463f89d32d83bc8.tar.gz qemu-2beb1e5f9acb443d90fe4d366463f89d32d83bc8.tar.xz qemu-2beb1e5f9acb443d90fe4d366463f89d32d83bc8.zip |
rtc: Have event RTC_CHANGE identify the RTC by QOM path
Event RTC_CHANGE is "emitted when the guest changes the RTC time" (and
the RTC supports the event). What if there's more than one RTC?
Which one changed? New @qom-path identifies it.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <87a6ejnm80.fsf@pond.sub.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Diffstat (limited to 'hw/ppc')
-rw-r--r-- | hw/ppc/spapr_rtc.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/hw/ppc/spapr_rtc.c b/hw/ppc/spapr_rtc.c index 79677cf550..d55b4b0c50 100644 --- a/hw/ppc/spapr_rtc.c +++ b/hw/ppc/spapr_rtc.c @@ -97,6 +97,7 @@ static void rtas_set_time_of_day(PowerPCCPU *cpu, SpaprMachineState *spapr, uint32_t nret, target_ulong rets) { SpaprRtcState *rtc = &spapr->rtc; + g_autofree const char *qom_path = NULL; struct tm tm; time_t new_s; int64_t host_ns; @@ -120,7 +121,8 @@ static void rtas_set_time_of_day(PowerPCCPU *cpu, SpaprMachineState *spapr, } /* Generate a monitor event for the change */ - qapi_event_send_rtc_change(qemu_timedate_diff(&tm)); + qom_path = object_get_canonical_path(OBJECT(rtc)); + qapi_event_send_rtc_change(qemu_timedate_diff(&tm), qom_path); host_ns = qemu_clock_get_ns(rtc_clock); |