4.5-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Rex Zhu <rex....@amd.com>

commit f9e9c08e20d71cabef7d5c2a7eb75e1d953dad16 upstream.

Signed-off-by: Rex Zhu <rex....@amd.com>
Reviewed-by: Junwei Zhang <jerry.zh...@amd.com>
Signed-off-by: Alex Deucher <alexander.deuc...@amd.com>
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>

---
 drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c |   13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
@@ -816,10 +816,13 @@ static int amdgpu_cgs_get_active_display
        struct drm_device *ddev = adev->ddev;
        struct drm_crtc *crtc;
        uint32_t line_time_us, vblank_lines;
+       struct cgs_mode_info *mode_info;
 
        if (info == NULL)
                return -EINVAL;
 
+       mode_info = info->mode_info;
+
        if (adev->mode_info.num_crtc && 
adev->mode_info.mode_config_initialized) {
                list_for_each_entry(crtc,
                                &ddev->mode_config.crtc_list, head) {
@@ -828,7 +831,7 @@ static int amdgpu_cgs_get_active_display
                                info->active_display_mask |= (1 << 
amdgpu_crtc->crtc_id);
                                info->display_count++;
                        }
-                       if (info->mode_info != NULL &&
+                       if (mode_info != NULL &&
                                crtc->enabled && amdgpu_crtc->enabled &&
                                amdgpu_crtc->hw_mode.clock) {
                                line_time_us = 
(amdgpu_crtc->hw_mode.crtc_htotal * 1000) /
@@ -836,10 +839,10 @@ static int amdgpu_cgs_get_active_display
                                vblank_lines = 
amdgpu_crtc->hw_mode.crtc_vblank_end -
                                                        
amdgpu_crtc->hw_mode.crtc_vdisplay +
                                                        (amdgpu_crtc->v_border 
* 2);
-                               info->mode_info->vblank_time_us = vblank_lines 
* line_time_us;
-                               info->mode_info->refresh_rate = 
drm_mode_vrefresh(&amdgpu_crtc->hw_mode);
-                               info->mode_info->ref_clock = 
adev->clock.spll.reference_freq;
-                               info->mode_info++;
+                               mode_info->vblank_time_us = vblank_lines * 
line_time_us;
+                               mode_info->refresh_rate = 
drm_mode_vrefresh(&amdgpu_crtc->hw_mode);
+                               mode_info->ref_clock = 
adev->clock.spll.reference_freq;
+                               mode_info = NULL;
                        }
                }
        }


Reply via email to