Re: [PATCH v5 1/2] drm/bridge: parade-ps8640: Enable runtime power management

From: Doug Anderson
Date: Thu Oct 28 2021 - 15:39:26 EST


Hi,

On Thu, Oct 28, 2021 at 11:02 AM Philip Chen <philipchen@xxxxxxxxxxxx> wrote:
>
> Add "Sam Ravnborg <sam@xxxxxxxxxxxx>" to cc list for vis.
> Remove "Andrzej Hajda <a.hajda@xxxxxxxxxxx>" from cc list as the
> address can't be found.

Looking at <https://lore.kernel.org/all/b2fb88db-009e-4b38-dc3d-5ce9163257de@xxxxxxxxxxx/>,
it should be Andrzej Hajda <andrzej.hajda@xxxxxxxxx>. I've added.


> On Thu, Oct 28, 2021 at 10:58 AM Philip Chen <philipchen@xxxxxxxxxxxx> wrote:
> >
> > Fit ps8640 driver into runtime power management framework:
> >
> > First, break _poweron() to 3 parts: (1) turn on power and wait for
> > ps8640's internal MCU to finish init (2) check panel HPD (which is
> > proxied by GPIO9) (3) the other configs. As runtime_resume() can be
> > called before panel is powered, we only add (1) to _resume() and leave
> > (2)(3) to _pre_enable(). We also add (2) to _aux_transfer() as we want
> > to ensure panel HPD is asserted before we start AUX CH transactions.
> >
> > Second, the original driver has a mysterious delay of 50 ms between (2)
> > and (3). Since Parade's support can't explain what the delay is for,
> > and we don't see removing the delay break any boards at hand, remove
> > the delay to fit into this driver change.
> >
> > In addition, rename "powered" to "pre_enabled" and don't check for it
> > in the pm_runtime calls. The pm_runtime calls are already refcounted
> > so there's no reason to check there. The other user of "powered",
> > _get_edid(), only cares if pre_enable() has already been called.
> >
> > Lastly, change some existing DRM_...() logging to dev_...() along the
> > way, since DRM_...() seem to be deprecated in [1].
> >
> > [1] https://patchwork.freedesktop.org/patch/454760/
> >
> > Signed-off-by: Philip Chen <philipchen@xxxxxxxxxxxx>
> > Reviewed-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
> > Reviewed-by: Stephen Boyd <swboyd@xxxxxxxxxxxx>
> > ---
> > In v3, I added pm_suspend_ignore_children() in ps8640_probe().
> > Also, I moved the change of "put_sync_suspend" from patch 2/2 to here.
> > But I forgot to mention both changes. So edit v3 change log retroactively.
> >
> > In v4, I moved the change of "ps8640_ensure_hpd" return data type
> > from patch 2/2 to here. But I forgot to mention it. So edit v4 change log
> > retroactively.
> >
> > Changes in v5:
> > - Move the implementation of _runtime_disable() around to resolve merge
> > conflict when rebasing.
> > - Improve the document for how autosuspend_delay is picked.

The new text looks good to me, thanks!

Since this is from @chromium.org and only reviewed-by @chromium.org
people, I'll plan to give it a 2-week snooze to give others ample time
to comment on these two patches. If 2 weeks pass w/ no comments then
I'll land to drm-misc-next. If someone gives an Ack and/or Reviewed-by
then I'll likely land sooner.

-Doug