diff options
| author | Corbin Simpson <MostAwesomeDude@gmail.com> | 2009-02-28 09:55:09 -0800 | 
|---|---|---|
| committer | Corbin Simpson <MostAwesomeDude@gmail.com> | 2009-02-28 09:56:35 -0800 | 
| commit | 5f1fdaabd1686c37c45f3ad4cf125fce1df3a4a8 (patch) | |
| tree | e1ea5c526867694e89142a78e9490cdc8ff8f6e4 /src | |
| parent | d1559eac6d7f9ee8757a2adc6271eb951efc546f (diff) | |
r300-gallium: Cleanup color formats.
Diffstat (limited to 'src')
| -rw-r--r-- | src/gallium/drivers/r300/r300_screen.c | 17 | ||||
| -rw-r--r-- | src/gallium/drivers/r300/r300_state_inlines.h | 17 | 
2 files changed, 19 insertions, 15 deletions
| diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index 470e1e2acb..2fcd504812 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -179,8 +179,11 @@ static boolean check_tex_2d_format(enum pipe_format format, boolean is_r500)  {      switch (format) {          /* Colorbuffer */ +        case PIPE_FORMAT_A4R4G4B4_UNORM: +        case PIPE_FORMAT_R5G6B5_UNORM: +        case PIPE_FORMAT_A1R5G5B5_UNORM:          case PIPE_FORMAT_A8R8G8B8_UNORM: -        /* Texture */ +        /* Colorbuffer or texture */          case PIPE_FORMAT_I8_UNORM:          /* Z buffer */          case PIPE_FORMAT_Z16_UNORM: @@ -188,29 +191,25 @@ static boolean check_tex_2d_format(enum pipe_format format, boolean is_r500)          case PIPE_FORMAT_Z24S8_UNORM:              return TRUE; -        /* XXX Supported yet unimplemented formats: */ -        case PIPE_FORMAT_A1R5G5B5_UNORM: -        case PIPE_FORMAT_R5G6B5_UNORM:          /* XXX These don't even exist          case PIPE_FORMAT_A32R32G32B32:          case PIPE_FORMAT_A16R16G16B16: */          /* XXX Insert YUV422 packed VYUY and YVYU here */ -        /* XXX What the deuce is UV88? (r3xx accel page 14) */ -        case PIPE_FORMAT_A4R4G4B4_UNORM: +        /* XXX What the deuce is UV88? (r3xx accel page 14)              debug_printf("r300: Warning: Got unimplemented format: %s in %s\n",                  pf_name(format), __FUNCTION__); -            return FALSE; +            return FALSE; */          /* XXX Supported yet unimplemented r5xx formats: */          /* XXX Again, what is UV1010 this time? (r5xx accel page 148) */          /* XXX Even more that don't exist          case PIPE_FORMAT_A10R10G10B10_UNORM:          case PIPE_FORMAT_A2R10G10B10_UNORM: -        case PIPE_FORMAT_I10_UNORM: */ +        case PIPE_FORMAT_I10_UNORM:              debug_printf(                  "r300: Warning: Got unimplemented r500 format: %s in %s\n",                  pf_name(format), __FUNCTION__); -            return FALSE; +            return FALSE; */          default:              debug_printf("r300: Warning: Got unsupported format: %s in %s\n", diff --git a/src/gallium/drivers/r300/r300_state_inlines.h b/src/gallium/drivers/r300/r300_state_inlines.h index e686e1fec6..361443a692 100644 --- a/src/gallium/drivers/r300/r300_state_inlines.h +++ b/src/gallium/drivers/r300/r300_state_inlines.h @@ -265,21 +265,24 @@ static INLINE uint32_t r300_anisotropy(float max_aniso)  static INLINE uint32_t r300_translate_colorformat(enum pipe_format format)  {      switch (format) { -        case PIPE_FORMAT_A8R8G8B8_UNORM: -            return R300_COLOR_FORMAT_ARGB8888; +        /* 8-bit buffers */          case PIPE_FORMAT_I8_UNORM:              return R300_COLOR_FORMAT_I8; -        case PIPE_FORMAT_A1R5G5B5_UNORM: -            return R300_COLOR_FORMAT_ARGB1555; +        /* 16-bit buffers */          case PIPE_FORMAT_R5G6B5_UNORM:              return R300_COLOR_FORMAT_RGB565; +        case PIPE_FORMAT_A1R5G5B5_UNORM: +            return R300_COLOR_FORMAT_ARGB1555; +        case PIPE_FORMAT_A4R4G4B4_UNORM: +            return R300_COLOR_FORMAT_ARGB4444; +        /* 32-bit buffers */ +        case PIPE_FORMAT_A8R8G8B8_UNORM: +            return R300_COLOR_FORMAT_ARGB8888;          /* XXX Not in pipe_format          case PIPE_FORMAT_A32R32G32B32:              return R300_COLOR_FORMAT_ARGB32323232;          case PIPE_FORMAT_A16R16G16B16:              return R300_COLOR_FORMAT_ARGB16161616; */ -        case PIPE_FORMAT_A4R4G4B4_UNORM: -            return R300_COLOR_FORMAT_ARGB4444;          /* XXX Not in pipe_format          case PIPE_FORMAT_A10R10G10B10_UNORM:              return R500_COLOR_FORMAT_ARGB10101010; @@ -299,8 +302,10 @@ static INLINE uint32_t r300_translate_colorformat(enum pipe_format format)  static INLINE uint32_t r300_translate_zsformat(enum pipe_format format)  {      switch (format) { +        /* 16-bit depth, no stencil */          case PIPE_FORMAT_Z16_UNORM:              return R300_DEPTHFORMAT_16BIT_INT_Z; +        /* 24-bit depth, 8-bit stencil */          case PIPE_FORMAT_Z24S8_UNORM:              return R300_DEPTHFORMAT_24BIT_INT_Z_8BIT_STENCIL;          default: | 
