On 13/03/17 11:29, Jyri Sarha wrote: > Touching HW while clocks are off is a serious error and for instance > breaks suspend functionality. After this patch tilcdc_crtc_update_fb() > always updates the primary plane's framebuffer pointer, increases fb's > reference count and stores vblank event. tilcdc_crtc_update_fb() only > writes the fb's DMA address to HW if the crtc is enabled, as > tilcdc_crtc_enable() takes care of writing the address on enable. > > This patch also refactors the tilcdc_crtc_update_fb() a bit. Number of > subsequent small changes had made it almost unreadable. There should > be no other functional changes but checking the CRTC's enable > state. However, the locking goes a bit differently and some of the > redundant checks have been removed in this new version. > > The enable_lock should be enough to protect the access to > tilcdc_crtc->enabled. The irq_lock protects the access to last_vblank > and next_fb. The check for vrefresh and last_vblank being valid is > redundant, as the vrefresh should be always valid if the CRTC is > enabled and now last_vblank should be too, because it is initialized > to current time when CRTC raster is enabled. If for some reason the > values are not correctly initialized the division by zero warning is > quite appropriate. > > Signed-off-by: Jyri Sarha <jsarha@xxxxxx> > --- > Since first version: > - Restored the accidentally removed comment begin mark to beginning of file > - Fixed two typos and one broken sentence, pointed out by Tomi Valkeinen > > drivers/gpu/drm/tilcdc/tilcdc_crtc.c | 35 +++++++++++++++++++++++------------ > 1 file changed, 23 insertions(+), 12 deletions(-) Reviewed-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx> Tomi
Attachment:
signature.asc
Description: OpenPGP digital signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel