Hi, On Wed, Jan 17, 2024 at 9:34 AM Doug Anderson <dianders@xxxxxxxxxxxx> wrote: > > Hi, > > On Tue, Jan 9, 2024 at 8:52 AM Doug Anderson <dianders@xxxxxxxxxxxx> wrote: > > > > Hi, > > > > On Tue, Jan 9, 2024 at 4:05 AM Pin-yen Lin <treapking@xxxxxxxxxxxx> wrote: > > > > > > The ps8640 bridge seems to expect everything to be power cycled at the > > > disable process, but sometimes ps8640_aux_transfer() holds the runtime > > > PM reference and prevents the bridge from suspend. > > > > > > Prevent that by introducing a mutex lock between ps8640_aux_transfer() > > > and .post_disable() to make sure the bridge is really powered off. > > > > > > Fixes: 826cff3f7ebb ("drm/bridge: parade-ps8640: Enable runtime power management") > > > Signed-off-by: Pin-yen Lin <treapking@xxxxxxxxxxxx> > > > --- > > > > > > Changes in v2: > > > - Use mutex instead of the completion and autosuspend hack > > > > > > drivers/gpu/drm/bridge/parade-ps8640.c | 16 ++++++++++++++++ > > > 1 file changed, 16 insertions(+) > > > > This looks OK to me now. > > > > Reviewed-by: Douglas Anderson <dianders@xxxxxxxxxxxx> > > > > I'll let it stew on the mailing list for ~1 week and then land it in > > drm-misc-fixes unless there are additional comments. > > Pushed to drm-misc-fixes: > > 26db46bc9c67 drm/bridge: parade-ps8640: Ensure bridge is suspended in > .post_disable() Crud. I landed this and then almost immediately hit a bug with it. :( I've posted up the fix: https://lore.kernel.org/r/20240117103502.1.Ib726a0184913925efc7e99c4d4fc801982e1bc24@changeid -Doug