• Yogesh Mohan Marimuthu's avatar
    drm/amdgpu: sort probed modes before adding common modes · f1e5e913
    Yogesh Mohan Marimuthu authored
    [Why]
    There are monitors which can have more than one preferred mode
    set. There are chances in these monitors that if common modes are
    added in function amdgpu_dm_connector_add_common_modes(), these
    common modes can be calculated with different preferred mode than
    the one used in function decide_crtc_timing_for_drm_display_mode().
    The preferred mode can be different because after common modes
    are added, the mode list is sorted and this changes the order of
    preferred modes in the list. The first mode in the list with
    preferred flag set is selected as preferred mode. Due to this the
    preferred mode selected varies.
    If same preferred mode is not selected in common mode calculation
    and crtc timing, then during mode set instead of setting preferred
    timing, common mode timing will be applied which can cause "out of
    range" message in the monitor with monitor blanking out.
    
    [How]
    Sort the modes before adding common modes. The same sorting function
    is called during common mode addition and deciding crtc timing.
    Signed-off-by: default avatarYogesh Mohan Marimuthu <yogesh.mohanmarimuthu@amd.com>
    Reviewed-by: default avatarNicholas Kazlauskas <nicholas.kazlauskas@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    f1e5e913
amdgpu_dm.c 193 KB