2011/8/19 Michel D?nzer <michel at daenzer.net>: > From: Michel D?nzer <michel.daenzer at amd.com> > > Signed-off-by: Michel D?nzer <michel.daenzer at amd.com>
Should probably also take into account the additional CP rings we allocate on cayman. Reviewed-by: Alex Deucher <alexander.deucher at amd.com> > --- > ?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) { > -- > 1.7.5.4 > > > _______________________________________________ > dri-devel mailing list > dri-devel at lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/dri-devel >