diff options
author | Marek Olšák <[email protected]> | 2013-01-25 18:36:19 +0100 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2013-01-26 14:59:04 +0100 |
commit | 8891b2f9c91b2f6c8625184c23a10b8e55875dc0 (patch) | |
tree | dbea73d0ca1b8cdb47a59b84b13aaa3ba36a0bcd | |
parent | 26c872c2a22f25ec95065a71770b19b6a9eb06c7 (diff) |
r600g: add more cases for copying unsupported formats to resource_copy_region
just in case a new format is added to gallium
-rw-r--r-- | src/gallium/drivers/r600/r600_blit.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_blit.c b/src/gallium/drivers/r600/r600_blit.c index ed23052f548..046eab54c42 100644 --- a/src/gallium/drivers/r600/r600_blit.c +++ b/src/gallium/drivers/r600/r600_blit.c @@ -624,10 +624,22 @@ static void r600_resource_copy_region(struct pipe_context *ctx, dst_templ.format = PIPE_FORMAT_R8_UNORM; src_templ.format = PIPE_FORMAT_R8_UNORM; break; + case 2: + dst_templ.format = PIPE_FORMAT_R8G8_UNORM; + src_templ.format = PIPE_FORMAT_R8G8_UNORM; + break; case 4: dst_templ.format = PIPE_FORMAT_R8G8B8A8_UNORM; src_templ.format = PIPE_FORMAT_R8G8B8A8_UNORM; break; + case 8: + dst_templ.format = PIPE_FORMAT_R16G16B16A16_UINT; + src_templ.format = PIPE_FORMAT_R16G16B16A16_UINT; + break; + case 16: + dst_templ.format = PIPE_FORMAT_R32G32B32A32_UINT; + src_templ.format = PIPE_FORMAT_R32G32B32A32_UINT; + break; default: fprintf(stderr, "Unhandled format %s with blocksize %u\n", util_format_short_name(src->format), blocksize); |