diff options
Diffstat (limited to 'drivers/gpu/drm/radeon/r420.c')
-rw-r--r-- | drivers/gpu/drm/radeon/r420.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/r420.c b/drivers/gpu/drm/radeon/r420.c index c7593b8f58ee..c2bda4ad62e7 100644 --- a/drivers/gpu/drm/radeon/r420.c +++ b/drivers/gpu/drm/radeon/r420.c | |||
@@ -26,9 +26,11 @@ | |||
26 | * Jerome Glisse | 26 | * Jerome Glisse |
27 | */ | 27 | */ |
28 | #include <linux/seq_file.h> | 28 | #include <linux/seq_file.h> |
29 | #include <linux/slab.h> | ||
29 | #include "drmP.h" | 30 | #include "drmP.h" |
30 | #include "radeon_reg.h" | 31 | #include "radeon_reg.h" |
31 | #include "radeon.h" | 32 | #include "radeon.h" |
33 | #include "radeon_asic.h" | ||
32 | #include "atom.h" | 34 | #include "atom.h" |
33 | #include "r100d.h" | 35 | #include "r100d.h" |
34 | #include "r420d.h" | 36 | #include "r420d.h" |
@@ -57,6 +59,12 @@ void r420_pipes_init(struct radeon_device *rdev) | |||
57 | /* get max number of pipes */ | 59 | /* get max number of pipes */ |
58 | gb_pipe_select = RREG32(0x402C); | 60 | gb_pipe_select = RREG32(0x402C); |
59 | num_pipes = ((gb_pipe_select >> 12) & 3) + 1; | 61 | num_pipes = ((gb_pipe_select >> 12) & 3) + 1; |
62 | |||
63 | /* SE chips have 1 pipe */ | ||
64 | if ((rdev->pdev->device == 0x5e4c) || | ||
65 | (rdev->pdev->device == 0x5e4f)) | ||
66 | num_pipes = 1; | ||
67 | |||
60 | rdev->num_gb_pipes = num_pipes; | 68 | rdev->num_gb_pipes = num_pipes; |
61 | tmp = 0; | 69 | tmp = 0; |
62 | switch (num_pipes) { | 70 | switch (num_pipes) { |
@@ -266,6 +274,7 @@ int r420_suspend(struct radeon_device *rdev) | |||
266 | 274 | ||
267 | void r420_fini(struct radeon_device *rdev) | 275 | void r420_fini(struct radeon_device *rdev) |
268 | { | 276 | { |
277 | radeon_pm_fini(rdev); | ||
269 | r100_cp_fini(rdev); | 278 | r100_cp_fini(rdev); |
270 | r100_wb_fini(rdev); | 279 | r100_wb_fini(rdev); |
271 | r100_ib_fini(rdev); | 280 | r100_ib_fini(rdev); |