diff options
| -rw-r--r-- | drivers/gpu/drm/radeon/rv770.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c index a6399662a843..576ae2f6c717 100644 --- a/drivers/gpu/drm/radeon/rv770.c +++ b/drivers/gpu/drm/radeon/rv770.c | |||
| @@ -860,6 +860,14 @@ static int rv770_startup(struct radeon_device *rdev) | |||
| 860 | if (r) | 860 | if (r) |
| 861 | return r; | 861 | return r; |
| 862 | rv770_gpu_init(rdev); | 862 | rv770_gpu_init(rdev); |
| 863 | |||
| 864 | r = radeon_object_pin(rdev->r600_blit.shader_obj, RADEON_GEM_DOMAIN_VRAM, | ||
| 865 | &rdev->r600_blit.shader_gpu_addr); | ||
| 866 | if (r) { | ||
| 867 | DRM_ERROR("failed to pin blit object %d\n", r); | ||
| 868 | return r; | ||
| 869 | } | ||
| 870 | |||
| 863 | r = radeon_ring_init(rdev, rdev->cp.ring_size); | 871 | r = radeon_ring_init(rdev, rdev->cp.ring_size); |
| 864 | if (r) | 872 | if (r) |
| 865 | return r; | 873 | return r; |
| @@ -993,6 +1001,12 @@ int rv770_init(struct radeon_device *rdev) | |||
| 993 | return r; | 1001 | return r; |
| 994 | 1002 | ||
| 995 | rdev->accel_working = true; | 1003 | rdev->accel_working = true; |
| 1004 | r = r600_blit_init(rdev); | ||
| 1005 | if (r) { | ||
| 1006 | DRM_ERROR("radeon: failled blitter (%d).\n", r); | ||
| 1007 | rdev->accel_working = false; | ||
| 1008 | } | ||
| 1009 | |||
| 996 | r = rv770_startup(rdev); | 1010 | r = rv770_startup(rdev); |
| 997 | if (r) { | 1011 | if (r) { |
| 998 | if (rdev->flags & RADEON_IS_AGP) { | 1012 | if (rdev->flags & RADEON_IS_AGP) { |
| @@ -1004,11 +1018,6 @@ int rv770_init(struct radeon_device *rdev) | |||
| 1004 | rdev->accel_working = false; | 1018 | rdev->accel_working = false; |
| 1005 | } | 1019 | } |
| 1006 | if (rdev->accel_working) { | 1020 | if (rdev->accel_working) { |
| 1007 | r = r600_blit_init(rdev); | ||
| 1008 | if (r) { | ||
| 1009 | DRM_ERROR("radeon: failled blitter (%d).\n", r); | ||
| 1010 | rdev->accel_working = false; | ||
| 1011 | } | ||
| 1012 | r = radeon_ib_pool_init(rdev); | 1021 | r = radeon_ib_pool_init(rdev); |
| 1013 | if (r) { | 1022 | if (r) { |
| 1014 | DRM_ERROR("radeon: failled initializing IB pool (%d).\n", r); | 1023 | DRM_ERROR("radeon: failled initializing IB pool (%d).\n", r); |
