diff options
author | chaohong guo <Minskey.Guo@Sun.COM> | 2007-09-29 18:06:47 +0200 |
---|---|---|
committer | Michel Dänzer <michel@tungstengraphics.com> | 2007-09-29 18:08:04 +0200 |
commit | f863d23e01bf0b851c2c7addedfaec77ef951a0c (patch) | |
tree | ac8406420ea80ffe5ccaadc1ff0124f95709a23d | |
parent | 215eab6ccfb6d3a22218f996c8215a7dcaf65d01 (diff) |
radeon: Commit the ring after each partial texture upload blit.
This makes sure each blit starts as early as possible, which may improve
texture upload performance in some cases.
-rw-r--r-- | shared-core/radeon_state.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/shared-core/radeon_state.c b/shared-core/radeon_state.c index ac7f6011..e3aadfb9 100644 --- a/shared-core/radeon_state.c +++ b/shared-core/radeon_state.c @@ -1861,6 +1861,7 @@ static int radeon_cp_dispatch_texture(struct drm_device * dev, OUT_RING((image->width << 16) | height); RADEON_WAIT_UNTIL_2D_IDLE(); ADVANCE_RING(); + COMMIT_RING(); radeon_cp_discard_buffer(dev, buf); @@ -1878,6 +1879,8 @@ static int radeon_cp_dispatch_texture(struct drm_device * dev, RADEON_FLUSH_CACHE(); RADEON_WAIT_UNTIL_2D_IDLE(); ADVANCE_RING(); + COMMIT_RING(); + return 0; } @@ -2401,7 +2404,6 @@ static int radeon_cp_texture(struct drm_device *dev, void *data, struct drm_file ret = radeon_cp_dispatch_texture(dev, file_priv, tex, &image); - COMMIT_RING(); return ret; } |