• Tomi Valkeinen's avatar
    drm/tidss: Use DRM_PLANE_COMMIT_ACTIVE_ONLY · ca89b697
    Tomi Valkeinen authored
    At the moment the driver does not use DRM_PLANE_COMMIT_ACTIVE_ONLY, but
    still checks for crtc->state->active in tidss_crtc_atomic_flush(), and
    skips the flush if the crtc is not active.
    
    The exact reason why DRM_PLANE_COMMIT_ACTIVE_ONLY is not used has been
    lost in history. DRM_PLANE_COMMIT_ACTIVE_ONLY does also affect the plane
    updates, and I think the issue was related to multi-display systems and
    moving planes between the displays. However, it is possible the issue
    was only present on the older DSS hardware, handled by the omapdrm
    driver (on which the tidss driver is loosely based).
    
    Reviewing the code related to DRM_PLANE_COMMIT_ACTIVE_ONLY does not show
    any issues, and testing on J7 EVM with two displays works fine.
    
    Change the driver to use DRM_PLANE_COMMIT_ACTIVE_ONLY.
    Reviewed-by: default avatarAradhya Bhatia <a-bhatia1@ti.com>
    Link: https://lore.kernel.org/r/20231109-tidss-probe-v2-11-ac91b5ea35c0@ideasonboard.comSigned-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ideasonboard.com>
    ca89b697
tidss_kms.c 6.91 KB