aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/r420.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/radeon/r420.c')
-rw-r--r--drivers/gpu/drm/radeon/r420.c36
1 files changed, 8 insertions, 28 deletions
diff --git a/drivers/gpu/drm/radeon/r420.c b/drivers/gpu/drm/radeon/r420.c
index 12ebbdb83d1c..c7593b8f58ee 100644
--- a/drivers/gpu/drm/radeon/r420.c
+++ b/drivers/gpu/drm/radeon/r420.c
@@ -40,28 +40,6 @@ static void r420_set_reg_safe(struct radeon_device *rdev)
40 rdev->config.r300.reg_safe_bm_size = ARRAY_SIZE(r420_reg_safe_bm); 40 rdev->config.r300.reg_safe_bm_size = ARRAY_SIZE(r420_reg_safe_bm);
41} 41}
42 42
43int r420_mc_init(struct radeon_device *rdev)
44{
45 int r;
46
47 /* Setup GPU memory space */
48 rdev->mc.vram_location = 0xFFFFFFFFUL;
49 rdev->mc.gtt_location = 0xFFFFFFFFUL;
50 if (rdev->flags & RADEON_IS_AGP) {
51 r = radeon_agp_init(rdev);
52 if (r) {
53 radeon_agp_disable(rdev);
54 } else {
55 rdev->mc.gtt_location = rdev->mc.agp_base;
56 }
57 }
58 r = radeon_mc_setup(rdev);
59 if (r) {
60 return r;
61 }
62 return 0;
63}
64
65void r420_pipes_init(struct radeon_device *rdev) 43void r420_pipes_init(struct radeon_device *rdev)
66{ 44{
67 unsigned tmp; 45 unsigned tmp;
@@ -349,13 +327,15 @@ int r420_init(struct radeon_device *rdev)
349 radeon_get_clock_info(rdev->ddev); 327 radeon_get_clock_info(rdev->ddev);
350 /* Initialize power management */ 328 /* Initialize power management */
351 radeon_pm_init(rdev); 329 radeon_pm_init(rdev);
352 /* Get vram informations */ 330 /* initialize AGP */
353 r300_vram_info(rdev); 331 if (rdev->flags & RADEON_IS_AGP) {
354 /* Initialize memory controller (also test AGP) */ 332 r = radeon_agp_init(rdev);
355 r = r420_mc_init(rdev); 333 if (r) {
356 if (r) { 334 radeon_agp_disable(rdev);
357 return r; 335 }
358 } 336 }
337 /* initialize memory controller */
338 r300_mc_init(rdev);
359 r420_debugfs(rdev); 339 r420_debugfs(rdev);
360 /* Fence driver */ 340 /* Fence driver */
361 r = radeon_fence_driver_init(rdev); 341 r = radeon_fence_driver_init(rdev);