• Archit Taneja's avatar
    drm/msm/mdp5: Use the new private_obj state · 7907a0d7
    Archit Taneja authored
    This replaces the usage of the subclassed atomic state (mdp5_state)
    with a private_obj state embedded within drm_atomic_state. The latter
    method is the preferred approach, since it's simpler to implement
    and less prone to errors.
    
    The new API replaces the older and equivalent mdp5_state usage in the
    following pattern:
    - References to "mdp5_kms->state" (i.e, the old/existing state) is
      replaced with mdp5_get_existing_global_state(). In the atomic_check
      path, this should be called with the glob_state_lock drm_modeset_lock
      alredy taken.
    - References to "mdp5_get_state()" are replaced with
      mdp5_get_global_state(). This acquires glob_state_lock and uses
      drm_atomic_get_private_obj_state() to create a new duplicated state.
    
    Changes in v3:
    - Acquire glob_state_lock in mdp5_smp.c
    - Added to the msm atomic helper patch set
    Changes in v4:
    - None
    Signed-off-by: default avatarArchit Taneja <architt@codeaurora.org>
    Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
    Signed-off-by: default avatarSean Paul <seanpaul@chromium.org>
    7907a0d7
mdp5_kms.c 27.6 KB