<div dir="ltr">Hi Maxime,<br><br>On Thursday, 22 September 2016, Maxime Ripard <<a href="mailto:maxime.ripard@free-electrons.com" target="_blank">maxime.ripard@free-electrons.<wbr>com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Wed, Sep 21, 2016 at 11:03:04PM +1000, Jonathan Liu wrote:<br>
> The panel should be enabled after the controller so that the panel<br>
> prepare/enable delays are properly taken into account. Similarly, the<br>
> panel should be disabled before the controller so that the panel<br>
> unprepare/disable delays are properly taken into account.<br>
><br>
> This is useful for avoiding visual glitches.<br>
<br>
This is not really taking any delays into account, especially since<br>
drm_panel_enable and prepare are suppose to block until their<br>
operation is complete.</blockquote><div> </div><div>drm_panel_prepare turns on power to the LCD using enable-gpios property of the panel and then blocks for prepare delay. The prepare delay for panel can be set to how long it takes between the time the panel is powered to when it is ready to receive images. If backlight property is specified the backlight will be off while the panel is powered on.</div><div><br></div><div>drm_panel_enable blocks for enable delay and then turns on the backlight. The enable delay can be set to how long it takes for panel to start making the image visible after receiving the first valid frame. For example if the panel starts off as white and the TFT takes some time to initialize to black before it shows the image being received.</div><div><br></div><div>Refer to drivers/gpu/drm/panel-panel.simple.c for details.</div><div><br></div><div>Regards,</div><div>Jonathan </div>
</div>