r600g: compute memory pool size is given in dw
authorNiels Ole Salscheider <niels_ole@salscheider-online.de>
Mon, 3 Mar 2014 19:28:55 +0000 (20:28 +0100)
committerTom Stellard <thomas.stellard@amd.com>
Wed, 12 Mar 2014 02:00:08 +0000 (19:00 -0700)
Multiply the dw value by 4 in order to map the complete buffer.

Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Niels Ole Salscheider <niels_ole@salscheider-online.de>
src/gallium/drivers/r600/compute_memory_pool.c

index 90d5358fd1197c7d48800340c7e1fa806e0e3839..2f0d4c86c99af704783a1eb5d9064a8ddb4d1a10 100644 (file)
@@ -449,7 +449,7 @@ void compute_memory_transfer(
 
        if (device_to_host) {
                map = pipe->transfer_map(pipe, gart, 0, PIPE_TRANSFER_READ,
-                       &(struct pipe_box) { .width = aligned_size,
+                       &(struct pipe_box) { .width = aligned_size * 4,
                        .height = 1, .depth = 1 }, &xfer);
                 assert(xfer);
                assert(map);
@@ -457,7 +457,7 @@ void compute_memory_transfer(
                pipe->transfer_unmap(pipe, xfer);
        } else {
                map = pipe->transfer_map(pipe, gart, 0, PIPE_TRANSFER_WRITE,
-                       &(struct pipe_box) { .width = aligned_size,
+                       &(struct pipe_box) { .width = aligned_size * 4,
                        .height = 1, .depth = 1 }, &xfer);
                assert(xfer);
                assert(map);