Re: [PATCH v1 2/2] drm/tegra: Support disabled CONFIG_PM
From: Thierry Reding
Date: Mon Dec 11 2017 - 09:27:40 EST
On Mon, Dec 11, 2017 at 04:53:56PM +0300, Dmitry Osipenko wrote:
> On 11.12.2017 13:13, Thierry Reding wrote:
> > On Mon, Dec 11, 2017 at 02:19:44AM +0300, Dmitry Osipenko wrote:
> >> Add manual HW power management to drivers probe/remove in order to
> >> not fail in a case of runtime power management being disabled in kernel
> >> config.
> >>
> >> Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx>
> >> ---
> >> drivers/gpu/drm/tegra/dc.c | 164 +++++++++++++++++++++++++++----------------
> >> drivers/gpu/drm/tegra/dsi.c | 138 +++++++++++++++++++++---------------
> >> drivers/gpu/drm/tegra/hdmi.c | 90 ++++++++++++++++--------
> >> drivers/gpu/drm/tegra/sor.c | 103 +++++++++++++++++----------
> >> 4 files changed, 310 insertions(+), 185 deletions(-)
> >
> > I think that's the wrong way around. We unconditionally select PM on
> > 64-bit ARM already, and I think we should do the same on 32-bit ARM.
> > There's really no excuse not to enable runtime PM these days.
>
> What is the rational behind enabling PM unconditionally? It is actually a very
> useful debug feature when there is something wrong with the PM. It looks like
> Tegra DRM driver is the only driver on Tegra that doesn't work properly with PM
> being disabled. Please, let's just fix it.
What's useful about disabling PM? The problem with allowing !PM is that
it adds one more combination that needs to be build- and runtime tested.
It also means we need to have extra code in the drivers to enable the
device when runtime PM is disabled. This is all a lot of extra effort
for little to no benefit.
Also, runtime PM is an integral part of mode setting in Tegra DRM, so I
would be suprised if things still work reliably after this patch. RGB,
DSI and HDMI might work properly, but the SOR is unlikely to work after
this because the only way to get it to reliably set a mode is by using
the full runtime suspend/resume cycle.
Thierry
Attachment:
signature.asc
Description: PGP signature