OSDN Git Service

drm/msm/dp: unplug interrupt missed after irq_hpd handler
authorKuogee Hsieh <khsieh@codeaurora.org>
Wed, 13 Jan 2021 19:00:00 +0000 (11:00 -0800)
committerRob Clark <robdclark@chromium.org>
Sun, 31 Jan 2021 19:34:36 +0000 (11:34 -0800)
commit9fc418430c6584827b188855e698c599a7ddc0f1
treeab0405434f2276bd15c4d37f311f1da9246ea1f3
parentfe286893ed34b12684659d3efb907d47fe18559b
drm/msm/dp: unplug interrupt missed after irq_hpd handler

There is HPD unplug interrupts missed at scenario of an irq_hpd
followed by unplug interrupts with around 10 ms in between.
Since both AUX_SW_RESET and DP_SW_RESET clear pending HPD interrupts,
irq_hpd handler should not issues either aux or sw reset to avoid
following unplug interrupt be cleared accidentally. This patch
also postpone handling of irq_hpd until connected state if it
happened at connection pending state.

Changes in V2:
-- add postpone handling of irq_hpd until connected state
-- check DP_TRAINING_1 instead of DP_TRAINING_NONE

Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Rob Clark <robdclark@chromium.org>
drivers/gpu/drm/msm/dp/dp_aux.c
drivers/gpu/drm/msm/dp/dp_catalog.c
drivers/gpu/drm/msm/dp/dp_ctrl.c
drivers/gpu/drm/msm/dp/dp_display.c