On Fri, Oct 11, 2013 at 4:38 PM, Paolo Bonzini <pbonz...@redhat.com> wrote: > Il 11/10/2013 04:59, liu ping fan ha scritto: >> On Thu, Oct 10, 2013 at 7:41 PM, Michael S. Tsirkin <m...@redhat.com> wrote: >>> On Thu, Oct 10, 2013 at 11:46:42AM +0200, Paolo Bonzini wrote: >>>> Il 10/10/2013 11:41, Michael S. Tsirkin ha scritto: >>>>>>> Are you sure? This is not done for any other compat property. >>>>>>> >>>>>>> Paolo >>>>> It's done if we use the property from C. >>>>> See PCI_HOST_PROP_PCI_HOLE64_SIZE. >>>>> >>>>> You want compiler to catch errors, that's >>>>> much better than a runtime failure. >>>> >>>> I agree, but I think there should be no need to use the property from C. >>>> >>>> Paolo >>> >>> Well this patchset does use it from C. >>> If it's done it needs a macro. >> >> hpet.h is the ideal place to put the macro, so pc.c can see it. But >> what about PC_COMPAT_1_7 in pc.h? I think it is not right to include >> hpet.h. So can I do not use marco in pc.h? > > I think you shouldn't need the macro (no need to use the property from > C, only from compat properties). > We need to tell the compat and then decide to set "intcap" in pc_basic_device_init()
uint8_t compat = object_property_get_int(OBJECT(hpet), "intcap", NULL); if (!compat) { qdev_prop_set_uint32(hpet, "intcap", 0xff0104); } Regards, Ping Fan