Re: [RFC PATCH 0/2] drm/msm/dp: refactor the msm dp driver resources

From: Dmitry Baryshkov
Date: Thu Feb 23 2023 - 10:19:08 EST


On Thu, 23 Feb 2023 at 15:57, Sankeerth Billakanti
<quic_sbillaka@xxxxxxxxxxx> wrote:
>
> The DP driver resources are currently enabled and disabled directly based on code flow.
> As mentioned in bug 230631602, we want to do the following:

private bug tracker

>
> 1) Refactor the dp/edp parsing code to move it to probe (it is currently done in bind).

This is good. I'd suggest splitting this into smaller chunks. First,
move all resource binding, then move the actual dp_aux handling. It
would be easier to review it this way.

> 2) Then bind all the power resources needed for AUX in pm_runtime_ops.
>
> 3) Handle EPROBE_DEFER cases of the panel-eDP aux device.

This is not handled properly. The eDP aux probing is asynchronous, so
you should move the second stage into the done_probing() part, rather
than relying on the -EPROBE_DEFER. There can be cases, when the panel
driver is not available at the DP's probe time. In such cases we
should leave the DP driver probed, then wait for the panel before
binding the component.

> 4) Verify DP functionality is unaffected.
>
> These code changes will parse the resources and get the edp panel during probe.
> All the necessary resources required for the aux transactions are moved to pm_runtime ops.
> They are enabled or disabled via get/put sync functions.
>
> This is a RFC to verify with the community if the approach we are taking is correct.
>
> https://partnerissuetracker.corp.google.com/issues/230631602

This link is useless, since its contents are not public.

>
> Sankeerth Billakanti (2):
> drm/msm/dp: enumerate edp panel during driver probe
> drm/msm/dp: enable pm_runtime support for dp driver
>
> drivers/gpu/drm/msm/dp/dp_aux.c | 155 +++++++++++++++++++++--
> drivers/gpu/drm/msm/dp/dp_catalog.c | 12 ++
> drivers/gpu/drm/msm/dp/dp_catalog.h | 1 +
> drivers/gpu/drm/msm/dp/dp_display.c | 185 ++++++++++++++--------------
> drivers/gpu/drm/msm/dp/dp_power.c | 7 --
> 5 files changed, 250 insertions(+), 110 deletions(-)
>
> --
> 2.39.0
>


--
With best wishes
Dmitry