diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2010-02-19 22:07:02 +0100 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2010-02-23 00:46:22 +0100 |
commit | 6271901d828b34b27607314026deaf417f9f9b75 (patch) | |
tree | d967c5aff6b08292f03a1bf7fbb4f8ae4c66652c /drivers/gpu/drm/radeon/rv770.c | |
parent | drm/radeon/kms: fix R3XX/R4XX memory controller initialization (diff) | |
download | linux-6271901d828b34b27607314026deaf417f9f9b75.tar.xz linux-6271901d828b34b27607314026deaf417f9f9b75.zip |
drm/radeon/rv740: fix backend setup
This patch fixes occlusion queries and rendering errors
on rv740 boards. Hardcoding the backend map is not an optimal
solution, but a better fix is being worked on.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/rv770.c')
-rw-r--r-- | drivers/gpu/drm/radeon/rv770.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c index 323fa6be5082..f4bb0b129a0f 100644 --- a/drivers/gpu/drm/radeon/rv770.c +++ b/drivers/gpu/drm/radeon/rv770.c @@ -556,9 +556,12 @@ static void rv770_gpu_init(struct radeon_device *rdev) gb_tiling_config |= BANK_SWAPS(1); - backend_map = r700_get_tile_pipe_to_backend_map(rdev->config.rv770.max_tile_pipes, - rdev->config.rv770.max_backends, - (0xff << rdev->config.rv770.max_backends) & 0xff); + if (rdev->family == CHIP_RV740) + backend_map = 0x28; + else + backend_map = r700_get_tile_pipe_to_backend_map(rdev->config.rv770.max_tile_pipes, + rdev->config.rv770.max_backends, + (0xff << rdev->config.rv770.max_backends) & 0xff); gb_tiling_config |= BACKEND_MAP(backend_map); cc_gc_shader_pipe_config = |