2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2025-01-08 13:44:01 +08:00
linux-next/drivers/gpu/drm/imx
Lucas Stach a0ea4ffff2 drm/imx: only send commit done event when all state has been applied
Currently there is a small race window where we could manage to arm the
vblank event from atomic flush, but programming the hardware was too close
to the frame end, so the hardware will only apply the current state on the
next vblank. In this case we will send out the commit done event too early
causing userspace to reuse framebuffes that are still in use.

Instead of using the event arming mechnism, just remember the pending event
and send it from the vblank IRQ handler, once we are sure that all state
has been applied successfully.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
[p.zabel@pengutronix.de: inverted logic: done -> pending, added back
 spinlock in atomic_flush, commit message typo fix]
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2019-02-22 12:17:58 +01:00
..
dw_hdmi-imx.c drm/imx: Switch to SPDX identifier 2018-11-05 14:40:06 +01:00
imx-drm-core.c drm/imx: ipuv3-plane: add zpos property 2019-02-22 12:17:54 +01:00
imx-drm.h drm/imx: Remove last traces of struct imx_drm_crtc 2018-07-16 16:56:35 +02:00
imx-ldb.c drm/imx: imx-ldb: add missing of_node_puts 2019-01-17 14:59:02 +01:00
imx-tve.c drm/imx: imx-tve: constify clk_ops structure 2018-11-05 14:40:06 +01:00
ipuv3-crtc.c drm/imx: only send commit done event when all state has been applied 2019-02-22 12:17:58 +01:00
ipuv3-plane.c drm/imx: ipuv3-plane: add zpos property 2019-02-22 12:17:54 +01:00
ipuv3-plane.h drm/imx: ipuv3-plane: add function to query atomic update status 2019-02-22 11:58:45 +01:00
Kconfig drm/imx: allow building under COMPILE_TEST 2019-02-22 12:17:58 +01:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
parallel-display.c drm/imx: Switch to SPDX identifier 2018-11-05 14:40:06 +01:00