]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
drm/bridge: anx7625: fix anx7625_sink_detect() to return correct hpd status
authorAyushi Makhija <quic_amakhija@quicinc.com>
Mon, 5 May 2025 09:42:44 +0000 (15:12 +0530)
committerDmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Mon, 5 May 2025 14:23:34 +0000 (17:23 +0300)
commit366ca0bcc953a4a8a9c9ce2133e6843730210049
treebcd55a1c04635bfae39520df2fdfb1189a5a6d6d
parent71867e8d88fc7f94c2e47b3cfd676710c120cbe3
drm/bridge: anx7625: fix anx7625_sink_detect() to return correct hpd status

In the anx7625_sink_detect(), the device is checked to see
if it is a panel bridge, and it always sends a "connected"
status to the connector. When adding the DP port on port 1 of the
anx7625, it incorrectly treats it as a panel bridge and sends an
always "connected" status. Instead of checking the status on the
panel bridge, it's better to check the hpd_status for connectors
that supports hot-plugging. This way, it verifies the hpd_status
variable before sending the status to the connector.

In case of eDP, anx7625_bridge_detect() will not get called because
the bridge->ops condition in anx7625_link_bridge() will not be
satisfied. Since anx7625_sink_detect() is called from
anx7625_bridge_detect(), this results in the sink_detect logic not
being executed for eDP.

Signed-off-by: Ayushi Makhija <quic_amakhija@quicinc.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250505094245.2660750-6-quic_amakhija@quicinc.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
drivers/gpu/drm/bridge/analogix/anx7625.c