qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 4/5] pseries: Export /machine "rtc-time" propert


From: Alexander Graf
Subject: Re: [Qemu-devel] [PATCH 4/5] pseries: Export /machine "rtc-time" property
Date: Tue, 16 Dec 2014 10:42:22 +0100



> Am 16.12.2014 um 03:18 schrieb David Gibson <address@hidden>:
> 
>> On Tue, Dec 16, 2014 at 02:04:49AM +0100, Alexander Graf wrote:
>> 
>> 
>>> On 16.12.14 01:43, David Gibson wrote:
>>> On x86, the guest's RTC can be read with QMP via the "rtc-time" property
>>> on the /machine object.  This is due to an explicit QOM alias being set up
>>> by the mc146818rtc driver, and doesn't work on other targets.
>>> 
>>> This extends the pseries RTAS RTC to populate that property, for improved
>>> management compatibility with x86 guests.
>>> 
>>> Signed-off-by: David Gibson <address@hidden>
>> 
>> Yeah, this really should happen inside an rtc device.
>> 
>>> ---
>>> hw/ppc/spapr_rtc.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
>>> 1 file changed, 49 insertions(+)
>>> 
>>> diff --git a/hw/ppc/spapr_rtc.c b/hw/ppc/spapr_rtc.c
>>> index fac0017..13e74f1 100644
>>> --- a/hw/ppc/spapr_rtc.c
>>> +++ b/hw/ppc/spapr_rtc.c
>>> @@ -28,6 +28,7 @@
>>> #include "cpu.h"
>>> #include "hw/ppc/spapr.h"
>>> #include "qapi-event.h"
>>> +#include "qapi/visitor.h"
>>> 
>>> void spapr_rtc_read(sPAPREnvironment *spapr, struct tm *tm, uint32_t *ns)
>>> {
>>> @@ -87,10 +88,58 @@ static void rtas_set_time_of_day(PowerPCCPU *cpu, 
>>> sPAPREnvironment *spapr,
>>>     rtas_st(rets, 0, RTAS_OUT_SUCCESS);
>>> }
>>> 
>>> +static void spapr_qom_rtc_time(Object *obj, Visitor *v, void *opaque,
>>> +                               const char *name, Error **errp)
>> 
>> Also this function is mostly copy&paste from the mc14foo driver. Do you
>> think you can share this somehow?
> 
> I guess I can make a helper function.
> 
>> I also think the alias should get created by the machine, not the device
>> itself.
> 
> Again, I'm copying what mc146818rtc does.

Yup, but unfortunately layering violations that made it upstream are still 
violating our layering ;)

Alex

> 
> -- 
> David Gibson            | I'll have my music baroque, and my code
> david AT gibson.dropbear.id.au    | minimalist, thank you.  NOT _the_ _other_
>                | _way_ _around_!
> http://www.ozlabs.org/~dgibson



reply via email to

[Prev in Thread] Current Thread [Next in Thread]