Message ID | 1480395884-5471-3-git-send-email-john.stultz@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi John, Thank you for the patch. On Monday 28 Nov 2016 21:04:41 John Stultz wrote: > In chasing down a previous issue with EDID probing from calling > drm_helper_hpd_irq_event() from irq context, Laurent noticed > that the DRM documentation suggests that > drm_kms_helper_hotplug_event() should be used instead. > > Thus this patch replaces drm_helper_hpd_irq_event() with > drm_kms_helper_hotplug_event(). > > Cc: David Airlie <airlied@linux.ie> > Cc: Archit Taneja <architt@codeaurora.org> > Cc: Wolfram Sang <wsa+renesas@sang-engineering.com> > Cc: Lars-Peter Clausen <lars@metafoo.de> > Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > Cc: dri-devel@lists.freedesktop.org > Signed-off-by: John Stultz <john.stultz@linaro.org> > --- > drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c > b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c index b38e743..2caca0c > 100644 > --- a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c > +++ b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c > @@ -406,7 +406,7 @@ static void adv7511_irq_work(struct work_struct *work) > { > struct adv7511 *adv7511 = container_of(work, struct adv7511, irq_work); > > - drm_helper_hpd_irq_event(adv7511->connector.dev); > + drm_kms_helper_hotplug_event(adv7511->connector.dev); That's nice, but you must first update adv7511->connector.status (and as an optimization only call drm_kms_helper_hotplug_event() if the status has changed). > }
On Mon, Nov 28, 2016 at 10:50 PM, Laurent Pinchart <laurent.pinchart@ideasonboard.com> wrote: > Hi John, > > Thank you for the patch. > > On Monday 28 Nov 2016 21:04:41 John Stultz wrote: >> In chasing down a previous issue with EDID probing from calling >> drm_helper_hpd_irq_event() from irq context, Laurent noticed >> that the DRM documentation suggests that >> drm_kms_helper_hotplug_event() should be used instead. >> >> Thus this patch replaces drm_helper_hpd_irq_event() with >> drm_kms_helper_hotplug_event(). >> >> Cc: David Airlie <airlied@linux.ie> >> Cc: Archit Taneja <architt@codeaurora.org> >> Cc: Wolfram Sang <wsa+renesas@sang-engineering.com> >> Cc: Lars-Peter Clausen <lars@metafoo.de> >> Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> >> Cc: dri-devel@lists.freedesktop.org >> Signed-off-by: John Stultz <john.stultz@linaro.org> >> --- >> drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c >> b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c index b38e743..2caca0c >> 100644 >> --- a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c >> +++ b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c >> @@ -406,7 +406,7 @@ static void adv7511_irq_work(struct work_struct *work) >> { >> struct adv7511 *adv7511 = container_of(work, struct adv7511, > irq_work); >> >> - drm_helper_hpd_irq_event(adv7511->connector.dev); >> + drm_kms_helper_hotplug_event(adv7511->connector.dev); > > That's nice, but you must first update adv7511->connector.status (and as an > optimization only call drm_kms_helper_hotplug_event() if the status has > changed). Apologies for not seeing that subtlety. Thanks for pointing it out, I've updated my patch. thanks -john
diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c index b38e743..2caca0c 100644 --- a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c +++ b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c @@ -406,7 +406,7 @@ static void adv7511_irq_work(struct work_struct *work) { struct adv7511 *adv7511 = container_of(work, struct adv7511, irq_work); - drm_helper_hpd_irq_event(adv7511->connector.dev); + drm_kms_helper_hotplug_event(adv7511->connector.dev); }
In chasing down a previous issue with EDID probing from calling drm_helper_hpd_irq_event() from irq context, Laurent noticed that the DRM documentation suggests that drm_kms_helper_hotplug_event() should be used instead. Thus this patch replaces drm_helper_hpd_irq_event() with drm_kms_helper_hotplug_event(). Cc: David Airlie <airlied@linux.ie> Cc: Archit Taneja <architt@codeaurora.org> Cc: Wolfram Sang <wsa+renesas@sang-engineering.com> Cc: Lars-Peter Clausen <lars@metafoo.de> Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Cc: dri-devel@lists.freedesktop.org Signed-off-by: John Stultz <john.stultz@linaro.org> --- drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)