drm/radeon: fix init ordering for r600+
[linux-2.6-block.git] / drivers / gpu / drm / radeon / cik.c
index 79124f81c00ebdf0b3e6b5fdcea770bf14794cce..148c539684bb8b926a73b83e7d3e56b3560ee332 100644 (file)
@@ -6951,6 +6951,11 @@ static int cik_startup(struct radeon_device *rdev)
        /* enable aspm */
        cik_program_aspm(rdev);
 
+       /* scratch needs to be initialized before MC */
+       r = r600_vram_scratch_init(rdev);
+       if (r)
+               return r;
+
        cik_mc_program(rdev);
 
        if (rdev->flags & RADEON_IS_IGP) {
@@ -6980,10 +6985,6 @@ static int cik_startup(struct radeon_device *rdev)
                }
        }
 
-       r = r600_vram_scratch_init(rdev);
-       if (r)
-               return r;
-
        r = cik_pcie_gart_enable(rdev);
        if (r)
                return r;