aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/rv770.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2010-04-19 23:16:50 -0400
committerDave Airlie <airlied@redhat.com>2010-04-19 23:16:50 -0400
commit153549b8b63d71a9c5d8cbde887097b995c32bd6 (patch)
tree306ece7479bb98172272013dd02b243e6677a3f4 /drivers/gpu/drm/radeon/rv770.c
parent7fff400be6fbf64f10abca9939718aaf1d61c255 (diff)
parenta7433742d62c6e0e1173bd144a4aef7724b48d60 (diff)
Merge branch 'drm-radeon-evergreen-accel' into drm-core-next
* drm-radeon-evergreen-accel: drm/radeon: fix cypress firmware typo. drm/radeon/kms/evergreen: add hpd support drm/radeon/kms/evergreen: implement irq support drm/radeon/kms/evergreen: setup and enable the CP drm/radeon/kms/evergreen: implement gfx init drm/radeon/kms/evergreen: add soft reset function drm/radeon/kms/evergreen: add gart support drm/radeon/kms: add support for evergreen power tables drm/radeon/kms: update atombios.h power tables for evergreen
Diffstat (limited to 'drivers/gpu/drm/radeon/rv770.c')
-rw-r--r--drivers/gpu/drm/radeon/rv770.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c
index 72bc57a92388..c14f3be25b4b 100644
--- a/drivers/gpu/drm/radeon/rv770.c
+++ b/drivers/gpu/drm/radeon/rv770.c
@@ -237,7 +237,6 @@ void r700_cp_stop(struct radeon_device *rdev)
237 WREG32(CP_ME_CNTL, (CP_ME_HALT | CP_PFP_HALT)); 237 WREG32(CP_ME_CNTL, (CP_ME_HALT | CP_PFP_HALT));
238} 238}
239 239
240
241static int rv770_cp_load_microcode(struct radeon_device *rdev) 240static int rv770_cp_load_microcode(struct radeon_device *rdev)
242{ 241{
243 const __be32 *fw_data; 242 const __be32 *fw_data;
@@ -272,6 +271,11 @@ static int rv770_cp_load_microcode(struct radeon_device *rdev)
272 return 0; 271 return 0;
273} 272}
274 273
274void r700_cp_fini(struct radeon_device *rdev)
275{
276 r700_cp_stop(rdev);
277 radeon_ring_fini(rdev);
278}
275 279
276/* 280/*
277 * Core functions 281 * Core functions
@@ -1126,7 +1130,7 @@ int rv770_init(struct radeon_device *rdev)
1126 r = rv770_startup(rdev); 1130 r = rv770_startup(rdev);
1127 if (r) { 1131 if (r) {
1128 dev_err(rdev->dev, "disabling GPU acceleration\n"); 1132 dev_err(rdev->dev, "disabling GPU acceleration\n");
1129 r600_cp_fini(rdev); 1133 r700_cp_fini(rdev);
1130 r600_wb_fini(rdev); 1134 r600_wb_fini(rdev);
1131 r600_irq_fini(rdev); 1135 r600_irq_fini(rdev);
1132 radeon_irq_kms_fini(rdev); 1136 radeon_irq_kms_fini(rdev);
@@ -1160,7 +1164,7 @@ void rv770_fini(struct radeon_device *rdev)
1160{ 1164{
1161 radeon_pm_fini(rdev); 1165 radeon_pm_fini(rdev);
1162 r600_blit_fini(rdev); 1166 r600_blit_fini(rdev);
1163 r600_cp_fini(rdev); 1167 r700_cp_fini(rdev);
1164 r600_wb_fini(rdev); 1168 r600_wb_fini(rdev);
1165 r600_irq_fini(rdev); 1169 r600_irq_fini(rdev);
1166 radeon_irq_kms_fini(rdev); 1170 radeon_irq_kms_fini(rdev);