drm: omapdrm: Fix race condition between GO and vblank IRQ
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Tue, 13 Jan 2015 07:14:53 +0000 (09:14 +0200)
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Fri, 20 Mar 2015 12:30:18 +0000 (14:30 +0200)
commit5dbe44336811a7e8ef4c958c6ac054772ee47637
tree078bba27e553bece4fac23010bf4b3c6df5c51f4
parent82e58855bc4f8442145cb2037e164a4b1f5cf854
drm: omapdrm: Fix race condition between GO and vblank IRQ

The vblank interrupt is used by the driver as a completion signal when
applying new settings.

A race condition exist between enabling the vblank interrupt and
applying new settings to the hardware by setting the GO bit. If a vblank
interrupt occurs in-between, the driver will incorrectly consider the
new settings to be applied. Fix this by enabling the interrupt after
setting the GO bit.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
drivers/gpu/drm/omapdrm/omap_crtc.c