drm/radeon/dpm: add reclocking quirk for ASUS K70AF
authorAlex Deucher <alexander.deucher@amd.com>
Mon, 12 Aug 2013 15:24:05 +0000 (11:24 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 30 Aug 2013 20:30:37 +0000 (16:30 -0400)
The LCD has a relatively short vblank time (216us), but
the card is able to reclock memory fine in that time.

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reported-by: normalrawr@gmail.com
drivers/gpu/drm/radeon/rv770_dpm.c

index 094c67a29d0deb7789d6b0d38a1d0a718515b81b..44c1e782a696fbe1e57e9f5bd57392781f554e0f 100644 (file)
@@ -2517,8 +2517,16 @@ u32 rv770_dpm_get_mclk(struct radeon_device *rdev, bool low)
 bool rv770_dpm_vblank_too_short(struct radeon_device *rdev)
 {
        u32 vblank_time = r600_dpm_get_vblank_time(rdev);
+       u32 switch_limit = 300;
 
-       if (vblank_time < 300)
+       /* quirks */
+       /* ASUS K70AF */
+       if ((rdev->pdev->device == 0x9553) &&
+           (rdev->pdev->subsystem_vendor == 0x1043) &&
+           (rdev->pdev->subsystem_device == 0x1c42))
+               switch_limit = 200;
+
+       if (vblank_time < switch_limit)
                return true;
        else
                return false;