r600g: add missing formats to color buffer setup.
authorDave Airlie <airlied@redhat.com>
Sat, 10 Sep 2011 16:53:34 +0000 (17:53 +0100)
committerDave Airlie <airlied@redhat.com>
Fri, 16 Sep 2011 08:25:48 +0000 (09:25 +0100)
just playing with EXT_texture_integer, and this was first bug.

Signed-off-by: Dave Airlie <airlied@redhat.com>
src/gallium/drivers/r600/evergreen_state.c
src/gallium/drivers/r600/r600_state.c

index b07251a65c73d32cdabc2b63aa3988911e83b668..32fd74c0d1c3dae21cc051f3e06f5f4d641ae0a3 100644 (file)
@@ -330,6 +330,8 @@ static uint32_t r600_translate_colorswap(enum pipe_format format)
                return V_028C70_SWAP_ALT_REV;
        case PIPE_FORMAT_R8G8B8A8_SNORM:
        case PIPE_FORMAT_R8G8B8A8_UNORM:
+       case PIPE_FORMAT_R8G8B8A8_SSCALED:
+       case PIPE_FORMAT_R8G8B8A8_USCALED:
        case PIPE_FORMAT_R8G8B8X8_UNORM:
                return V_028C70_SWAP_STD;
 
@@ -365,6 +367,8 @@ static uint32_t r600_translate_colorswap(enum pipe_format format)
        case PIPE_FORMAT_R32G32_FLOAT:
        case PIPE_FORMAT_R16G16B16A16_UNORM:
        case PIPE_FORMAT_R16G16B16A16_SNORM:
+       case PIPE_FORMAT_R16G16B16A16_USCALED:
+       case PIPE_FORMAT_R16G16B16A16_SSCALED:
        case PIPE_FORMAT_R16G16B16A16_FLOAT:
        case PIPE_FORMAT_Z32_FLOAT_S8X24_USCALED:
 
@@ -372,6 +376,8 @@ static uint32_t r600_translate_colorswap(enum pipe_format format)
        case PIPE_FORMAT_R32G32B32A32_FLOAT:
        case PIPE_FORMAT_R32G32B32A32_SNORM:
        case PIPE_FORMAT_R32G32B32A32_UNORM:
+       case PIPE_FORMAT_R32G32B32A32_SSCALED:
+       case PIPE_FORMAT_R32G32B32A32_USCALED:
                return V_028C70_SWAP_STD;
        default:
                R600_ERR("unsupported colorswap format %d\n", format);
@@ -437,6 +443,8 @@ static uint32_t r600_translate_colorformat(enum pipe_format format)
        case PIPE_FORMAT_X8B8G8R8_UNORM:
        case PIPE_FORMAT_X8R8G8B8_UNORM:
        case PIPE_FORMAT_R8G8B8_UNORM:
+       case PIPE_FORMAT_R8G8B8A8_SSCALED:
+       case PIPE_FORMAT_R8G8B8A8_USCALED:
                return V_028C70_COLOR_8_8_8_8;
 
        case PIPE_FORMAT_R10G10B10A2_UNORM:
@@ -472,8 +480,8 @@ static uint32_t r600_translate_colorformat(enum pipe_format format)
 
        /* 64-bit buffers. */
        case PIPE_FORMAT_R16G16B16_USCALED:
-       case PIPE_FORMAT_R16G16B16A16_USCALED:
        case PIPE_FORMAT_R16G16B16_SSCALED:
+       case PIPE_FORMAT_R16G16B16A16_USCALED:
        case PIPE_FORMAT_R16G16B16A16_SSCALED:
        case PIPE_FORMAT_R16G16B16A16_UNORM:
        case PIPE_FORMAT_R16G16B16A16_SNORM:
@@ -497,6 +505,8 @@ static uint32_t r600_translate_colorformat(enum pipe_format format)
        /* 128-bit buffers. */
        case PIPE_FORMAT_R32G32B32A32_SNORM:
        case PIPE_FORMAT_R32G32B32A32_UNORM:
+       case PIPE_FORMAT_R32G32B32A32_SSCALED:
+       case PIPE_FORMAT_R32G32B32A32_USCALED:
                return V_028C70_COLOR_32_32_32_32;
        case PIPE_FORMAT_R32G32B32A32_FLOAT:
                return V_028C70_COLOR_32_32_32_32_FLOAT;
index 501bab782e7848930dfca19024f017f77473e6e3..f6a840a9cde9192118e828a46984011e9adaee07 100644 (file)
@@ -332,6 +332,8 @@ static uint32_t r600_translate_colorswap(enum pipe_format format)
        case PIPE_FORMAT_R8G8B8A8_SNORM:
        case PIPE_FORMAT_R8G8B8A8_UNORM:
        case PIPE_FORMAT_R8G8B8X8_UNORM:
+       case PIPE_FORMAT_R8G8B8A8_SSCALED:
+       case PIPE_FORMAT_R8G8B8A8_USCALED:
                return V_0280A0_SWAP_STD;
 
        case PIPE_FORMAT_A8B8G8R8_UNORM:
@@ -366,6 +368,8 @@ static uint32_t r600_translate_colorswap(enum pipe_format format)
        case PIPE_FORMAT_R32G32_FLOAT:
        case PIPE_FORMAT_R16G16B16A16_UNORM:
        case PIPE_FORMAT_R16G16B16A16_SNORM:
+       case PIPE_FORMAT_R16G16B16A16_USCALED:
+       case PIPE_FORMAT_R16G16B16A16_SSCALED:
        case PIPE_FORMAT_R16G16B16A16_FLOAT:
        case PIPE_FORMAT_Z32_FLOAT_S8X24_USCALED:
 
@@ -433,6 +437,8 @@ static uint32_t r600_translate_colorformat(enum pipe_format format)
        case PIPE_FORMAT_B8G8R8X8_UNORM:
        case PIPE_FORMAT_R8G8B8A8_SNORM:
        case PIPE_FORMAT_R8G8B8A8_UNORM:
+       case PIPE_FORMAT_R8G8B8A8_SSCALED:
+       case PIPE_FORMAT_R8G8B8A8_USCALED:
        case PIPE_FORMAT_R8G8B8X8_UNORM:
        case PIPE_FORMAT_R8SG8SB8UX8U_NORM:
        case PIPE_FORMAT_X8B8G8R8_UNORM: