> On 01/12/2018 02:20 PM, Philippe Mathieu-Daudé wrote: >> On Fri, Jan 12, 2018 at 2:05 PM, Peter Maydell <peter.mayd...@linaro.org> >> wrote: >>> On 11 January 2018 at 19:30, Philippe Mathieu-Daudé <f4...@amsat.org> wrote: >>>> Now both sysbus/pci classes inherit of the 'pending-insert-quirk' property, >>>> which is a HCI dependent property (regardless if accessed through a MMIO >>>> sysbus or a PCI bus). >>>> So far only the BCM implementation has to use it. >>>> >>>> Add sysbus/pci/sdbus comments to have clearer code blocks separation. >>>> >>>> Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> >>>> Reviewed-by: Alistair Francis <alistair.fran...@xilinx.com> >>> >>> I'm not sure about this patch, because it means that we now have >>> no mechanism for having a property which exists on the sysbus >>> device but not on the PCI device (and as per my comments on the >>> last patch in this set, we do need to be able to do that). > > Does this look OK to you? > > static Property sdhci_sysbus_pending_insert_quirk_property = > DEFINE_PROP_BOOL("pending-insert-quirk", > SDHCIState, pending_insert_quirk, false); > > static Property sdhci_sysbus_dma_mr_property = > DEFINE_PROP_LINK("dma", > SDHCIState, dma_mr, TYPE_MEMORY_REGION, MemoryRegion *); > > static void sdhci_sysbus_post_init(Object *obj)
No need to use the post_init(), this can go in the sdhci_initfn(). > { > SDHCIState *s = SYSBUS_SDHCI(obj); > > sdhci_common_post_init(obj); /* add common properties */ > qdev_property_add_static(DEVICE(obj), > &sdhci_sysbus_pending_insert_quirk_property, &error_abort); > qdev_property_add_static(DEVICE(obj), > &sdhci_sysbus_dma_mr_property, &error_abort); > } > > static const TypeInfo sdhci_sysbus_info = { > .name = TYPE_SYSBUS_SDHCI, > .parent = TYPE_SYS_BUS_DEVICE, > .instance_size = sizeof(SDHCIState), > .instance_init = sdhci_sysbus_init, > .instance_post_init = sdhci_sysbus_post_init, Not needed. > ... > }; > > This way we can have a property which exists on the sysbus > device but not on the PCI device, and keep the common one in the same > piece of code (I later add a few common properties).