Commit 9052aa24 authored by Dave Airlie's avatar Dave Airlie

drm/radeon/kms: rv770 blit init called too late.

re-align with r600 code, to init blit earlier.
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent fc30b8ef
...@@ -860,6 +860,14 @@ static int rv770_startup(struct radeon_device *rdev) ...@@ -860,6 +860,14 @@ static int rv770_startup(struct radeon_device *rdev)
if (r) if (r)
return r; return r;
rv770_gpu_init(rdev); rv770_gpu_init(rdev);
r = radeon_object_pin(rdev->r600_blit.shader_obj, RADEON_GEM_DOMAIN_VRAM,
&rdev->r600_blit.shader_gpu_addr);
if (r) {
DRM_ERROR("failed to pin blit object %d\n", r);
return r;
}
r = radeon_ring_init(rdev, rdev->cp.ring_size); r = radeon_ring_init(rdev, rdev->cp.ring_size);
if (r) if (r)
return r; return r;
...@@ -993,6 +1001,12 @@ int rv770_init(struct radeon_device *rdev) ...@@ -993,6 +1001,12 @@ int rv770_init(struct radeon_device *rdev)
return r; return r;
rdev->accel_working = true; rdev->accel_working = true;
r = r600_blit_init(rdev);
if (r) {
DRM_ERROR("radeon: failled blitter (%d).\n", r);
rdev->accel_working = false;
}
r = rv770_startup(rdev); r = rv770_startup(rdev);
if (r) { if (r) {
if (rdev->flags & RADEON_IS_AGP) { if (rdev->flags & RADEON_IS_AGP) {
...@@ -1004,11 +1018,6 @@ int rv770_init(struct radeon_device *rdev) ...@@ -1004,11 +1018,6 @@ int rv770_init(struct radeon_device *rdev)
rdev->accel_working = false; rdev->accel_working = false;
} }
if (rdev->accel_working) { if (rdev->accel_working) {
r = r600_blit_init(rdev);
if (r) {
DRM_ERROR("radeon: failled blitter (%d).\n", r);
rdev->accel_working = false;
}
r = radeon_ib_pool_init(rdev); r = radeon_ib_pool_init(rdev);
if (r) { if (r) {
DRM_ERROR("radeon: failled initializing IB pool (%d).\n", r); DRM_ERROR("radeon: failled initializing IB pool (%d).\n", r);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment