This series does some mdp5_plane related clean ups (use plane helpers for clipping etc), adds MDP5 bits needed for cursor plane blocks, and then add cursor planes. On older MDP5 versions, we had cursor HW in Layer Mixer blocks, and that's implemented in mdp5_crtc.c. With newer hardware, the cursor blocks look exactly like MDP5 pipes (SSPPs). The "faster than vblank cursor position update stuff" has been copied from vc4 and the patches posted recently by Maarten for Intel: https://patchwork.kernel.org/patch/9466417/ I've tried this with some X11 UI and modetest -C, and it seems to work okay. Are there any tests that mix up atomic commits and legacy cursor updates a lot to identify issues? Archit Taneja (9): drm/msm/mdp5: cfg: Add pipe_cursor block drm/msm/mdp5: Update generated headers drm/msm/mdp5: Prepare CRTC/LM for empty stages drm/msm/mdp5: Use plane helpers to configure src/dst rectangles drm/msm/mdp5: Configure COLOR3_OUT propagation drm/msm/mdp5: Misc cursor plane bits drm/msm/mdp5: Refactor mdp5_plane_atomic_check HACK: drm/msm/mdp5: Add support for legacy cursor updates drm/msm/mdp5: Add cursor planes drivers/gpu/drm/msm/mdp/mdp5/mdp5.xml.h | 30 +++-- drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c | 10 ++ drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.h | 1 + drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c | 73 +++++++++++- drivers/gpu/drm/msm/mdp/mdp5/mdp5_ctl.c | 14 ++- drivers/gpu/drm/msm/mdp/mdp5/mdp5_ctl.h | 4 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c | 38 +++++-- drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.h | 8 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_pipe.c | 8 ++ drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c | 181 ++++++++++++++++++++++++++---- drivers/gpu/drm/msm/mdp/mdp_kms.h | 1 + drivers/gpu/drm/msm/msm_atomic.c | 26 +++-- 12 files changed, 334 insertions(+), 60 deletions(-) -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, hosted by The Linux Foundation -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html