Message ID | 1625592020-22658-2-git-send-email-khsieh@codeaurora.org |
---|---|
State | Superseded |
Headers | show |
Series | add fixes to pass DP Link Layer compliance test cases | expand |
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@codeaurora.org> > --- 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") ? It's not clear how dp_ctrl_off() was working for compliance tests before commit f21c8a276c2d. > 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;
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@codeaurora.org> >> --- > > 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;
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;
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@codeaurora.org> --- drivers/gpu/drm/msm/dp/dp_ctrl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)