Re: [PATCH v4 05/10] drm/bridge: synopsis: Fix to properly handle HPD

From: H. Nikolaus Schaller
Date: Mon Sep 27 2021 - 13:54:14 EST




> Am 27.09.2021 um 19:00 schrieb Maxime Ripard <maxime@xxxxxxxxxx>:
>
> Hi,
>
> On Mon, Sep 27, 2021 at 06:44:23PM +0200, H. Nikolaus Schaller wrote:
>> It appears that dw-hdmi plugin detection is not properly
>> propagated unless we call drm_kms_helper_hotplug_event().
>>
>> Maybe drm_bridge_hpd_notify should have been setup to
>> call this.
>>
>> Signed-off-by: H. Nikolaus Schaller <hns@xxxxxxxxxxxxx>
>> ---
>> drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
>> index f082e14320e1..edea04f80576 100644
>> --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
>> +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
>> @@ -3018,6 +3018,8 @@ static irqreturn_t dw_hdmi_irq(int irq, void *dev_id)
>> if (hdmi->bridge.dev) {
>> drm_helper_hpd_irq_event(hdmi->bridge.dev);
>> drm_bridge_hpd_notify(&hdmi->bridge, status);
>> +
>> + drm_kms_helper_hotplug_event(hdmi->bridge.dev);
>
> drm_kms_helper_hotplug_event is already called from drm_helper_hpd_irq_event

Ah, now I see. It should be called but is not for some unkown
condition (poll disabled? changed = false?).

It may also be a leftover from the attempt to make it work with
the builtin dw-hdmi connector.

Will check for v5.

BR and thanks,
Nikolaus