diff options
Diffstat (limited to 'drivers/gpu/drm/radeon/rv770.c')
| -rw-r--r-- | drivers/gpu/drm/radeon/rv770.c | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c index 04ddc365a908..b4f51c569c36 100644 --- a/drivers/gpu/drm/radeon/rv770.c +++ b/drivers/gpu/drm/radeon/rv770.c | |||
| @@ -616,6 +616,9 @@ static void rv770_gpu_init(struct radeon_device *rdev) | |||
| 616 | ACK_FLUSH_CTL(3) | | 616 | ACK_FLUSH_CTL(3) | |
| 617 | SYNC_FLUSH_CTL)); | 617 | SYNC_FLUSH_CTL)); |
| 618 | 618 | ||
| 619 | if (rdev->family != CHIP_RV770) | ||
| 620 | WREG32(SMX_SAR_CTL0, 0x00003f3f); | ||
| 621 | |||
| 619 | db_debug3 = RREG32(DB_DEBUG3); | 622 | db_debug3 = RREG32(DB_DEBUG3); |
| 620 | db_debug3 &= ~DB_CLK_OFF_DELAY(0x1f); | 623 | db_debug3 &= ~DB_CLK_OFF_DELAY(0x1f); |
| 621 | switch (rdev->family) { | 624 | switch (rdev->family) { |
| @@ -792,7 +795,7 @@ static void rv770_gpu_init(struct radeon_device *rdev) | |||
| 792 | 795 | ||
| 793 | WREG32(PA_CL_ENHANCE, (CLIP_VTX_REORDER_ENA | | 796 | WREG32(PA_CL_ENHANCE, (CLIP_VTX_REORDER_ENA | |
| 794 | NUM_CLIP_SEQ(3))); | 797 | NUM_CLIP_SEQ(3))); |
| 795 | 798 | WREG32(VC_ENHANCE, 0); | |
| 796 | } | 799 | } |
| 797 | 800 | ||
| 798 | void r700_vram_gtt_location(struct radeon_device *rdev, struct radeon_mc *mc) | 801 | void r700_vram_gtt_location(struct radeon_device *rdev, struct radeon_mc *mc) |
| @@ -956,6 +959,12 @@ static int rv770_startup(struct radeon_device *rdev) | |||
| 956 | if (r) | 959 | if (r) |
| 957 | return r; | 960 | return r; |
| 958 | 961 | ||
| 962 | r = r600_audio_init(rdev); | ||
| 963 | if (r) { | ||
| 964 | DRM_ERROR("radeon: audio init failed\n"); | ||
| 965 | return r; | ||
| 966 | } | ||
| 967 | |||
| 959 | return 0; | 968 | return 0; |
| 960 | } | 969 | } |
| 961 | 970 | ||
| @@ -978,12 +987,6 @@ int rv770_resume(struct radeon_device *rdev) | |||
| 978 | return r; | 987 | return r; |
| 979 | } | 988 | } |
| 980 | 989 | ||
| 981 | r = r600_audio_init(rdev); | ||
| 982 | if (r) { | ||
| 983 | dev_err(rdev->dev, "radeon: audio init failed\n"); | ||
| 984 | return r; | ||
| 985 | } | ||
| 986 | |||
| 987 | return r; | 990 | return r; |
| 988 | 991 | ||
| 989 | } | 992 | } |
| @@ -1092,12 +1095,6 @@ int rv770_init(struct radeon_device *rdev) | |||
| 1092 | rdev->accel_working = false; | 1095 | rdev->accel_working = false; |
| 1093 | } | 1096 | } |
| 1094 | 1097 | ||
| 1095 | r = r600_audio_init(rdev); | ||
| 1096 | if (r) { | ||
| 1097 | dev_err(rdev->dev, "radeon: audio init failed\n"); | ||
| 1098 | return r; | ||
| 1099 | } | ||
| 1100 | |||
| 1101 | return 0; | 1098 | return 0; |
| 1102 | } | 1099 | } |
| 1103 | 1100 | ||
