diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2011-08-19 15:24:16 +0000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-08-22 09:54:12 +0100 |
commit | 24cae9e7c9537fd6a16bc2f5ec398ee4bef5d007 (patch) | |
tree | 38c7a98cd2e30c34997470797f1584d70fd6e45d | |
parent | ffb57c4b8612c31204b06713770f6df4b8a94e4f (diff) | |
download | op-kernel-dev-24cae9e7c9537fd6a16bc2f5ec398ee4bef5d007.zip op-kernel-dev-24cae9e7c9537fd6a16bc2f5ec398ee4bef5d007.tar.gz |
drm/radeon: Take IH ring into account for test size calculation.
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Alex Deucher <alexdeucher@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_test.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_test.c b/drivers/gpu/drm/radeon/radeon_test.c index dee4a0c..1ebd0fe 100644 --- a/drivers/gpu/drm/radeon/radeon_test.c +++ b/drivers/gpu/drm/radeon/radeon_test.c @@ -40,10 +40,14 @@ void radeon_test_moves(struct radeon_device *rdev) size = 1024 * 1024; /* Number of tests = - * (Total GTT - IB pool - writeback page - ring buffer) / test size + * (Total GTT - IB pool - writeback page - ring buffers) / test size */ - n = ((u32)(rdev->mc.gtt_size - RADEON_IB_POOL_SIZE*64*1024 - RADEON_GPU_PAGE_SIZE - - rdev->cp.ring_size)) / size; + n = rdev->mc.gtt_size - RADEON_IB_POOL_SIZE*64*1024 - rdev->cp.ring_size; + if (rdev->wb.wb_obj) + n -= RADEON_GPU_PAGE_SIZE; + if (rdev->ih.ring_obj) + n -= rdev->ih.ring_size; + n /= size; gtt_obj = kzalloc(n * sizeof(*gtt_obj), GFP_KERNEL); if (!gtt_obj) { |