mirror of https://gitee.com/openkylin/linux.git
5f741b39dd
Rework the crtc event/flip_wait system as follows: - If we enable a crtc (full modeset), we set omap_crtc->pending and register vblank irq. - If we need to set GO bit (page flip), we do the same but also set the GO bit. - On vblank we unregister the irq, clear the 'pending' flag, send vblank event to userspace if crtc->state->event != NULL, and wake up 'pending_wait' wq. - In omap_atomic_complete() we wait for the 'pending' flag to get reset for all enabled crtcs using 'pending_wait' wq. The above ensures that we send the events to userspace in vblank, and that after the wait in omap_atomic_complete() everything for the affected crtcs has been completed. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
TODO | ||
omap_connector.c | ||
omap_crtc.c | ||
omap_debugfs.c | ||
omap_dmm_priv.h | ||
omap_dmm_tiler.c | ||
omap_dmm_tiler.h | ||
omap_drv.c | ||
omap_drv.h | ||
omap_encoder.c | ||
omap_fb.c | ||
omap_fbdev.c | ||
omap_gem.c | ||
omap_gem_dmabuf.c | ||
omap_irq.c | ||
omap_plane.c | ||
tcm-sita.c | ||
tcm-sita.h | ||
tcm.h |