From: Sean Paul <seanpaul@xxxxxxxxxxxx> Hey all, So here's the async cursor patchset, it works pretty well on my device (video mode dsi). I do have a couple of concerns that hopefully people might have solutions for. The first patch masks off the flush register to exclude inactive bits. I think it'd be nicer to clear those bits if the plane was being disabled, but it wasn't obvious how I could do this. Any suggestions? The second patch seems a bit more spread out than I would like. I'd rather not propagate the async checks all over, but this seemed like the minimum amount in order to get things working reliably. If you have better suggestions, please speak up. Thanks, Sean Sean Paul (2): drm/msm: dpu: Only check flush register against pending flushes drm/msm: dpu: Make legacy cursor updates asynchronous drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 44 ++++++++++--------- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.h | 3 +- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 21 +++++---- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h | 6 ++- .../drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 2 +- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 5 ++- drivers/gpu/drm/msm/msm_atomic.c | 3 +- 7 files changed, 49 insertions(+), 35 deletions(-) -- Sean Paul, Software Engineer, Google / Chromium OS