OSDN Git Service

drm/radeon: Do not evict VRAM on APUs with disabled HIBERNATE
authorPaul Menzel <pmenzel+amd-gfx@molgen.mpg.de>
Tue, 31 Jul 2018 16:48:41 +0000 (18:48 +0200)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 27 Aug 2018 16:11:04 +0000 (11:11 -0500)
Improve commit d796d844 (drm/radeon/kms: make hibernate work on IGPs) to
only migrate VRAM objects if the Linux kernel is actually built with
support for hibernation (suspend to disk).

Link: https://bugs.freedesktop.org/show_bug.cgi?id=100941
Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/radeon/radeon_object.c

index ba2fd29..92f6d40 100644 (file)
@@ -421,11 +421,13 @@ int radeon_bo_unpin(struct radeon_bo *bo)
 int radeon_bo_evict_vram(struct radeon_device *rdev)
 {
        /* late 2.6.33 fix IGP hibernate - we need pm ops to do this correct */
-       if (0 && (rdev->flags & RADEON_IS_IGP)) {
+#ifndef CONFIG_HIBERNATION
+       if (rdev->flags & RADEON_IS_IGP) {
                if (rdev->mc.igp_sideport_enabled == false)
                        /* Useless to evict on IGP chips */
                        return 0;
        }
+#endif
        return ttm_bo_evict_mm(&rdev->mman.bdev, TTM_PL_VRAM);
 }