From 982808b81b2db815b77bc4c01c7db512ccc748d8 Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Thu, 10 Sep 2009 02:53:50 -0400 Subject: [PATCH] drm/radeon/kms/r600: fix blit support select the correct max number of bytes per blit based on whether the size is multiple of 4 bytes. This determines whether we can use 8 or 32 bit pixels for the blit. Signed-off-by: Alex Deucher --- drivers/gpu/drm/radeon/r600_blit_kms.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/drivers/gpu/drm/radeon/r600_blit_kms.c b/drivers/gpu/drm/radeon/r600_blit_kms.c index 5755647..fa6261c 100644 --- a/drivers/gpu/drm/radeon/r600_blit_kms.c +++ b/drivers/gpu/drm/radeon/r600_blit_kms.c @@ -532,7 +532,13 @@ int r600_blit_prepare_copy(struct radeon_device *rdev, int size_bytes) { int r; int ring_size; - const int max_size = 8192*8192; + int max_size; + + /* 8 bpp vs 32 bpp for xfer unit */ + if (size_bytes & 3) + max_size = 8192*8192; + else + max_size = 8192*8192*4; r = r600_vb_ib_get(rdev); WARN_ON(r); -- 1.5.6.3