This patch set adds universal planes to ast and converts the driver to atomic modesetting. The first patch is purely for clean-up. Patches 2 to 5 prepare the ast modesetting code for universal planes and atomic modesetting. The size calculation for each mode has to take double buffering into account. Several functions have to be split to make them work with the separate check and update on CRTCs and planes. There are no functional changes. Patches 6 to 8 add atomic modesetting code for planes and CRTC. Planes immediately provide atomic functions. There's no intermediate step with legacy functions for non-atomic drivers. The cursor plane HW only supports ARGB4444, so the cursor plane converts the format internally; just as the legacy implementation did. Finally, patch 9 adds missing helpers and enables atomic modesetting. The CRTC functions now provide page_flip, which enables Weston support on ast hardware. The patchset has been tested by running the fbdev console, X11 (Gnome) and Weston on an AST2100 chipset. v2: * don't set plane call-back functions to NULL explicitly * define plane format arrays in global scope Thomas Zimmermann (9): drm/ast: Remove last traces of struct ast_gem_object drm/ast: Check video-mode requirements against VRAM size drm/ast: Don't clear base address and offset with default values drm/ast: Split ast_set_ext_reg() into color and threshold function drm/ast: Split ast_set_vbios_mode_info() drm/ast: Add primary plane drm/ast: Add CRTC helpers for atomic modesetting drm/ast: Add cursor plane drm/ast: Enable atomic modesetting drivers/gpu/drm/ast/ast_drv.c | 24 +- drivers/gpu/drm/ast/ast_drv.h | 9 +- drivers/gpu/drm/ast/ast_main.c | 54 +-- drivers/gpu/drm/ast/ast_mode.c | 685 ++++++++++++++++++++------------- 4 files changed, 449 insertions(+), 323 deletions(-) -- 2.23.0 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel