Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/msm/dp: don't touch DP subconnector property in eDP case

In case of the eDP connection there is no subconnetor and as such no
subconnector property. Put drm_dp_set_subconnector_property() calls
under the !is_edp condition.

Fixes: bfcc3d8f94f4 ("drm/msm/dp: support setting the DP subconnector type")
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Tested-by: Jessica Zhang <quic_jesszhan@quicinc.com> # SC7280
Reviewed-by: Johan Hovold <johan+linaro@kernel.org>
Tested-by: Johan Hovold <johan+linaro@kernel.org>
Patchwork: https://patchwork.freedesktop.org/patch/564284/
Link: https://lore.kernel.org/r/20231025092711.851168-2-dmitry.baryshkov@linaro.org
Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>

authored by

Abel Vesa and committed by
Abhinav Kumar
ebfa85c5 a33b2431

+10 -5
+10 -5
drivers/gpu/drm/msm/dp/dp_display.c
··· 365 365 /* reset video pattern flag on disconnect */ 366 366 if (!hpd) { 367 367 dp->panel->video_test = false; 368 - drm_dp_set_subconnector_property(dp->dp_display.connector, 369 - connector_status_disconnected, 370 - dp->panel->dpcd, dp->panel->downstream_ports); 368 + if (!dp->dp_display.is_edp) 369 + drm_dp_set_subconnector_property(dp->dp_display.connector, 370 + connector_status_disconnected, 371 + dp->panel->dpcd, 372 + dp->panel->downstream_ports); 371 373 } 372 374 373 375 dp->dp_display.is_connected = hpd; ··· 398 396 399 397 dp_link_process_request(dp->link); 400 398 401 - drm_dp_set_subconnector_property(dp->dp_display.connector, connector_status_connected, 402 - dp->panel->dpcd, dp->panel->downstream_ports); 399 + if (!dp->dp_display.is_edp) 400 + drm_dp_set_subconnector_property(dp->dp_display.connector, 401 + connector_status_connected, 402 + dp->panel->dpcd, 403 + dp->panel->downstream_ports); 403 404 404 405 edid = dp->panel->edid; 405 406