drm/amdgpu: fix vblank_time when displays are off
authorAlex Deucher <alexander.deucher@amd.com>
Thu, 29 Jun 2017 20:08:49 +0000 (16:08 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 30 Jun 2017 13:53:50 +0000 (09:53 -0400)
If the displays are off, set the vblank time to max to make
sure mclk switching is enabled.  Avoid mclk getting set
to high when no displays are attached.

bug: https://bugs.freedesktop.org/show_bug.cgi?id=101528
fixes: 09be4a5219 (drm/amd/powerplay/smu7: add vblank check for mclk switching (v2))
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c

index c6dba1eaefbd463a2330386ae41773a659139051..8b8eda7d1703dd2e2955a34e2df12c43f2052dfd 100644 (file)
@@ -838,6 +838,9 @@ static int amdgpu_cgs_get_active_displays_info(struct cgs_device *cgs_device,
                return -EINVAL;
 
        mode_info = info->mode_info;
+       if (mode_info)
+               /* if the displays are off, vblank time is max */
+               mode_info->vblank_time_us = 0xffffffff;
 
        if (adev->mode_info.num_crtc && adev->mode_info.mode_config_initialized) {
                list_for_each_entry(crtc,