[PATCH 1/7] drm/msm/dp: use dp_ctrl_off_link_stream during PHY compliance test run

khsieh at codeaurora.org khsieh at codeaurora.org
Thu Jul 8 21:33:51 UTC 2021


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 at 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;


More information about the dri-devel mailing list