Hi Philippe, Reviewed-by: Vincent Abriou <vincent.abriou@xxxxxx> BR Vincent On 04/23/2018 04:10 PM, Philippe Cornu wrote: > The backlight 1st update was in the otm8009a_prepare() function > for a bad reason: backlight was not working in video mode and the > otm8009a_prepare() is in command mode for the init sequence. As the > backlight is now fixed (no lpm), it is good to put it back in the > otm8009a_enable() function, avoiding also image glitches visible > on some "slow" devices. > > Signed-off-by: Philippe Cornu <philippe.cornu@xxxxxx> > --- > drivers/gpu/drm/panel/panel-orisetech-otm8009a.c | 17 ++++++++++------- > 1 file changed, 10 insertions(+), 7 deletions(-) > > diff --git a/drivers/gpu/drm/panel/panel-orisetech-otm8009a.c b/drivers/gpu/drm/panel/panel-orisetech-otm8009a.c > index 0fd2e0144d2b..de4a16d5275c 100644 > --- a/drivers/gpu/drm/panel/panel-orisetech-otm8009a.c > +++ b/drivers/gpu/drm/panel/panel-orisetech-otm8009a.c > @@ -330,13 +330,6 @@ static int otm8009a_prepare(struct drm_panel *panel) > > ctx->prepared = true; > > - /* > - * Power on the backlight. Note: end-user still controls brightness > - * Note: ctx->prepared must be true before updating the backlight. > - */ > - ctx->bl_dev->props.power = FB_BLANK_UNBLANK; > - backlight_update_status(ctx->bl_dev); > - > return 0; > } > > @@ -344,6 +337,16 @@ static int otm8009a_enable(struct drm_panel *panel) > { > struct otm8009a *ctx = panel_to_otm8009a(panel); > > + if (ctx->enabled) > + return 0; > + > + /* > + * Power on the backlight. Note: end-user still controls brightness > + * Note: ctx->prepared must be true before updating the backlight. > + */ > + ctx->bl_dev->props.power = FB_BLANK_UNBLANK; > + backlight_update_status(ctx->bl_dev); > + > ctx->enabled = true; > > return 0; > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel