On 2021-07-08 00:03, Stephen Boyd wrote:
Quoting Kuogee Hsieh (2021-07-06 10:20:14)
DP cable should always connect to DPU during the entire PHY compliance
testing run. Since DP PHY compliance test is executed at irq_hpd event
context, dp_ctrl_off_link_stream() should be used instead of
dp_ctrl_off().
dp_ctrl_off() is used for unplug event which is triggered when DP
cable is
dis connected.
Signed-off-by: Kuogee Hsieh <khsieh@xxxxxxxxxxxxxx>
---
Is this
Fixes: f21c8a276c2d ("drm/msm/dp: handle irq_hpd with sink_count = 0
correctly")
or
Fixes: c943b4948b58 ("drm/msm/dp: add displayPort driver support")
should be fixes at f21c8a276c2d ("drm/msm/dp: handle irq_hpd with
sink_count = 0 correctly")
? It's not clear how dp_ctrl_off() was working for compliance tests
before commit f21c8a276c2d.
both dp_ctrl_off() and dp_ctrl_off_link_strea() are work for
dp_ctrl_process_phy_test_request()
The problem is after dp_ctrl_off(), aux channel is down, hence next phy
test will failed due to dpcd read failed.
So that cable unplugged and replug back to required to run next test
case.
dp_ctrl_off_link_stream() will keep aux channel up and other phy test
case can be continued.
drivers/gpu/drm/msm/dp/dp_ctrl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/msm/dp/dp_ctrl.c
b/drivers/gpu/drm/msm/dp/dp_ctrl.c
index caf71fa..27fb0f0 100644
--- a/drivers/gpu/drm/msm/dp/dp_ctrl.c
+++ b/drivers/gpu/drm/msm/dp/dp_ctrl.c
@@ -1530,7 +1530,7 @@ static int
dp_ctrl_process_phy_test_request(struct dp_ctrl_private *ctrl)
* running. Add the global reset just before disabling the
* link clocks and core clocks.
*/
- ret = dp_ctrl_off(&ctrl->dp_ctrl);
+ ret = dp_ctrl_off_link_stream(&ctrl->dp_ctrl);
if (ret) {
DRM_ERROR("failed to disable DP controller\n");
return ret;