Re: [PATCH 0/3] Extend check callback usability for irq connect notifier

Peter Crosthwaite
2015-04-28T18:21:45Z

On Tue, Apr 28, 2015 at 2:18 AM, Eric Auger <eric.auger@linaro.org> wrote:
> The VFIO platform device gets connected to the platform bus
> on a machine init done notifier. Only at that point irqfd can be
> setup. An irq connect notifier would be helpful to do that job.
> Instead of adding a new callback at sysbus or qdev level, this
> series proposes to use the property check() callback (credit to
> Paolo).
>
> - the callback is passed to qdev_init_gpio_out_named
> - sysbus class now holds a irq_set_hook method usable as check
> callback
> - sysbus_init_irq initializes the callback to the class method
> - object_set_link_property is modified so that
> * the target object is populated before the check
> * check takes an Object ** enabling to access the object
> container.
>
> Then The VFIO platform device would override the irq_set_hook
> method in a separate patch.
>
> Please let me know if those modifications are acceptable. Else
> I will follow Peter's proposal.
>
> Best Regards
>
> Eric
>
> Eric Auger (3):
> qdev: pass the check callback to qdev_init_gpio_out_named
> qdev: check callback takes Object **target as third argument
> sysbus: add irq_set_hook
>
> hw/core/qdev-properties.c | 2 +-
> hw/core/qdev.c | 8 +++++---
> hw/core/sysbus.c | 8 +++++++-
> include/hw/qdev-core.h | 3 ++-
> include/hw/qdev-properties.h | 2 +-
> include/hw/sysbus.h | 1 +
> include/qom/object.h | 8 +++++---
> qom/object.c | 15 +++++++++------

I think following the latest reply, Paolo is ok for my proposal but it
is higher effort and to be done as follow up work. This means we
should just merge the sysbus variant of your patch and fix it all
later.

This avoids these temporary changes to the QOM core.

Sorry for the back and forth. Ill have a look at the RYO link approach
later this week.

Regards,
Peter

> 8 files changed, 31 insertions(+), 16 deletions(-)
>
> --
> 1.8.3.2
>
>