a2xx: add support for a few 16-bit color rendering formats

The rest should be possible too, just needs some additional
investigation. Passes fbo-*-formats piglit tests.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Wladimir J. van der Laan <laanwj@gmail.com>
This commit is contained in:
Ilia Mirkin
2017-08-25 00:47:05 -04:00
parent d3af7f5153
commit 790b5c4a38
2 changed files with 11 additions and 1 deletions

View File

@@ -47,6 +47,11 @@ static uint32_t fmt2swap(enum pipe_format format)
switch (format) {
case PIPE_FORMAT_B8G8R8A8_UNORM:
case PIPE_FORMAT_B8G8R8X8_UNORM:
case PIPE_FORMAT_B5G6R5_UNORM:
case PIPE_FORMAT_B5G5R5A1_UNORM:
case PIPE_FORMAT_B5G5R5X1_UNORM:
case PIPE_FORMAT_B4G4R4A4_UNORM:
case PIPE_FORMAT_B4G4R4X4_UNORM:
/* TODO probably some more.. */
return 1;
default:

View File

@@ -52,7 +52,12 @@ fd2_screen_is_format_supported(struct pipe_screen *pscreen,
/* TODO figure out how to render to other formats.. */
if ((usage & PIPE_BIND_RENDER_TARGET) &&
((format != PIPE_FORMAT_B8G8R8A8_UNORM) &&
((format != PIPE_FORMAT_B5G6R5_UNORM) &&
(format != PIPE_FORMAT_B5G5R5A1_UNORM) &&
(format != PIPE_FORMAT_B5G5R5X1_UNORM) &&
(format != PIPE_FORMAT_B4G4R4A4_UNORM) &&
(format != PIPE_FORMAT_B4G4R4X4_UNORM) &&
(format != PIPE_FORMAT_B8G8R8A8_UNORM) &&
(format != PIPE_FORMAT_B8G8R8X8_UNORM) &&
(format != PIPE_FORMAT_R8G8B8A8_UNORM) &&
(format != PIPE_FORMAT_R8G8B8X8_UNORM))) {