[PATCH 13/14] drm/msm/dp: move next_bridge handling to dp_display

Kuogee Hsieh quic_khsieh at quicinc.com
Mon Jan 22 23:20:14 UTC 2024


On 1/22/2024 9:28 AM, Kuogee Hsieh wrote:
>
> On 1/19/2024 6:31 PM, Dmitry Baryshkov wrote:
>> On Fri, 19 Jan 2024 at 23:14, Kuogee Hsieh <quic_khsieh at quicinc.com> 
>> wrote:
>>> Dmitry,
>>>
>>> I am testing this patch serial with msm-next branch.
>>>
>>> This patch cause system crash during booting up for me.
>>>
>>> Is this patch work for you?
>> Yes, tested on top of linux-next. However I only tested it with
>> DP-over-USBC. What is your testcase? Could you please share the crash
>> log?
>
> I tested it on chrome device (sc7280) which has eDP as primary and 
> without external USBC DP connected.
>
> It crashes during boot.
>
> I will debug it more and collect logs for you.
>
Below  patch work for chrome with both eDP and external DP.

We have to return failed if it is the external DP and return value of 
devm_drm_of_get_bridge()  is !ENODEV since DP does not have next bridge.

Otherwise should continues to component_add()



@@ -1210,7 +1210,9 @@ static int dp_display_probe_tail(struct device *dev)
         dp->next_bridge = devm_drm_of_get_bridge(&dp->pdev->dev, 
dp->pdev->dev.of_node, 1, 0);
         if (IS_ERR(dp->next_bridge)) {
                 ret = PTR_ERR(dp->next_bridge);
-               if (dp->is_edp || ret != -ENODEV)
+               dp->next_bridge = NULL;
+
+               if (!dp->is_edp && ret != -ENODEV)
                         return ret;
         }
>
>>> On 12/29/2023 2:56 PM, Dmitry Baryshkov wrote:
>>>> Remove two levels of indirection and fetch next bridge directly in
>>>> dp_display_probe_tail().
>>>>
>>>> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
>>>> ---
>>>>    drivers/gpu/drm/msm/dp/dp_display.c | 42 
>>>> +++++++++--------------------
>>>>    drivers/gpu/drm/msm/dp/dp_parser.c  | 14 ----------
>>>>    drivers/gpu/drm/msm/dp/dp_parser.h  | 14 ----------
>>>>    3 files changed, 13 insertions(+), 57 deletions(-)


More information about the Freedreno mailing list