(Resending because I did not cc dri-devel properly.) Instead of faking VBLANK events by themselves, drivers without VBLANK support can enable drm_crtc_vblank.no_vblank and let DRM do the rest. The patchset makes this official and converts over several drivers. Ast already uses the functionality and just needs a cleanup. Cirrus can be converted easily by setting the field in the check() callback and removing the existing VBLANK code. For most other simple-KMS drivers without enable_vblank() and check(), simple-KMS helpers can enable the faked VBLANK by default. The only exception is Xen, which comes with its own VBLANK logic and should rather to disable no_vblank. v2: * document functionality (Daniel) * cleanup ast (Daniel) * let simple-kms handle no_vblank where possible Thomas Zimmermann (4): drm: Document struct drm_crtc_state.no_vblank for faking VBLANK events drm/ast: Set struct drm_crtc_state.no_vblank in atomic_check() drm/cirrus: Let DRM core send VBLANK events drm/simple-kms: Let DRM core send VBLANK events by default drivers/gpu/drm/ast/ast_mode.c | 4 ++-- drivers/gpu/drm/bochs/bochs_kms.c | 9 --------- drivers/gpu/drm/cirrus/cirrus.c | 10 ++-------- drivers/gpu/drm/drm_atomic_helper.c | 4 +++- drivers/gpu/drm/drm_mipi_dbi.c | 9 --------- drivers/gpu/drm/drm_simple_kms_helper.c | 19 +++++++++++++++---- drivers/gpu/drm/tiny/gm12u320.c | 9 --------- drivers/gpu/drm/tiny/ili9225.c | 9 --------- drivers/gpu/drm/tiny/repaper.c | 9 --------- drivers/gpu/drm/tiny/st7586.c | 9 --------- drivers/gpu/drm/udl/udl_modeset.c | 11 ----------- drivers/gpu/drm/xen/xen_drm_front_kms.c | 13 +++++++++++++ include/drm/drm_crtc.h | 9 +++++++-- include/drm/drm_simple_kms_helper.h | 7 +++++-- 14 files changed, 47 insertions(+), 84 deletions(-) -- 2.24.1 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel