radeonsi: Handle arbitrary 2-byte formats in resource_copy_region

Fixes mplayer -vo vdpau OSD.

NOTE: This is a candidate for the 9.1 branch.

Reported-by: Igor Vagulin <igor.vagulin@gmail.com>

Reviewed-by: Christian König <christian.koenig@amd.com>
Tested-by: Christian König <christian.koenig@amd.com>
(cherry picked from commit c6efb4870b)
This commit is contained in:
Michel Dänzer 2013-03-27 12:43:32 +01:00 committed by Ian Romanick
parent 09f5ee9918
commit 7c6472410a

View file

@ -417,6 +417,12 @@ static void r600_resource_copy_region(struct pipe_context *ctx,
r600_change_format(dst, dst_level, &orig_info[1],
PIPE_FORMAT_R8_UNORM);
break;
case 2:
r600_change_format(src, src_level, &orig_info[0],
PIPE_FORMAT_R8G8_UNORM);
r600_change_format(dst, dst_level, &orig_info[1],
PIPE_FORMAT_R8G8_UNORM);
break;
case 4:
r600_change_format(src, src_level, &orig_info[0],
PIPE_FORMAT_R8G8B8A8_UNORM);