nv50,nvc0: update the format tables
authorChristoph Bumiller <e0425955@student.tuwien.ac.at>
Fri, 4 Mar 2011 22:54:42 +0000 (23:54 +0100)
committerChristoph Bumiller <e0425955@student.tuwien.ac.at>
Fri, 4 Mar 2011 23:51:07 +0000 (00:51 +0100)
Removed sampler view support for USCALED/SSCALED, the texture unit
refuses to convert to non-normalized float. The enums are treated
like UNORM.

Removed duplicate format related headers.

src/gallium/drivers/nv50/nv50_formats.c
src/gallium/drivers/nv50/nv50_tex.c
src/gallium/drivers/nv50/nv50_texture.xml.h
src/gallium/drivers/nvc0/nv50_defs.xml.h [deleted file]
src/gallium/drivers/nvc0/nv50_texture.xml.h [deleted file]
src/gallium/drivers/nvc0/nvc0_formats.c
src/gallium/drivers/nvc0/nvc0_state.c
src/gallium/drivers/nvc0/nvc0_surface.c
src/gallium/drivers/nvc0/nvc0_tex.c
src/gallium/drivers/nvc0/nvc0_transfer.c

index 194e826fa661b5e4f97352af9c74e594b245087b..7946117cf306e0e965a4e98a804d33b8cd4845f2 100644 (file)
@@ -70,7 +70,7 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET | SCANOUT },
 
    [PIPE_FORMAT_B8G8R8X8_UNORM] = { NV50_SURFACE_FORMAT_X8R8G8B8_UNORM,
-    A_(C2, C1, C0, ONE, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 1),
+    A_(C2, C1, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 1),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET | SCANOUT },
 
    [PIPE_FORMAT_B8G8R8A8_SRGB] = { NV50_SURFACE_FORMAT_A8R8G8B8_SRGB,
@@ -78,18 +78,18 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_B8G8R8X8_SRGB] = { NV50_SURFACE_FORMAT_X8R8G8B8_SRGB,
-    A_(C2, C1, C0, ONE, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 1),
+    A_(C2, C1, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 1),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_B5G6R5_UNORM] = { NV50_SURFACE_FORMAT_R5G6B5_UNORM,
-    B_(C2, C1, C0, ONE, UNORM, UNORM, UNORM, UNORM, 5_6_5, 1),
+    B_(C2, C1, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 5_6_5, 1),
     SAMPLER_VIEW | RENDER_TARGET | SCANOUT },
 
    [PIPE_FORMAT_B5G5R5A1_UNORM] = { NV50_SURFACE_FORMAT_A1R5G5B5_UNORM,
     B_(C2, C1, C0, C3, UNORM, UNORM, UNORM, UNORM, 1_5_5_5, 1),
     SAMPLER_VIEW | RENDER_TARGET | SCANOUT },
 
-   [PIPE_FORMAT_B4G4R4A4_UNORM] = { NV50_SURFACE_FORMAT_R16_UNORM,
+   [PIPE_FORMAT_B4G4R4A4_UNORM] = { 0,
     B_(C2, C1, C0, C3, UNORM, UNORM, UNORM, UNORM, 4_4_4_4, 1),
     SAMPLER_VIEW },
 
@@ -104,49 +104,49 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
    /* DEPTH/STENCIL FORMATS */
 
    [PIPE_FORMAT_Z16_UNORM] = { NV50_ZETA_FORMAT_Z16_UNORM,
-    B_(C0, C0, C0, ONE, UNORM, UINT, UINT, UINT, 16_ZETA, 0),
+    B_(C0, C0, C0, ONE_FLOAT, UNORM, UINT, UINT, UINT, Z16, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
    [PIPE_FORMAT_Z24_UNORM_S8_USCALED] = { NV50_ZETA_FORMAT_S8Z24_UNORM,
-    B_(C0, C0, C0, ONE, UNORM, UINT, UINT, UINT, 8_24, 0),
+    B_(C0, C0, C0, ONE_FLOAT, UNORM, UINT, UINT, UINT, S8Z24, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
    [PIPE_FORMAT_Z24X8_UNORM] = { NV50_ZETA_FORMAT_X8Z24_UNORM,
-    B_(C0, C0, C0, ONE, UNORM, UINT, UINT, UINT, 8_24, 0),
+    B_(C0, C0, C0, ONE_FLOAT, UNORM, UINT, UINT, UINT, X8Z24, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
    [PIPE_FORMAT_S8_USCALED_Z24_UNORM] = { NV50_ZETA_FORMAT_Z24S8_UNORM,
-    B_(C1, C1, C1, ONE, UINT, UNORM, UINT, UINT, 24_8, 0),
+    B_(C1, C1, C1, ONE_FLOAT, UINT, UNORM, UINT, UINT, Z24S8, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
    [PIPE_FORMAT_Z32_FLOAT] = { NV50_ZETA_FORMAT_Z32_FLOAT,
-    B_(C0, C0, C0, ONE, FLOAT, UINT, UINT, UINT, 32_ZETA, 0),
+    B_(C0, C0, C0, ONE_FLOAT, FLOAT, UINT, UINT, UINT, Z32, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
    [PIPE_FORMAT_Z32_FLOAT_S8X24_USCALED] = {
     NV50_ZETA_FORMAT_Z32_FLOAT_X24S8_UNORM,
-    B_(C0, C0, C0, ONE, FLOAT, UINT, UINT, UINT, 32_8, 0),
+    B_(C0, C0, C0, ONE_FLOAT, FLOAT, UINT, UINT, UINT, X24S8Z32, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
    /* LUMINANCE, ALPHA, INTENSITY */
 
    [PIPE_FORMAT_L8_UNORM] = { NV50_SURFACE_FORMAT_R8_UNORM,
-    A_(C0, C0, C0, ONE, UNORM, UNORM, UNORM, UNORM, 8, 0),
-    SAMPLER_VIEW },
+    A_(C0, C0, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8, 0),
+    SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_L8_SRGB] = { NV50_SURFACE_FORMAT_R8_UNORM,
-    A_(C0, C0, C0, ONE, UNORM, UNORM, UNORM, UNORM, 8, 0),
-    SAMPLER_VIEW },
+    A_(C0, C0, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8, 0),
+    SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_I8_UNORM] = { NV50_SURFACE_FORMAT_R8_UNORM,
     A_(C0, C0, C0, C0, UNORM, UNORM, UNORM, UNORM, 8, 0),
-    SAMPLER_VIEW },
+    SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_A8_UNORM] = { NV50_SURFACE_FORMAT_A8_UNORM,
     A_(ZERO, ZERO, ZERO, C0, UNORM, UNORM, UNORM, UNORM, 8, 0),
     SAMPLER_VIEW | RENDER_TARGET },
 
-   [PIPE_FORMAT_L8A8_UNORM] = { NV50_SURFACE_FORMAT_R16_UNORM,
+   [PIPE_FORMAT_L8A8_UNORM] = { 0,
     A_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 8_8, 0),
     SAMPLER_VIEW },
 
@@ -157,7 +157,7 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
    /* DXT, RGTC */
 
    [PIPE_FORMAT_DXT1_RGB] = { 0,
-    B_(C0, C1, C2, ONE, UNORM, UNORM, UNORM, UNORM, DXT1, 0),
+    B_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, DXT1, 0),
     SAMPLER_VIEW },
 
    [PIPE_FORMAT_DXT1_RGBA] = { 0,
@@ -173,19 +173,19 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     SAMPLER_VIEW },
 
    [PIPE_FORMAT_RGTC1_UNORM] = { 0,
-    B_(C0, ZERO, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, RGTC1, 0),
+    B_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, RGTC1, 0),
     SAMPLER_VIEW },
 
    [PIPE_FORMAT_RGTC1_SNORM] = { 0,
-    B_(C0, ZERO, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, RGTC1, 0),
+    B_(C0, ZERO, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, RGTC1, 0),
     SAMPLER_VIEW },
 
    [PIPE_FORMAT_RGTC2_UNORM] = { 0,
-    B_(C0, C1, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, RGTC2, 0),
+    B_(C0, C1, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, RGTC2, 0),
     SAMPLER_VIEW },
 
    [PIPE_FORMAT_RGTC2_SNORM] = { 0,
-    B_(C0, C1, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, RGTC2, 0),
+    B_(C0, C1, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, RGTC2, 0),
     SAMPLER_VIEW },
 
    /* FLOAT 16 */
@@ -195,15 +195,15 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16G16B16_FLOAT] = { NV50_SURFACE_FORMAT_R16G16B16X16_FLOAT,
-    A_(C0, C1, C2, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 16_16_16, 0),
+    A_(C0, C1, C2, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 16_16_16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16G16_FLOAT] = { NV50_SURFACE_FORMAT_R16G16_FLOAT,
-    A_(C0, C1, ZERO, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 16_16, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 16_16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16_FLOAT] = { NV50_SURFACE_FORMAT_R16_FLOAT,
-    A_(C0, ZERO, ZERO, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 16, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    /* FLOAT 32 */
@@ -213,25 +213,25 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R32G32B32_FLOAT] = { NV50_SURFACE_FORMAT_R32G32B32X32_FLOAT,
-    A_(C0, C1, C2, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32, 0),
+    A_(C0, C1, C2, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R32G32_FLOAT] = { NV50_SURFACE_FORMAT_R32G32_FLOAT,
-    A_(C0, C1, ZERO, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 32_32, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R32_FLOAT] = { NV50_SURFACE_FORMAT_R32_FLOAT,
-    A_(C0, ZERO, ZERO, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    /* ODD FORMATS */
 
    [PIPE_FORMAT_R11G11B10_FLOAT] = { NV50_SURFACE_FORMAT_B10G11R11_FLOAT,
-    B_(C0, C1, C2, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 10_11_11, 0),
+    B_(C0, C1, C2, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 10_11_11, 0),
     SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R9G9B9E5_FLOAT] = { 0,
-    B_(C0, C1, C2, ONE, FLOAT, FLOAT, FLOAT, FLOAT, E5_9_9_9, 0),
+    B_(C0, C1, C2, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, E5_9_9_9, 0),
     SAMPLER_VIEW },
 
    /* SNORM 32 */
@@ -241,15 +241,15 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32G32B32_SNORM] = { 0,
-    A_(C0, C1, C2, ONE, SNORM, SNORM, SNORM, SNORM, 32_32_32, 0),
+    A_(C0, C1, C2, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 32_32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32G32_SNORM] = { 0,
-    A_(C0, C1, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, 32_32, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32_SNORM] = { 0,
-    A_(C0, ZERO, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, 32, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    /* UNORM 32 */
@@ -259,15 +259,15 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32G32B32_UNORM] = { 0,
-    A_(C0, C1, C2, ONE, UNORM, UNORM, UNORM, UNORM, 32_32_32, 0),
+    A_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 32_32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32G32_UNORM] = { 0,
-    A_(C0, C1, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, 32_32, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32_UNORM] = { 0,
-    A_(C0, ZERO, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, 32, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    /* SNORM 16 */
@@ -277,7 +277,7 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16G16B16_SNORM] = { 0,
-    A_(C0, C1, C2, ONE, SNORM, SNORM, SNORM, SNORM, 16_16_16, 0),
+    A_(C0, C1, C2, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 16_16_16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R16G16_SNORM] = { NV50_SURFACE_FORMAT_R16G16_SNORM,
@@ -285,7 +285,7 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16_SNORM] = { NV50_SURFACE_FORMAT_R16_SNORM,
-    A_(C0, ZERO, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, 16, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    /* UNORM 16 */
@@ -295,7 +295,7 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16G16B16_UNORM] = { 0,
-    A_(C0, C1, C2, ONE, UNORM, UNORM, UNORM, UNORM, 16_16_16, 0),
+    A_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 16_16_16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R16G16_UNORM] = { NV50_SURFACE_FORMAT_R16G16_UNORM,
@@ -303,7 +303,7 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16_UNORM] = { NV50_SURFACE_FORMAT_R16_UNORM,
-    A_(C0, ZERO, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, 16, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    /* SNORM 8 */
@@ -313,15 +313,15 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8G8B8_SNORM] = { 0,
-    A_(C0, C1, C2, ONE, SNORM, SNORM, SNORM, SNORM, 8_8_8, 0),
+    A_(C0, C1, C2, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 8_8_8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R8G8_SNORM] = { NV50_SURFACE_FORMAT_R8G8_SNORM,
-    A_(C0, C1, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, 8_8, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 8_8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8_SNORM] = { NV50_SURFACE_FORMAT_R8_SNORM,
-    A_(C0, ZERO, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, 8, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    /* UNORM 8 */
@@ -335,126 +335,126 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] =
     SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8G8B8_UNORM] = { NV50_SURFACE_FORMAT_X8B8G8R8_UNORM,
-    A_(C0, C1, C2, ONE, UNORM, UNORM, UNORM, UNORM, 8_8_8, 0),
+    A_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8_8_8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8G8B8_SRGB] = { NV50_SURFACE_FORMAT_X8B8G8R8_SRGB,
-    A_(C0, C1, C2, ONE, UNORM, UNORM, UNORM, UNORM, 8_8_8, 0),
+    A_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8_8_8, 0),
     SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8G8_UNORM] = { NV50_SURFACE_FORMAT_R8G8_UNORM,
-    A_(C0, C1, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, 8_8, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8_8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8_UNORM] = { NV50_SURFACE_FORMAT_R8_UNORM,
-    A_(C0, ZERO, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, 8, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
-   /* SSCALED 32 */
+   /* SSCALED 32 (not integer, data is converted to float !) */
 
    [PIPE_FORMAT_R32G32B32A32_SSCALED] = { 0,
     A_(C0, C1, C2, C3, SSCALED, SSCALED, SSCALED, SSCALED, 32_32_32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R32G32B32_SSCALED] = { 0,
-    A_(C0, C1, C2, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 32_32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 32_32_32, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R32G32_SSCALED] = { 0,
-    A_(C0, C1, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 32_32, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R32_SSCALED] = { 0,
-    A_(C0, ZERO, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 32, 0),
+    VERTEX_BUFFER },
 
    /* USCALED 32 */
 
    [PIPE_FORMAT_R32G32B32A32_USCALED] = { 0,
     A_(C0, C1, C2, C3, USCALED, USCALED, USCALED, USCALED, 32_32_32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R32G32B32_USCALED] = { 0,
-    A_(C0, C1, C2, ONE, USCALED, USCALED, USCALED, USCALED, 32_32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 32_32_32, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R32G32_USCALED] = { 0,
-    A_(C0, C1, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 32_32, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R32_USCALED] = { 0,
-    A_(C0, ZERO, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, ZERO, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 32, 0),
+    VERTEX_BUFFER },
 
    /* SSCALED 16 */
 
    [PIPE_FORMAT_R16G16B16A16_SSCALED] = { 0,
     A_(C0, C1, C2, C3, SSCALED, SSCALED, SSCALED, SSCALED, 16_16_16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R16G16B16_SSCALED] = { 0,
-    A_(C0, C1, C2, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 16_16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 16_16_16, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R16G16_SSCALED] = { 0,
-    A_(C0, C1, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 16_16, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R16_SSCALED] = { 0,
-    A_(C0, ZERO, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 16, 0),
+    VERTEX_BUFFER },
 
    /* USCALED 16 */
 
    [PIPE_FORMAT_R16G16B16A16_USCALED] = { 0,
     A_(C0, C1, C2, C3, USCALED, USCALED, USCALED, USCALED, 16_16_16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R16G16B16_USCALED] = { 0,
-    A_(C0, C1, C2, ONE, USCALED, USCALED, USCALED, USCALED, 16_16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 16_16_16, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R16G16_USCALED] = { 0,
-    A_(C0, C1, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 16_16, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R16_USCALED] = { 0,
-    A_(C0, ZERO, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, ZERO, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 16, 0),
+    VERTEX_BUFFER },
 
    /* SSCALED 8 */
 
    [PIPE_FORMAT_R8G8B8A8_SSCALED] = { 0,
     A_(C0, C1, C2, C3, SSCALED, SSCALED, SSCALED, SSCALED, 8_8_8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R8G8B8_SSCALED] = { 0,
-    A_(C0, C1, C2, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 8_8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 8_8_8, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R8G8_SSCALED] = { 0,
-    A_(C0, C1, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 8_8, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R8_SSCALED] = { 0,
-    A_(C0, ZERO, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 8, 0),
+    VERTEX_BUFFER },
 
    /* USCALED 8 */
 
    [PIPE_FORMAT_R8G8B8A8_USCALED] = { 0,
     A_(C0, C1, C2, C3, USCALED, USCALED, USCALED, USCALED, 8_8_8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R8G8B8_USCALED] = { 0,
-    A_(C0, C1, C2, ONE, USCALED, USCALED, USCALED, USCALED, 8_8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 8_8_8, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R8G8_USCALED] = { 0,
-    A_(C0, C1, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 8_8, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R8_USCALED] = { 0,
-    A_(C0, ZERO, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, ZERO, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 8, 0),
+    VERTEX_BUFFER },
 };
index d9bb3aabafe7c35eef8b59de10c5b42224a252f8..cb1f2620786d7fd91572b1cccdf5ed519c10d2e3 100644 (file)
 
 #include "util/u_format.h"
 
+#define NV50_TIC_0_SWIZZLE__MASK                      \
+   (NV50_TIC_0_MAPA__MASK | NV50_TIC_0_MAPB__MASK |   \
+    NV50_TIC_0_MAPG__MASK | NV50_TIC_0_MAPR__MASK)
+
 static INLINE uint32_t
-nv50_tic_swizzle(uint32_t tc, unsigned swz)
+nv50_tic_swizzle(uint32_t tc, unsigned swz, boolean tex_int)
 {
    switch (swz) {
    case PIPE_SWIZZLE_RED:
@@ -40,7 +44,7 @@ nv50_tic_swizzle(uint32_t tc, unsigned swz)
    case PIPE_SWIZZLE_ALPHA:
       return (tc & NV50_TIC_0_MAPA__MASK) >> NV50_TIC_0_MAPA__SHIFT;
    case PIPE_SWIZZLE_ONE:
-      return NV50_TIC_MAP_ONE;
+      return tex_int ? NV50_TIC_MAP_ONE_INT : NV50_TIC_MAP_ONE_FLOAT;
    case PIPE_SWIZZLE_ZERO:
    default:
       return NV50_TIC_MAP_ZERO;
@@ -58,6 +62,7 @@ nv50_create_sampler_view(struct pipe_context *pipe,
    uint32_t depth;
    struct nv50_tic_entry *view;
    struct nv50_miptree *mt = nv50_miptree(texture);
+   boolean tex_int;
 
    view = MALLOC_STRUCT(nv50_tic_entry);
    if (!view)
@@ -80,10 +85,12 @@ nv50_create_sampler_view(struct pipe_context *pipe,
 
    tic[0] = nv50_format_table[view->pipe.format].tic;
 
-   swz[0] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_r);
-   swz[1] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_g);
-   swz[2] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_b);
-   swz[3] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_a);
+   tex_int = FALSE; /* XXX: integer textures */
+
+   swz[0] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_r, tex_int);
+   swz[1] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_g, tex_int);
+   swz[2] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_b, tex_int);
+   swz[3] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_a, tex_int);
    tic[0] = (tic[0] & ~NV50_TIC_0_SWIZZLE__MASK) |
       (swz[0] << NV50_TIC_0_MAPR__SHIFT) |
       (swz[1] << NV50_TIC_0_MAPG__SHIFT) |
@@ -93,7 +100,7 @@ nv50_create_sampler_view(struct pipe_context *pipe,
    tic[1] = /* mt->base.bo->offset; */ 0;
    tic[2] = /* mt->base.bo->offset >> 32 */ 0;
 
-   tic[2] |= 0x10001000 | /* NV50_TIC_2_NO_BORDER */ 0x40000000;
+   tic[2] |= 0x10001000 | NV50_TIC_2_NO_BORDER;
 
    if (desc->colorspace == UTIL_FORMAT_COLORSPACE_SRGB)
       tic[2] |= NV50_TIC_2_COLORSPACE_SRGB;
@@ -140,7 +147,7 @@ nv50_create_sampler_view(struct pipe_context *pipe,
       tic[2] |= NV50_TIC_2_TARGET_2D_ARRAY;
       break;
    case PIPE_BUFFER:
-      tic[2] |= NV50_TIC_2_TARGET_BUFFER | /* NV50_TIC_2_LINEAR */ (1 << 18);
+      tic[2] |= NV50_TIC_2_TARGET_BUFFER | NV50_TIC_2_LINEAR;
    default:
       NOUVEAU_ERR("invalid texture target: %d\n", mt->base.base.target);
       return FALSE;
index 9f83206516feff5095ca800c2feed5b4d2a7d908..e0cbbdf0d7b36bf309fd0aa052ce31151ffed94c 100644 (file)
@@ -8,10 +8,10 @@ http://0x04.net/cgit/index.cgi/rules-ng-ng
 git clone git://0x04.net/rules-ng-ng
 
 The rules-ng-ng source files this header was generated from are:
-- nv50_texture.xml (   6871 bytes, from 2010-10-03 13:18:37)
-- copyright.xml    (   6498 bytes, from 2010-10-03 13:18:37)
+- nv50_texture.xml (   8377 bytes, from 2011-02-12 12:05:21)
+- copyright.xml    (   6452 bytes, from 2010-11-25 23:28:20)
 
-Copyright (C) 2006-2010 by the following authors:
+Copyright (C) 2006-2011 by the following authors:
 - Artur Huillet <arthur.huillet@free.fr> (ahuillet)
 - Ben Skeggs (darktama, darktama_)
 - B. R. <koala_br@users.sourceforge.net> (koala_br)
@@ -22,7 +22,7 @@ Copyright (C) 2006-2010 by the following authors:
 - Dmitry Eremin-Solenikov <lumag@users.sf.net> (lumag)
 - EdB <edb_@users.sf.net> (edb_)
 - Erik Waling <erikwailing@users.sf.net> (erikwaling)
-- Francisco Jerez <currojerez@riseup.net> (curro, curro_, currojerez)
+- Francisco Jerez <currojerez@riseup.net> (curro)
 - imirkin <imirkin@users.sf.net> (imirkin)
 - jb17bsome <jb17bsome@bellsouth.net> (jb17bsome)
 - Jeremy Kolb <kjeremy@users.sf.net> (kjeremy)
@@ -75,7 +75,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define NV50_TIC_MAP_C1                                                0x00000003
 #define NV50_TIC_MAP_C2                                                0x00000004
 #define NV50_TIC_MAP_C3                                                0x00000005
-#define NV50_TIC_MAP_ONE                                       0x00000007
+#define NV50_TIC_MAP_ONE_INT                                   0x00000006
+#define NV50_TIC_MAP_ONE_FLOAT                                 0x00000007
 #define NV50_TIC_TYPE_SNORM                                    0x00000001
 #define NV50_TIC_TYPE_UNORM                                    0x00000002
 #define NV50_TIC_TYPE_SINT                                     0x00000003
@@ -109,7 +110,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define NV50_TIC_0_TYPE1__SHIFT                                        9
 #define NV50_TIC_0_TYPE0__MASK                                 0x000001c0
 #define NV50_TIC_0_TYPE0__SHIFT                                        6
-#define NV50_TIC_0_SWIZZLE__MASK                               0x3ffc0000
 #define NV50_TIC_0_FMT__MASK                                   0x0000003f
 #define NV50_TIC_0_FMT__SHIFT                                  0
 #define NV50_TIC_0_FMT_32_32_32_32                             0x00000001
@@ -122,16 +122,19 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define NV50_TIC_0_FMT_8_24                                    0x0000000d
 #define NV50_TIC_0_FMT_24_8                                    0x0000000e
 #define NV50_TIC_0_FMT_32                                      0x0000000f
+#define NV50_TIC_0_FMT_BPTC_FLOAT                              0x00000010
+#define NV50_TIC_0_FMT_BPTC_UFLOAT                             0x00000011
 #define NV50_TIC_0_FMT_4_4_4_4                                 0x00000012
 #define NV50_TIC_0_FMT_5_5_5_1                                 0x00000013
 #define NV50_TIC_0_FMT_1_5_5_5                                 0x00000014
 #define NV50_TIC_0_FMT_5_6_5                                   0x00000015
 #define NV50_TIC_0_FMT_6_5_5                                   0x00000016
+#define NV50_TIC_0_FMT_BPTC                                    0x00000017
 #define NV50_TIC_0_FMT_8_8                                     0x00000018
 #define NV50_TIC_0_FMT_16                                      0x0000001b
 #define NV50_TIC_0_FMT_8                                       0x0000001d
 #define NV50_TIC_0_FMT_4_4                                     0x0000001e
-#define NV50_TIC_0_FMT_UNK1F                                   0x0000001f
+#define NV50_TIC_0_FMT_BITMAP_8X8                              0x0000001f
 #define NV50_TIC_0_FMT_E5_9_9_9                                        0x00000020
 #define NV50_TIC_0_FMT_10_11_11                                        0x00000021
 #define NV50_TIC_0_FMT_C1_C2_C1_C0                             0x00000022
@@ -141,14 +144,24 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define NV50_TIC_0_FMT_DXT5                                    0x00000026
 #define NV50_TIC_0_FMT_RGTC1                                   0x00000027
 #define NV50_TIC_0_FMT_RGTC2                                   0x00000028
-#define NV50_TIC_0_FMT_24_8_ZETA                               0x00000029
-#define NV50_TIC_0_FMT_8_24_ZETA                               0x0000002a
-#define NV50_TIC_0_FMT_UNK2C_ZETA                              0x0000002c
-#define NV50_TIC_0_FMT_UNK2D_ZETA                              0x0000002d
-#define NV50_TIC_0_FMT_UNK2E_ZETA                              0x0000002e
-#define NV50_TIC_0_FMT_32_ZETA                                 0x0000002f
-#define NV50_TIC_0_FMT_32_8_ZETA                               0x00000030
-#define NV50_TIC_0_FMT_16_ZETA                         0x0000003a
+#define NV50_TIC_0_FMT_Z24S8                                   0x00000029
+#define NV50_TIC_0_FMT_S8Z24                                   0x0000002a
+#define NV50_TIC_0_FMT_X8Z24                                   0x0000002b
+#define NV50_TIC_0_FMT_C8Z24_MS4_CS4                           0x0000002c
+#define NV50_TIC_0_FMT_C8Z24_MS8_CS8                           0x0000002d
+#define NV50_TIC_0_FMT_C8Z24_MS4_CS12                          0x0000002e
+#define NV50_TIC_0_FMT_Z32                                     0x0000002f
+#define NV50_TIC_0_FMT_X24S8Z32                                        0x00000030
+#define NV50_TIC_0_FMT_X16C8S8X8Z24_MS4_CS4                    0x00000031
+#define NV50_TIC_0_FMT_X16C8S8X8Z24_MS8_CS8                    0x00000032
+#define NV50_TIC_0_FMT_X16C8X8Z32_MS4_CS4                      0x00000033
+#define NV50_TIC_0_FMT_X16C8X8Z32_MS8_CS8                      0x00000034
+#define NV50_TIC_0_FMT_X16C8S8Z32_MS4_CS4                      0x00000035
+#define NV50_TIC_0_FMT_X16C8S8Z32_MS8_CS8                      0x00000036
+#define NV50_TIC_0_FMT_X16C8S8X8Z24_MS4_CS12                   0x00000037
+#define NV50_TIC_0_FMT_X16C8X8Z32_MS4_CS12                     0x00000038
+#define NV50_TIC_0_FMT_X16C8S8Z32_MS4_CS12                     0x00000039
+#define NV50_TIC_0_FMT_Z16                                     0x0000003a
 
 #define NV50_TIC_1                                             0x00000004
 #define NV50_TIC_1_OFFSET_LOW__MASK                            0xffffffff
@@ -169,13 +182,16 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define NV50_TIC_2_TARGET_BUFFER                               0x00018000
 #define NV50_TIC_2_TARGET_RECT                                 0x0001c000
 #define NV50_TIC_2_TARGET_CUBE_ARRAY                           0x00020000
-#define NV50_TIC_2_TILE_MODE_LINEAR                            0x00040000
+#define NV50_TIC_2_LINEAR                                      0x00040000
+#define NV50_TIC_2_TILE_MODE_X__MASK                           0x00380000
+#define NV50_TIC_2_TILE_MODE_X__SHIFT                          19
 #define NV50_TIC_2_TILE_MODE_Y__MASK                           0x01c00000
 #define NV50_TIC_2_TILE_MODE_Y__SHIFT                          22
 #define NV50_TIC_2_TILE_MODE_Z__MASK                           0x0e000000
 #define NV50_TIC_2_TILE_MODE_Z__SHIFT                          25
 #define NV50_TIC_2_2D_UNK0258__MASK                            0x30000000
 #define NV50_TIC_2_2D_UNK0258__SHIFT                           28
+#define NV50_TIC_2_NO_BORDER                                   0x40000000
 #define NV50_TIC_2_NORMALIZED_COORDS                           0x80000000
 
 #define NV50_TIC_3                                             0x0000000c
@@ -211,6 +227,10 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define NV50_TSC_0_SHADOW_COMPARE_ENABLE                       0x00000200
 #define NV50_TSC_0_SHADOW_COMPARE_FUNC__MASK                   0x00001c00
 #define NV50_TSC_0_SHADOW_COMPARE_FUNC__SHIFT                  10
+#define NV50_TSC_0_BOX_S__MASK                                 0x0001c000
+#define NV50_TSC_0_BOX_S__SHIFT                                        14
+#define NV50_TSC_0_BOX_T__MASK                                 0x000e0000
+#define NV50_TSC_0_BOX_T__SHIFT                                        17
 #define NV50_TSC_0_ANISOTROPY_MASK__MASK                       0x00700000
 #define NV50_TSC_0_ANISOTROPY_MASK__SHIFT                      20
 
@@ -234,10 +254,10 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define NV50_TSC_1_LOD_BIAS__SHIFT                             12
 
 #define NV50_TSC_2                                             0x00000008
-#define NV50_TSC_2_MIN_LOD__MASK                               0x00000f00
-#define NV50_TSC_2_MIN_LOD__SHIFT                              8
-#define NV50_TSC_2_MAX_LOD__MASK                               0x00f00000
-#define NV50_TSC_2_MAX_LOD__SHIFT                              20
+#define NV50_TSC_2_MIN_LOD__MASK                               0x00000fff
+#define NV50_TSC_2_MIN_LOD__SHIFT                              0
+#define NV50_TSC_2_MAX_LOD__MASK                               0x00fff000
+#define NV50_TSC_2_MAX_LOD__SHIFT                              12
 
 #define NV50_TSC_4                                             0x00000010
 #define NV50_TSC_4_BORDER_COLOR_RED__MASK                      0xffffffff
diff --git a/src/gallium/drivers/nvc0/nv50_defs.xml.h b/src/gallium/drivers/nvc0/nv50_defs.xml.h
deleted file mode 100644 (file)
index 1bf2f80..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-#ifndef NV50_DEFS_XML
-#define NV50_DEFS_XML
-
-/* Autogenerated file, DO NOT EDIT manually!
-
-This file was generated by the rules-ng-ng headergen tool in this git repository:
-http://0x04.net/cgit/index.cgi/rules-ng-ng
-git clone git://0x04.net/rules-ng-ng
-
-The rules-ng-ng source files this header was generated from are:
-- nv50_defs.xml (   4482 bytes, from 2010-10-03 13:18:37)
-- copyright.xml (   6498 bytes, from 2010-10-03 13:18:37)
-
-Copyright (C) 2006-2010 by the following authors:
-- Artur Huillet <arthur.huillet@free.fr> (ahuillet)
-- Ben Skeggs (darktama, darktama_)
-- B. R. <koala_br@users.sourceforge.net> (koala_br)
-- Carlos Martin <carlosmn@users.sf.net> (carlosmn)
-- Christoph Bumiller <e0425955@student.tuwien.ac.at> (calim, chrisbmr)
-- Dawid Gajownik <gajownik@users.sf.net> (gajownik)
-- Dmitry Baryshkov
-- Dmitry Eremin-Solenikov <lumag@users.sf.net> (lumag)
-- EdB <edb_@users.sf.net> (edb_)
-- Erik Waling <erikwailing@users.sf.net> (erikwaling)
-- Francisco Jerez <currojerez@riseup.net> (curro, curro_, currojerez)
-- imirkin <imirkin@users.sf.net> (imirkin)
-- jb17bsome <jb17bsome@bellsouth.net> (jb17bsome)
-- Jeremy Kolb <kjeremy@users.sf.net> (kjeremy)
-- Laurent Carlier <lordheavym@gmail.com> (lordheavy)
-- Luca Barbieri <luca@luca-barbieri.com> (lb, lb1)
-- Maarten Maathuis <madman2003@gmail.com> (stillunknown)
-- Marcin KoÅ›cielnicki <koriakin@0x04.net> (mwk, koriakin)
-- Mark Carey <mark.carey@gmail.com> (careym)
-- Matthieu Castet <matthieu.castet@parrot.com> (mat-c)
-- nvidiaman <nvidiaman@users.sf.net> (nvidiaman)
-- Patrice Mandin <patmandin@gmail.com> (pmandin, pmdata)
-- Pekka Paalanen <pq@iki.fi> (pq, ppaalanen)
-- Peter Popov <ironpeter@users.sf.net> (ironpeter)
-- Richard Hughes <hughsient@users.sf.net> (hughsient)
-- Rudi Cilibrasi <cilibrar@users.sf.net> (cilibrar)
-- Serge Martin
-- Simon Raffeiner
-- Stephane Loeuillet <leroutier@users.sf.net> (leroutier)
-- Stephane Marchesin <stephane.marchesin@gmail.com> (marcheu)
-- sturmflut <sturmflut@users.sf.net> (sturmflut)
-- Sylvain Munaut <tnt@246tNt.com>
-- Victor Stinner <victor.stinner@haypocalc.com> (haypo)
-- Wladmir van der Laan <laanwj@gmail.com> (miathan6)
-- Younes Manton <younes.m@gmail.com> (ymanton)
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice (including the
-next paragraph) shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-
-#define NV50_SURFACE_FORMAT_R32G32B32A32_FLOAT                 0x000000c0
-#define NV50_SURFACE_FORMAT_R32G32B32A32_SINT                  0x000000c1
-#define NV50_SURFACE_FORMAT_R32G32B32A32_UINT                  0x000000c2
-#define NV50_SURFACE_FORMAT_R32G32B32X32_FLOAT                 0x000000c3
-#define NV50_SURFACE_FORMAT_R16G16B16A16_UNORM                 0x000000c6
-#define NV50_SURFACE_FORMAT_R16G16B16A16_SNORM                 0x000000c7
-#define NV50_SURFACE_FORMAT_R16G16B16A16_SINT                  0x000000c8
-#define NV50_SURFACE_FORMAT_R16G16B16A16_UINT                  0x000000c9
-#define NV50_SURFACE_FORMAT_R16G16B16A16_FLOAT                 0x000000ca
-#define NV50_SURFACE_FORMAT_R32G32_FLOAT                       0x000000cb
-#define NV50_SURFACE_FORMAT_R32G32_SINT                                0x000000cc
-#define NV50_SURFACE_FORMAT_R32G32_UINT                                0x000000cd
-#define NV50_SURFACE_FORMAT_R16G16B16X16_FLOAT                 0x000000ce
-#define NV50_SURFACE_FORMAT_A8R8G8B8_UNORM                     0x000000cf
-#define NV50_SURFACE_FORMAT_A8R8G8B8_SRGB                      0x000000d0
-#define NV50_SURFACE_FORMAT_A2B10G10R10_UNORM                  0x000000d1
-#define NV50_SURFACE_FORMAT_A2B10G10R10_UINT                   0x000000d2
-#define NV50_SURFACE_FORMAT_A8B8G8R8_UNORM                     0x000000d5
-#define NV50_SURFACE_FORMAT_A8B8G8R8_SRGB                      0x000000d6
-#define NV50_SURFACE_FORMAT_A8B8G8R8_SNORM                     0x000000d7
-#define NV50_SURFACE_FORMAT_A8B8G8R8_SINT                      0x000000d8
-#define NV50_SURFACE_FORMAT_A8B8G8R8_UINT                      0x000000d9
-#define NV50_SURFACE_FORMAT_R16G16_UNORM                       0x000000da
-#define NV50_SURFACE_FORMAT_R16G16_SNORM                       0x000000db
-#define NV50_SURFACE_FORMAT_R16G16_SINT                                0x000000dc
-#define NV50_SURFACE_FORMAT_R16G16_UINT                                0x000000dd
-#define NV50_SURFACE_FORMAT_R16G16_FLOAT                       0x000000de
-#define NV50_SURFACE_FORMAT_A2R10G10B10_UNORM                  0x000000df
-#define NV50_SURFACE_FORMAT_B10G11R11_FLOAT                    0x000000e0
-#define NV50_SURFACE_FORMAT_R32_FLOAT                          0x000000e5
-#define NV50_SURFACE_FORMAT_X8R8G8B8_UNORM                     0x000000e6
-#define NV50_SURFACE_FORMAT_X8R8G8B8_SRGB                      0x000000e7
-#define NV50_SURFACE_FORMAT_R5G6B5_UNORM                       0x000000e8
-#define NV50_SURFACE_FORMAT_A1R5G5B5_UNORM                     0x000000e9
-#define NV50_SURFACE_FORMAT_R8G8_UNORM                         0x000000ea
-#define NV50_SURFACE_FORMAT_R8G8_SNORM                         0x000000eb
-#define NV50_SURFACE_FORMAT_R8G8_SINT                          0x000000ec
-#define NV50_SURFACE_FORMAT_R8G8_UINT                          0x000000ed
-#define NV50_SURFACE_FORMAT_R16_UNORM                          0x000000ee
-#define NV50_SURFACE_FORMAT_R16_SNORM                          0x000000ef
-#define NV50_SURFACE_FORMAT_R16_SINT                           0x000000f0
-#define NV50_SURFACE_FORMAT_R16_UINT                           0x000000f1
-#define NV50_SURFACE_FORMAT_R16_FLOAT                          0x000000f2
-#define NV50_SURFACE_FORMAT_R8_UNORM                           0x000000f3
-#define NV50_SURFACE_FORMAT_R8_SNORM                           0x000000f4
-#define NV50_SURFACE_FORMAT_R8_SINT                            0x000000f5
-#define NV50_SURFACE_FORMAT_R8_UINT                            0x000000f6
-#define NV50_SURFACE_FORMAT_A8_UNORM                           0x000000f7
-#define NV50_SURFACE_FORMAT_X1R5G5B5_UNORM                     0x000000f8
-#define NV50_SURFACE_FORMAT_X8B8G8R8_UNORM                     0x000000f9
-#define NV50_SURFACE_FORMAT_X8B8G8R8_SRGB                      0x000000fa
-#define NV50_ZETA_FORMAT_Z32_FLOAT                             0x0000000a
-#define NV50_ZETA_FORMAT_Z16_UNORM                             0x00000013
-#define NV50_ZETA_FORMAT_Z24S8_UNORM                           0x00000014
-#define NV50_ZETA_FORMAT_X8Z24_UNORM                           0x00000015
-#define NV50_ZETA_FORMAT_S8Z24_UNORM                           0x00000016
-#define NV50_ZETA_FORMAT_UNK18                                 0x00000018
-#define NV50_ZETA_FORMAT_Z32_FLOAT_X24S8_UNORM                 0x00000019
-#define NV50_ZETA_FORMAT_UNK1D                                 0x0000001d
-#define NV50_ZETA_FORMAT_UNK1E                                 0x0000001e
-#define NV50_ZETA_FORMAT_UNK1F                                 0x0000001f
-#define NV50_QUERY__SIZE                                       0x00000010
-#define NV50_QUERY_COUNTER                                     0x00000000
-
-#define NV50_QUERY_RES                                         0x00000004
-
-#define NV50_QUERY_TIME                                                0x00000008
-
-
-#endif /* NV50_DEFS_XML */
diff --git a/src/gallium/drivers/nvc0/nv50_texture.xml.h b/src/gallium/drivers/nvc0/nv50_texture.xml.h
deleted file mode 100644 (file)
index 9f83206..0000000
+++ /dev/null
@@ -1,259 +0,0 @@
-#ifndef NV50_TEXTURE_XML
-#define NV50_TEXTURE_XML
-
-/* Autogenerated file, DO NOT EDIT manually!
-
-This file was generated by the rules-ng-ng headergen tool in this git repository:
-http://0x04.net/cgit/index.cgi/rules-ng-ng
-git clone git://0x04.net/rules-ng-ng
-
-The rules-ng-ng source files this header was generated from are:
-- nv50_texture.xml (   6871 bytes, from 2010-10-03 13:18:37)
-- copyright.xml    (   6498 bytes, from 2010-10-03 13:18:37)
-
-Copyright (C) 2006-2010 by the following authors:
-- Artur Huillet <arthur.huillet@free.fr> (ahuillet)
-- Ben Skeggs (darktama, darktama_)
-- B. R. <koala_br@users.sourceforge.net> (koala_br)
-- Carlos Martin <carlosmn@users.sf.net> (carlosmn)
-- Christoph Bumiller <e0425955@student.tuwien.ac.at> (calim, chrisbmr)
-- Dawid Gajownik <gajownik@users.sf.net> (gajownik)
-- Dmitry Baryshkov
-- Dmitry Eremin-Solenikov <lumag@users.sf.net> (lumag)
-- EdB <edb_@users.sf.net> (edb_)
-- Erik Waling <erikwailing@users.sf.net> (erikwaling)
-- Francisco Jerez <currojerez@riseup.net> (curro, curro_, currojerez)
-- imirkin <imirkin@users.sf.net> (imirkin)
-- jb17bsome <jb17bsome@bellsouth.net> (jb17bsome)
-- Jeremy Kolb <kjeremy@users.sf.net> (kjeremy)
-- Laurent Carlier <lordheavym@gmail.com> (lordheavy)
-- Luca Barbieri <luca@luca-barbieri.com> (lb, lb1)
-- Maarten Maathuis <madman2003@gmail.com> (stillunknown)
-- Marcin KoÅ›cielnicki <koriakin@0x04.net> (mwk, koriakin)
-- Mark Carey <mark.carey@gmail.com> (careym)
-- Matthieu Castet <matthieu.castet@parrot.com> (mat-c)
-- nvidiaman <nvidiaman@users.sf.net> (nvidiaman)
-- Patrice Mandin <patmandin@gmail.com> (pmandin, pmdata)
-- Pekka Paalanen <pq@iki.fi> (pq, ppaalanen)
-- Peter Popov <ironpeter@users.sf.net> (ironpeter)
-- Richard Hughes <hughsient@users.sf.net> (hughsient)
-- Rudi Cilibrasi <cilibrar@users.sf.net> (cilibrar)
-- Serge Martin
-- Simon Raffeiner
-- Stephane Loeuillet <leroutier@users.sf.net> (leroutier)
-- Stephane Marchesin <stephane.marchesin@gmail.com> (marcheu)
-- sturmflut <sturmflut@users.sf.net> (sturmflut)
-- Sylvain Munaut <tnt@246tNt.com>
-- Victor Stinner <victor.stinner@haypocalc.com> (haypo)
-- Wladmir van der Laan <laanwj@gmail.com> (miathan6)
-- Younes Manton <younes.m@gmail.com> (ymanton)
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice (including the
-next paragraph) shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*/
-
-
-#define NV50_TIC_MAP_ZERO                                      0x00000000
-#define NV50_TIC_MAP_C0                                                0x00000002
-#define NV50_TIC_MAP_C1                                                0x00000003
-#define NV50_TIC_MAP_C2                                                0x00000004
-#define NV50_TIC_MAP_C3                                                0x00000005
-#define NV50_TIC_MAP_ONE                                       0x00000007
-#define NV50_TIC_TYPE_SNORM                                    0x00000001
-#define NV50_TIC_TYPE_UNORM                                    0x00000002
-#define NV50_TIC_TYPE_SINT                                     0x00000003
-#define NV50_TIC_TYPE_UINT                                     0x00000004
-#define NV50_TIC_TYPE_SSCALED                                  0x00000005
-#define NV50_TIC_TYPE_USCALED                                  0x00000006
-#define NV50_TIC_TYPE_FLOAT                                    0x00000007
-#define NV50_TSC_WRAP_REPEAT                                   0x00000000
-#define NV50_TSC_WRAP_MIRROR_REPEAT                            0x00000001
-#define NV50_TSC_WRAP_CLAMP_TO_EDGE                            0x00000002
-#define NV50_TSC_WRAP_CLAMP_TO_BORDER                          0x00000003
-#define NV50_TSC_WRAP_CLAMP                                    0x00000004
-#define NV50_TSC_WRAP_MIRROR_CLAMP_TO_EDGE                     0x00000005
-#define NV50_TSC_WRAP_MIRROR_CLAMP_TO_BORDER                   0x00000006
-#define NV50_TSC_WRAP_MIRROR_CLAMP                             0x00000007
-#define NV50_TIC__SIZE                                         0x00000020
-#define NV50_TIC_0                                             0x00000000
-#define NV50_TIC_0_MAPA__MASK                                  0x38000000
-#define NV50_TIC_0_MAPA__SHIFT                                 27
-#define NV50_TIC_0_MAPB__MASK                                  0x07000000
-#define NV50_TIC_0_MAPB__SHIFT                                 24
-#define NV50_TIC_0_MAPG__MASK                                  0x00e00000
-#define NV50_TIC_0_MAPG__SHIFT                                 21
-#define NV50_TIC_0_MAPR__MASK                                  0x001c0000
-#define NV50_TIC_0_MAPR__SHIFT                                 18
-#define NV50_TIC_0_TYPE3__MASK                                 0x00038000
-#define NV50_TIC_0_TYPE3__SHIFT                                        15
-#define NV50_TIC_0_TYPE2__MASK                                 0x00007000
-#define NV50_TIC_0_TYPE2__SHIFT                                        12
-#define NV50_TIC_0_TYPE1__MASK                                 0x00000e00
-#define NV50_TIC_0_TYPE1__SHIFT                                        9
-#define NV50_TIC_0_TYPE0__MASK                                 0x000001c0
-#define NV50_TIC_0_TYPE0__SHIFT                                        6
-#define NV50_TIC_0_SWIZZLE__MASK                               0x3ffc0000
-#define NV50_TIC_0_FMT__MASK                                   0x0000003f
-#define NV50_TIC_0_FMT__SHIFT                                  0
-#define NV50_TIC_0_FMT_32_32_32_32                             0x00000001
-#define NV50_TIC_0_FMT_16_16_16_16                             0x00000003
-#define NV50_TIC_0_FMT_32_32                                   0x00000004
-#define NV50_TIC_0_FMT_32_8                                    0x00000005
-#define NV50_TIC_0_FMT_8_8_8_8                                 0x00000008
-#define NV50_TIC_0_FMT_2_10_10_10                              0x00000009
-#define NV50_TIC_0_FMT_16_16                                   0x0000000c
-#define NV50_TIC_0_FMT_8_24                                    0x0000000d
-#define NV50_TIC_0_FMT_24_8                                    0x0000000e
-#define NV50_TIC_0_FMT_32                                      0x0000000f
-#define NV50_TIC_0_FMT_4_4_4_4                                 0x00000012
-#define NV50_TIC_0_FMT_5_5_5_1                                 0x00000013
-#define NV50_TIC_0_FMT_1_5_5_5                                 0x00000014
-#define NV50_TIC_0_FMT_5_6_5                                   0x00000015
-#define NV50_TIC_0_FMT_6_5_5                                   0x00000016
-#define NV50_TIC_0_FMT_8_8                                     0x00000018
-#define NV50_TIC_0_FMT_16                                      0x0000001b
-#define NV50_TIC_0_FMT_8                                       0x0000001d
-#define NV50_TIC_0_FMT_4_4                                     0x0000001e
-#define NV50_TIC_0_FMT_UNK1F                                   0x0000001f
-#define NV50_TIC_0_FMT_E5_9_9_9                                        0x00000020
-#define NV50_TIC_0_FMT_10_11_11                                        0x00000021
-#define NV50_TIC_0_FMT_C1_C2_C1_C0                             0x00000022
-#define NV50_TIC_0_FMT_C2_C1_C0_C1                             0x00000023
-#define NV50_TIC_0_FMT_DXT1                                    0x00000024
-#define NV50_TIC_0_FMT_DXT3                                    0x00000025
-#define NV50_TIC_0_FMT_DXT5                                    0x00000026
-#define NV50_TIC_0_FMT_RGTC1                                   0x00000027
-#define NV50_TIC_0_FMT_RGTC2                                   0x00000028
-#define NV50_TIC_0_FMT_24_8_ZETA                               0x00000029
-#define NV50_TIC_0_FMT_8_24_ZETA                               0x0000002a
-#define NV50_TIC_0_FMT_UNK2C_ZETA                              0x0000002c
-#define NV50_TIC_0_FMT_UNK2D_ZETA                              0x0000002d
-#define NV50_TIC_0_FMT_UNK2E_ZETA                              0x0000002e
-#define NV50_TIC_0_FMT_32_ZETA                                 0x0000002f
-#define NV50_TIC_0_FMT_32_8_ZETA                               0x00000030
-#define NV50_TIC_0_FMT_16_ZETA                         0x0000003a
-
-#define NV50_TIC_1                                             0x00000004
-#define NV50_TIC_1_OFFSET_LOW__MASK                            0xffffffff
-#define NV50_TIC_1_OFFSET_LOW__SHIFT                           0
-
-#define NV50_TIC_2                                             0x00000008
-#define NV50_TIC_2_OFFSET_HIGH__MASK                           0x000000ff
-#define NV50_TIC_2_OFFSET_HIGH__SHIFT                          0
-#define NV50_TIC_2_COLORSPACE_SRGB                             0x00000400
-#define NV50_TIC_2_TARGET__MASK                                        0x0003c000
-#define NV50_TIC_2_TARGET__SHIFT                               14
-#define NV50_TIC_2_TARGET_1D                                   0x00000000
-#define NV50_TIC_2_TARGET_2D                                   0x00004000
-#define NV50_TIC_2_TARGET_3D                                   0x00008000
-#define NV50_TIC_2_TARGET_CUBE                                 0x0000c000
-#define NV50_TIC_2_TARGET_1D_ARRAY                             0x00010000
-#define NV50_TIC_2_TARGET_2D_ARRAY                             0x00014000
-#define NV50_TIC_2_TARGET_BUFFER                               0x00018000
-#define NV50_TIC_2_TARGET_RECT                                 0x0001c000
-#define NV50_TIC_2_TARGET_CUBE_ARRAY                           0x00020000
-#define NV50_TIC_2_TILE_MODE_LINEAR                            0x00040000
-#define NV50_TIC_2_TILE_MODE_Y__MASK                           0x01c00000
-#define NV50_TIC_2_TILE_MODE_Y__SHIFT                          22
-#define NV50_TIC_2_TILE_MODE_Z__MASK                           0x0e000000
-#define NV50_TIC_2_TILE_MODE_Z__SHIFT                          25
-#define NV50_TIC_2_2D_UNK0258__MASK                            0x30000000
-#define NV50_TIC_2_2D_UNK0258__SHIFT                           28
-#define NV50_TIC_2_NORMALIZED_COORDS                           0x80000000
-
-#define NV50_TIC_3                                             0x0000000c
-#define NV50_TIC_3_PITCH__MASK                                 0xffffffff
-#define NV50_TIC_3_PITCH__SHIFT                                        0
-
-#define NV50_TIC_4                                             0x00000010
-#define NV50_TIC_4_WIDTH__MASK                                 0xffffffff
-#define NV50_TIC_4_WIDTH__SHIFT                                        0
-
-#define NV50_TIC_5                                             0x00000014
-#define NV50_TIC_5_LAST_LEVEL__MASK                            0xf0000000
-#define NV50_TIC_5_LAST_LEVEL__SHIFT                           28
-#define NV50_TIC_5_DEPTH__MASK                                 0x0fff0000
-#define NV50_TIC_5_DEPTH__SHIFT                                        16
-#define NV50_TIC_5_HEIGHT__MASK                                        0x0000ffff
-#define NV50_TIC_5_HEIGHT__SHIFT                               0
-
-#define NV50_TIC_7                                             0x0000001c
-#define NV50_TIC_7_BASE_LEVEL__MASK                            0x0000000f
-#define NV50_TIC_7_BASE_LEVEL__SHIFT                           0
-#define NV50_TIC_7_MAX_LEVEL__MASK                             0x000000f0
-#define NV50_TIC_7_MAX_LEVEL__SHIFT                            4
-
-#define NV50_TSC__SIZE                                         0x00000020
-#define NV50_TSC_0                                             0x00000000
-#define NV50_TSC_0_WRAPS__MASK                                 0x00000007
-#define NV50_TSC_0_WRAPS__SHIFT                                        0
-#define NV50_TSC_0_WRAPT__MASK                                 0x00000038
-#define NV50_TSC_0_WRAPT__SHIFT                                        3
-#define NV50_TSC_0_WRAPR__MASK                                 0x000001c0
-#define NV50_TSC_0_WRAPR__SHIFT                                        6
-#define NV50_TSC_0_SHADOW_COMPARE_ENABLE                       0x00000200
-#define NV50_TSC_0_SHADOW_COMPARE_FUNC__MASK                   0x00001c00
-#define NV50_TSC_0_SHADOW_COMPARE_FUNC__SHIFT                  10
-#define NV50_TSC_0_ANISOTROPY_MASK__MASK                       0x00700000
-#define NV50_TSC_0_ANISOTROPY_MASK__SHIFT                      20
-
-#define NV50_TSC_1                                             0x00000004
-#define NV50_TSC_1_UNKN_ANISO_15                               0x10000000
-#define NV50_TSC_1_UNKN_ANISO_35                               0x18000000
-#define NV50_TSC_1_MAGF__MASK                                  0x00000003
-#define NV50_TSC_1_MAGF__SHIFT                                 0
-#define NV50_TSC_1_MAGF_NEAREST                                        0x00000001
-#define NV50_TSC_1_MAGF_LINEAR                                 0x00000002
-#define NV50_TSC_1_MINF__MASK                                  0x00000030
-#define NV50_TSC_1_MINF__SHIFT                                 4
-#define NV50_TSC_1_MINF_NEAREST                                        0x00000010
-#define NV50_TSC_1_MINF_LINEAR                                 0x00000020
-#define NV50_TSC_1_MIPF__MASK                                  0x000000c0
-#define NV50_TSC_1_MIPF__SHIFT                                 6
-#define NV50_TSC_1_MIPF_NONE                                   0x00000040
-#define NV50_TSC_1_MIPF_NEAREST                                        0x00000080
-#define NV50_TSC_1_MIPF_LINEAR                                 0x000000c0
-#define NV50_TSC_1_LOD_BIAS__MASK                              0x01fff000
-#define NV50_TSC_1_LOD_BIAS__SHIFT                             12
-
-#define NV50_TSC_2                                             0x00000008
-#define NV50_TSC_2_MIN_LOD__MASK                               0x00000f00
-#define NV50_TSC_2_MIN_LOD__SHIFT                              8
-#define NV50_TSC_2_MAX_LOD__MASK                               0x00f00000
-#define NV50_TSC_2_MAX_LOD__SHIFT                              20
-
-#define NV50_TSC_4                                             0x00000010
-#define NV50_TSC_4_BORDER_COLOR_RED__MASK                      0xffffffff
-#define NV50_TSC_4_BORDER_COLOR_RED__SHIFT                     0
-
-#define NV50_TSC_5                                             0x00000014
-#define NV50_TSC_5_BORDER_COLOR_GREEN__MASK                    0xffffffff
-#define NV50_TSC_5_BORDER_COLOR_GREEN__SHIFT                   0
-
-#define NV50_TSC_6                                             0x00000018
-#define NV50_TSC_6_BORDER_COLOR_BLUE__MASK                     0xffffffff
-#define NV50_TSC_6_BORDER_COLOR_BLUE__SHIFT                    0
-
-#define NV50_TSC_7                                             0x0000001c
-#define NV50_TSC_7_BORDER_COLOR_ALPHA__MASK                    0xffffffff
-#define NV50_TSC_7_BORDER_COLOR_ALPHA__SHIFT                   0
-
-
-#endif /* NV50_TEXTURE_XML */
index 5d0235738188c33781f8179d6630ba17fca35075..454c744063121505b144d88f4ec1bd9541398229 100644 (file)
  */
 
 #include "nvc0_screen.h"
-#include "nv50_texture.xml.h"
 #include "nvc0_3d.xml.h"
-#include "nv50_defs.xml.h"
-#include "nv50_texture.xml.h"
+#include "nv50/nv50_defs.xml.h"
+#include "nv50/nv50_texture.xml.h"
 #include "pipe/p_defines.h"
 
 #define A_(cr, cg, cb, ca, t0, t1, t2, t3, sz, r)     \
@@ -72,7 +71,7 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET | SCANOUT },
 
    [PIPE_FORMAT_B8G8R8X8_UNORM] = { NV50_SURFACE_FORMAT_X8R8G8B8_UNORM,
-    A_(C2, C1, C0, ONE, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 1),
+    A_(C2, C1, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 1),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET | SCANOUT },
 
    [PIPE_FORMAT_B8G8R8A8_SRGB] = { NV50_SURFACE_FORMAT_A8R8G8B8_SRGB,
@@ -80,21 +79,29 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_B8G8R8X8_SRGB] = { NV50_SURFACE_FORMAT_X8R8G8B8_SRGB,
-    A_(C2, C1, C0, ONE, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 1),
+    A_(C2, C1, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 1),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_B5G6R5_UNORM] = { NV50_SURFACE_FORMAT_R5G6B5_UNORM,
-    B_(C2, C1, C0, ONE, UNORM, UNORM, UNORM, UNORM, 5_6_5, 1),
+    B_(C2, C1, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 5_6_5, 1),
     SAMPLER_VIEW | RENDER_TARGET | SCANOUT },
 
    [PIPE_FORMAT_B5G5R5A1_UNORM] = { NV50_SURFACE_FORMAT_A1R5G5B5_UNORM,
     B_(C2, C1, C0, C3, UNORM, UNORM, UNORM, UNORM, 1_5_5_5, 1),
     SAMPLER_VIEW | RENDER_TARGET | SCANOUT },
 
-   [PIPE_FORMAT_B4G4R4A4_UNORM] = { NV50_SURFACE_FORMAT_R16_UNORM,
+   [PIPE_FORMAT_B5G5R5X1_UNORM] = { 0,
+    B_(C2, C1, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 1_5_5_5, 1),
+    SAMPLER_VIEW | SCANOUT },
+
+   [PIPE_FORMAT_B4G4R4A4_UNORM] = { 0,
     B_(C2, C1, C0, C3, UNORM, UNORM, UNORM, UNORM, 4_4_4_4, 1),
     SAMPLER_VIEW },
 
+   [PIPE_FORMAT_B4G4R4X4_UNORM] = { 0,
+    B_(C2, C1, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 4_4_4_4, 1),
+    SAMPLER_VIEW },
+
    [PIPE_FORMAT_R10G10B10A2_UNORM] = { NV50_SURFACE_FORMAT_A2B10G10R10_UNORM,
     A_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, 2_10_10_10, 0),
     SAMPLER_VIEW | RENDER_TARGET | VERTEX_BUFFER | SCANOUT },
@@ -106,49 +113,57 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
    /* DEPTH/STENCIL FORMATS */
 
    [PIPE_FORMAT_Z16_UNORM] = { NV50_ZETA_FORMAT_Z16_UNORM,
-    B_(C0, C0, C0, ONE, UNORM, UINT, UINT, UINT, 16_ZETA, 0),
+    B_(C0, C0, C0, ONE_FLOAT, UNORM, UINT, UINT, UINT, Z16, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
    [PIPE_FORMAT_Z24_UNORM_S8_USCALED] = { NV50_ZETA_FORMAT_S8Z24_UNORM,
-    B_(C0, C0, C0, ONE, UNORM, UINT, UINT, UINT, 8_24, 0),
+    B_(C0, C0, C0, ONE_FLOAT, UNORM, UINT, UINT, UINT, S8Z24, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
    [PIPE_FORMAT_Z24X8_UNORM] = { NV50_ZETA_FORMAT_X8Z24_UNORM,
-    B_(C0, C0, C0, ONE, UNORM, UINT, UINT, UINT, 8_24, 0),
+    B_(C0, C0, C0, ONE_FLOAT, UNORM, UINT, UINT, UINT, X8Z24, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
-   [PIPE_FORMAT_S8_USCALED_Z24_UNORM] = { NV50_ZETA_FORMAT_S8Z24_UNORM,
-    B_(C1, C1, C1, ONE, UINT, UNORM, UINT, UINT, 24_8, 0),
+   [PIPE_FORMAT_S8_USCALED_Z24_UNORM] = { NV50_ZETA_FORMAT_Z24S8_UNORM,
+    B_(C1, C1, C1, ONE_FLOAT, UINT, UNORM, UINT, UINT, Z24S8, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
    [PIPE_FORMAT_Z32_FLOAT] = { NV50_ZETA_FORMAT_Z32_FLOAT,
-    B_(C0, C0, C0, ONE, FLOAT, UINT, UINT, UINT, 32_ZETA, 0),
+    B_(C0, C0, C0, ONE_FLOAT, FLOAT, UINT, UINT, UINT, Z32, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
    [PIPE_FORMAT_Z32_FLOAT_S8X24_USCALED] = {
     NV50_ZETA_FORMAT_Z32_FLOAT_X24S8_UNORM,
-    B_(C0, C0, C0, ONE, FLOAT, UINT, UINT, UINT, 32_8, 0),
+    B_(C0, C0, C0, ONE_FLOAT, FLOAT, UINT, UINT, UINT, X24S8Z32, 0),
     SAMPLER_VIEW | DEPTH_STENCIL },
 
    /* LUMINANCE, ALPHA, INTENSITY */
 
    [PIPE_FORMAT_L8_UNORM] = { NV50_SURFACE_FORMAT_R8_UNORM,
-    A_(C0, C0, C0, ONE, UNORM, UNORM, UNORM, UNORM, 8, 0),
-    SAMPLER_VIEW },
+    A_(C0, C0, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8, 0),
+    SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_L8_SRGB] = { NV50_SURFACE_FORMAT_R8_UNORM,
-    A_(C0, C0, C0, ONE, UNORM, UNORM, UNORM, UNORM, 8, 0),
+    A_(C0, C0, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8, 0),
     SAMPLER_VIEW },
 
    [PIPE_FORMAT_I8_UNORM] = { NV50_SURFACE_FORMAT_R8_UNORM,
     A_(C0, C0, C0, C0, UNORM, UNORM, UNORM, UNORM, 8, 0),
-    SAMPLER_VIEW },
+    SAMPLER_VIEW | RENDER_TARGET },
+
+   [PIPE_FORMAT_I16_UNORM] = { NV50_SURFACE_FORMAT_R16_UNORM,
+    A_(C0, C0, C0, C0, UNORM, UNORM, UNORM, UNORM, 16, 0),
+    SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_A8_UNORM] = { NV50_SURFACE_FORMAT_A8_UNORM,
     A_(ZERO, ZERO, ZERO, C0, UNORM, UNORM, UNORM, UNORM, 8, 0),
     SAMPLER_VIEW | RENDER_TARGET },
 
-   [PIPE_FORMAT_L8A8_UNORM] = { NV50_SURFACE_FORMAT_R16_UNORM,
+   [PIPE_FORMAT_A16_UNORM] = { 0,
+    A_(ZERO, ZERO, ZERO, C0, UNORM, UNORM, UNORM, UNORM, 16, 0),
+    SAMPLER_VIEW },
+
+   [PIPE_FORMAT_L8A8_UNORM] = { 0,
     A_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 8_8, 0),
     SAMPLER_VIEW },
 
@@ -156,10 +171,18 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     A_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 8_8, 0),
     SAMPLER_VIEW },
 
+   [PIPE_FORMAT_L16A16_UNORM] = { 0,
+    A_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 16_16, 0),
+    SAMPLER_VIEW },
+
+   [PIPE_FORMAT_L4A4_UNORM] = { 0,
+    B_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 4_4, 0),
+    SAMPLER_VIEW },
+
    /* DXT, RGTC */
 
    [PIPE_FORMAT_DXT1_RGB] = { 0,
-    B_(C0, C1, C2, ONE, UNORM, UNORM, UNORM, UNORM, DXT1, 0),
+    B_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, DXT1, 0),
     SAMPLER_VIEW },
 
    [PIPE_FORMAT_DXT1_RGBA] = { 0,
@@ -174,20 +197,36 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     B_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, DXT5, 0),
     SAMPLER_VIEW },
 
+   [PIPE_FORMAT_DXT1_SRGB] = { 0,
+    B_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, DXT1, 0),
+    SAMPLER_VIEW },
+
+   [PIPE_FORMAT_DXT1_SRGBA] = { 0,
+    B_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, DXT1, 0),
+    SAMPLER_VIEW },
+
+   [PIPE_FORMAT_DXT3_SRGBA] = { 0,
+    B_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, DXT3, 0),
+    SAMPLER_VIEW },
+
+   [PIPE_FORMAT_DXT5_SRGBA] = { 0,
+    B_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, DXT5, 0),
+    SAMPLER_VIEW },
+
    [PIPE_FORMAT_RGTC1_UNORM] = { 0,
-    B_(C0, ZERO, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, RGTC1, 0),
+    B_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, RGTC1, 0),
     SAMPLER_VIEW },
 
    [PIPE_FORMAT_RGTC1_SNORM] = { 0,
-    B_(C0, ZERO, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, RGTC1, 0),
+    B_(C0, ZERO, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, RGTC1, 0),
     SAMPLER_VIEW },
 
    [PIPE_FORMAT_RGTC2_UNORM] = { 0,
-    B_(C0, C1, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, RGTC2, 0),
+    B_(C0, C1, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, RGTC2, 0),
     SAMPLER_VIEW },
 
    [PIPE_FORMAT_RGTC2_SNORM] = { 0,
-    B_(C0, C1, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, RGTC2, 0),
+    B_(C0, C1, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, RGTC2, 0),
     SAMPLER_VIEW },
 
    /* FLOAT 16 */
@@ -197,15 +236,15 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16G16B16_FLOAT] = { NV50_SURFACE_FORMAT_R16G16B16X16_FLOAT,
-    A_(C0, C1, C2, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 16_16_16, 0),
+    A_(C0, C1, C2, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 16_16_16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16G16_FLOAT] = { NV50_SURFACE_FORMAT_R16G16_FLOAT,
-    A_(C0, C1, ZERO, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 16_16, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 16_16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16_FLOAT] = { NV50_SURFACE_FORMAT_R16_FLOAT,
-    A_(C0, ZERO, ZERO, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 16, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    /* FLOAT 32 */
@@ -215,61 +254,61 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R32G32B32_FLOAT] = { NV50_SURFACE_FORMAT_R32G32B32X32_FLOAT,
-    A_(C0, C1, C2, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32, 0),
+    A_(C0, C1, C2, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R32G32_FLOAT] = { NV50_SURFACE_FORMAT_R32G32_FLOAT,
-    A_(C0, C1, ZERO, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 32_32, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R32_FLOAT] = { NV50_SURFACE_FORMAT_R32_FLOAT,
-    A_(C0, ZERO, ZERO, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    /* ODD FORMATS */
 
    [PIPE_FORMAT_R11G11B10_FLOAT] = { NV50_SURFACE_FORMAT_B10G11R11_FLOAT,
-    B_(C0, C1, C2, ONE, FLOAT, FLOAT, FLOAT, FLOAT, 10_11_11, 0),
-    SAMPLER_VIEW | RENDER_TARGET },
+    B_(C0, C1, C2, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 10_11_11, 0),
+    SAMPLER_VIEW | RENDER_TARGET | VERTEX_BUFFER },
 
    [PIPE_FORMAT_R9G9B9E5_FLOAT] = { 0,
-    B_(C0, C1, C2, ONE, FLOAT, FLOAT, FLOAT, FLOAT, E5_9_9_9, 0),
+    B_(C0, C1, C2, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, E5_9_9_9, 0),
     SAMPLER_VIEW },
 
    /* SNORM 32 */
 
    [PIPE_FORMAT_R32G32B32A32_SNORM] = { 0,
-    A_(C0, C1, C2, C3, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32_32, 0),
+    A_(C0, C1, C2, C3, SNORM, SNORM, SNORM, SNORM, 32_32_32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32G32B32_SNORM] = { 0,
-    A_(C0, C1, C2, ONE, SNORM, SNORM, SNORM, SNORM, 32_32_32, 0),
+    A_(C0, C1, C2, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 32_32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32G32_SNORM] = { 0,
-    A_(C0, C1, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, 32_32, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32_SNORM] = { 0,
-    A_(C0, ZERO, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, 32, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    /* UNORM 32 */
 
    [PIPE_FORMAT_R32G32B32A32_UNORM] = { 0,
-    A_(C0, C1, C2, C3, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32_32, 0),
+    A_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, 32_32_32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32G32B32_UNORM] = { 0,
-    A_(C0, C1, C2, ONE, UNORM, UNORM, UNORM, UNORM, 32_32_32, 0),
+    A_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 32_32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32G32_UNORM] = { 0,
-    A_(C0, C1, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, 32_32, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 32_32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R32_UNORM] = { 0,
-    A_(C0, ZERO, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, 32, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 32, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    /* SNORM 16 */
@@ -279,7 +318,7 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16G16B16_SNORM] = { 0,
-    A_(C0, C1, C2, ONE, SNORM, SNORM, SNORM, SNORM, 16_16_16, 0),
+    A_(C0, C1, C2, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 16_16_16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R16G16_SNORM] = { NV50_SURFACE_FORMAT_R16G16_SNORM,
@@ -287,7 +326,7 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16_SNORM] = { NV50_SURFACE_FORMAT_R16_SNORM,
-    A_(C0, ZERO, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, 16, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    /* UNORM 16 */
@@ -297,7 +336,7 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16G16B16_UNORM] = { 0,
-    A_(C0, C1, C2, ONE, UNORM, UNORM, UNORM, UNORM, 16_16_16, 0),
+    A_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 16_16_16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R16G16_UNORM] = { NV50_SURFACE_FORMAT_R16G16_UNORM,
@@ -305,7 +344,7 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R16_UNORM] = { NV50_SURFACE_FORMAT_R16_UNORM,
-    A_(C0, ZERO, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, 16, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 16, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    /* SNORM 8 */
@@ -315,15 +354,15 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8G8B8_SNORM] = { 0,
-    A_(C0, C1, C2, ONE, SNORM, SNORM, SNORM, SNORM, 8_8_8, 0),
+    A_(C0, C1, C2, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 8_8_8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW },
 
    [PIPE_FORMAT_R8G8_SNORM] = { NV50_SURFACE_FORMAT_R8G8_SNORM,
-    A_(C0, C1, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, 8_8, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 8_8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8_SNORM] = { NV50_SURFACE_FORMAT_R8_SNORM,
-    A_(C0, ZERO, ZERO, ONE, SNORM, SNORM, SNORM, SNORM, 8, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    /* UNORM 8 */
@@ -337,126 +376,148 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] =
     SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8G8B8_UNORM] = { NV50_SURFACE_FORMAT_X8B8G8R8_UNORM,
-    A_(C0, C1, C2, ONE, UNORM, UNORM, UNORM, UNORM, 8_8_8, 0),
+    A_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8_8_8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8G8B8_SRGB] = { NV50_SURFACE_FORMAT_X8B8G8R8_SRGB,
-    A_(C0, C1, C2, ONE, UNORM, UNORM, UNORM, UNORM, 8_8_8, 0),
+    A_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8_8_8, 0),
     SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8G8_UNORM] = { NV50_SURFACE_FORMAT_R8G8_UNORM,
-    A_(C0, C1, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, 8_8, 0),
+    A_(C0, C1, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8_8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
    [PIPE_FORMAT_R8_UNORM] = { NV50_SURFACE_FORMAT_R8_UNORM,
-    A_(C0, ZERO, ZERO, ONE, UNORM, UNORM, UNORM, UNORM, 8, 0),
+    A_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8, 0),
     VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET },
 
-   /* SSCALED 32 */
+   /* SSCALED 32 (not integer, converted to float on fetch !) */
 
-   [PIPE_FORMAT_R32G32B32A32_SSCALED] = { NV50_SURFACE_FORMAT_R32G32B32A32_SINT,
+   [PIPE_FORMAT_R32G32B32A32_SSCALED] = { 0,
     A_(C0, C1, C2, C3, SSCALED, SSCALED, SSCALED, SSCALED, 32_32_32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R32G32B32_SSCALED] = { 0,
-    A_(C0, C1, C2, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 32_32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 32_32_32, 0),
+    VERTEX_BUFFER },
 
-   [PIPE_FORMAT_R32G32_SSCALED] = { NV50_SURFACE_FORMAT_R32G32_SINT,
-    A_(C0, C1, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+   [PIPE_FORMAT_R32G32_SSCALED] = { 0,
+    A_(C0, C1, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 32_32, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R32_SSCALED] = { 0,
-    A_(C0, ZERO, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 32, 0),
+    VERTEX_BUFFER },
 
    /* USCALED 32 */
 
-   [PIPE_FORMAT_R32G32B32A32_USCALED] = { NV50_SURFACE_FORMAT_R32G32B32A32_UINT,
+   [PIPE_FORMAT_R32G32B32A32_USCALED] = { 0,
     A_(C0, C1, C2, C3, USCALED, USCALED, USCALED, USCALED, 32_32_32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R32G32B32_USCALED] = { 0,
-    A_(C0, C1, C2, ONE, USCALED, USCALED, USCALED, USCALED, 32_32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 32_32_32, 0),
+    VERTEX_BUFFER },
 
-   [PIPE_FORMAT_R32G32_USCALED] = { NV50_SURFACE_FORMAT_R32G32_UINT,
-    A_(C0, C1, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 32_32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+   [PIPE_FORMAT_R32G32_USCALED] = { 0,
+    A_(C0, C1, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 32_32, 0),
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R32_USCALED] = { 0,
-    A_(C0, ZERO, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 32, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, ZERO, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 32, 0),
+    VERTEX_BUFFER },
 
    /* SSCALED 16 */
 
-   [PIPE_FORMAT_R16G16B16A16_SSCALED] = { NV50_SURFACE_FORMAT_R16G16B16A16_SINT,
+   [PIPE_FORMAT_R16G16B16A16_SSCALED] = { 0,
     A_(C0, C1, C2, C3, SSCALED, SSCALED, SSCALED, SSCALED, 16_16_16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R16G16B16_SSCALED] = { 0,
-    A_(C0, C1, C2, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 16_16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 16_16_16, 0),
+    VERTEX_BUFFER },
 
-   [PIPE_FORMAT_R16G16_SSCALED] = { NV50_SURFACE_FORMAT_R16G16_SINT,
-    A_(C0, C1, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+   [PIPE_FORMAT_R16G16_SSCALED] = { 0,
+    A_(C0, C1, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 16_16, 0),
+    VERTEX_BUFFER },
 
-   [PIPE_FORMAT_R16_SSCALED] = { NV50_SURFACE_FORMAT_R16_SINT,
-    A_(C0, ZERO, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+   [PIPE_FORMAT_R16_SSCALED] = { 0,
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 16, 0),
+    VERTEX_BUFFER },
 
    /* USCALED 16 */
 
-   [PIPE_FORMAT_R16G16B16A16_USCALED] = { NV50_SURFACE_FORMAT_R16G16B16A16_UINT,
+   [PIPE_FORMAT_R16G16B16A16_USCALED] = { 0,
     A_(C0, C1, C2, C3, USCALED, USCALED, USCALED, USCALED, 16_16_16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R16G16B16_USCALED] = { 0,
-    A_(C0, C1, C2, ONE, USCALED, USCALED, USCALED, USCALED, 16_16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 16_16_16, 0),
+    VERTEX_BUFFER },
 
-   [PIPE_FORMAT_R16G16_USCALED] = { NV50_SURFACE_FORMAT_R16G16_UINT,
-    A_(C0, C1, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 16_16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+   [PIPE_FORMAT_R16G16_USCALED] = { 0,
+    A_(C0, C1, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 16_16, 0),
+    VERTEX_BUFFER },
 
-   [PIPE_FORMAT_R16_USCALED] = { NV50_SURFACE_FORMAT_R16_UINT,
-    A_(C0, ZERO, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 16, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+   [PIPE_FORMAT_R16_USCALED] = { 0,
+    A_(C0, ZERO, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 16, 0),
+    VERTEX_BUFFER },
 
    /* SSCALED 8 */
 
-   [PIPE_FORMAT_R8G8B8A8_SSCALED] = { NV50_SURFACE_FORMAT_A8B8G8R8_SINT,
+   [PIPE_FORMAT_R8G8B8A8_SSCALED] = { 0,
     A_(C0, C1, C2, C3, SSCALED, SSCALED, SSCALED, SSCALED, 8_8_8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R8G8B8_SSCALED] = { 0,
-    A_(C0, C1, C2, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 8_8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 8_8_8, 0),
+    VERTEX_BUFFER },
 
-   [PIPE_FORMAT_R8G8_SSCALED] = { NV50_SURFACE_FORMAT_R8G8_SINT,
-    A_(C0, C1, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+   [PIPE_FORMAT_R8G8_SSCALED] = { 0,
+    A_(C0, C1, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 8_8, 0),
+    VERTEX_BUFFER },
 
-   [PIPE_FORMAT_R8_SSCALED] = { NV50_SURFACE_FORMAT_R8_SINT,
-    A_(C0, ZERO, ZERO, ONE, SSCALED, SSCALED, SSCALED, SSCALED, 8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+   [PIPE_FORMAT_R8_SSCALED] = { 0,
+    A_(C0, ZERO, ZERO, ONE_FLOAT, SSCALED, SSCALED, SSCALED, SSCALED, 8, 0),
+    VERTEX_BUFFER },
 
    /* USCALED 8 */
 
-   [PIPE_FORMAT_R8G8B8A8_USCALED] = { NV50_SURFACE_FORMAT_A8B8G8R8_UINT,
+   [PIPE_FORMAT_R8G8B8A8_USCALED] = { 0,
     A_(C0, C1, C2, C3, USCALED, USCALED, USCALED, USCALED, 8_8_8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    VERTEX_BUFFER },
 
    [PIPE_FORMAT_R8G8B8_USCALED] = { 0,
-    A_(C0, C1, C2, ONE, USCALED, USCALED, USCALED, USCALED, 8_8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+    A_(C0, C1, C2, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 8_8_8, 0),
+    VERTEX_BUFFER },
 
-   [PIPE_FORMAT_R8G8_USCALED] = { NV50_SURFACE_FORMAT_R8G8_UINT,
-    A_(C0, C1, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 8_8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+   [PIPE_FORMAT_R8G8_USCALED] = { 0,
+    A_(C0, C1, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 8_8, 0),
+    VERTEX_BUFFER },
 
-   [PIPE_FORMAT_R8_USCALED] = { NV50_SURFACE_FORMAT_R8_UINT,
-    A_(C0, ZERO, ZERO, ONE, USCALED, USCALED, USCALED, USCALED, 8, 0),
-    VERTEX_BUFFER | SAMPLER_VIEW },
+   [PIPE_FORMAT_R8_USCALED] = { 0,
+    A_(C0, ZERO, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 8, 0),
+    VERTEX_BUFFER },
+
+   /* OTHER FORMATS */
+
+   [PIPE_FORMAT_R8G8_B8G8_UNORM] = { 0,
+    B_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, C1_C2_C1_C0, 0),
+    SAMPLER_VIEW },
+
+   [PIPE_FORMAT_G8R8_G8B8_UNORM] = { 0,
+    B_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, C2_C1_C0_C1, 0),
+    SAMPLER_VIEW },
+
+   [PIPE_FORMAT_R8SG8SB8UX8U_NORM] = { 0,
+    B_(C0, C1, C2, ONE_FLOAT, SNORM, SNORM, UNORM, UNORM, 8_8_8_8, 0),
+    SAMPLER_VIEW },
+
+   [PIPE_FORMAT_R5SG5SB6U_NORM] = { 0,
+    B_(C0, C1, C2, ONE_FLOAT, SNORM, SNORM, UNORM, UNORM, 6_5_5, 0),
+    SAMPLER_VIEW },
+
+   [PIPE_FORMAT_R1_UNORM] = { 0,
+    B_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, BITMAP_8X8, 0),
+    SAMPLER_VIEW },
 };
index ee4680efeca83a97ebcdc29509e2ec099ad56959..69af3338264846d6e287285c55dbac76d95322a1 100644 (file)
@@ -30,7 +30,7 @@
 #include "nvc0_context.h"
 
 #include "nvc0_3d.xml.h"
-#include "nv50_texture.xml.h"
+#include "nv50/nv50_texture.xml.h"
 
 #include "nouveau/nouveau_gldefs.h"
 
index 2801e3b2c3b70836966ed053158390ee5a75c18b..17fc51b8aac54989017ce012d82984a242765a8d 100644 (file)
@@ -32,7 +32,7 @@
 #include "nvc0_resource.h"
 #include "nvc0_transfer.h"
 
-#include "nv50_defs.xml.h"
+#include "nv50/nv50_defs.xml.h"
 
 #define NVC0_ENG2D_SUPPORTED_FORMATS 0xff9ccfe1cce3ccc9ULL
 
index c52c76597a3663d941b1b4d65ba08e2396922af7..7446be6709232ee8e2a5d51b8d400acc151eeb17 100644 (file)
 
 #include "nvc0_context.h"
 #include "nvc0_resource.h"
-#include "nv50_texture.xml.h"
+#include "nv50/nv50_texture.xml.h"
 
 #include "util/u_format.h"
 
+#define NV50_TIC_0_SWIZZLE__MASK                      \
+   (NV50_TIC_0_MAPA__MASK | NV50_TIC_0_MAPB__MASK |   \
+    NV50_TIC_0_MAPG__MASK | NV50_TIC_0_MAPR__MASK)
+
 static INLINE uint32_t
-nv50_tic_swizzle(uint32_t tc, unsigned swz)
+nv50_tic_swizzle(uint32_t tc, unsigned swz, boolean tex_int)
 {
    switch (swz) {
    case PIPE_SWIZZLE_RED:
@@ -39,7 +43,7 @@ nv50_tic_swizzle(uint32_t tc, unsigned swz)
    case PIPE_SWIZZLE_ALPHA:
       return (tc & NV50_TIC_0_MAPA__MASK) >> NV50_TIC_0_MAPA__SHIFT;
    case PIPE_SWIZZLE_ONE:
-      return NV50_TIC_MAP_ONE;
+      return tex_int ? NV50_TIC_MAP_ONE_INT : NV50_TIC_MAP_ONE_FLOAT;
    case PIPE_SWIZZLE_ZERO:
    default:
       return NV50_TIC_MAP_ZERO;
@@ -57,6 +61,7 @@ nvc0_create_sampler_view(struct pipe_context *pipe,
    uint32_t depth;
    struct nvc0_tic_entry *view;
    struct nvc0_miptree *mt = nvc0_miptree(texture);
+   boolean tex_int;
 
    view = MALLOC_STRUCT(nvc0_tic_entry);
    if (!view)
@@ -79,10 +84,12 @@ nvc0_create_sampler_view(struct pipe_context *pipe,
 
    tic[0] = nvc0_format_table[view->pipe.format].tic;
 
-   swz[0] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_r);
-   swz[1] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_g);
-   swz[2] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_b);
-   swz[3] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_a);
+   tex_int = FALSE; /* XXX: integer textures */
+
+   swz[0] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_r, tex_int);
+   swz[1] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_g, tex_int);
+   swz[2] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_b, tex_int);
+   swz[3] = nv50_tic_swizzle(tic[0], view->pipe.swizzle_a, tex_int);
    tic[0] = (tic[0] & ~NV50_TIC_0_SWIZZLE__MASK) |
       (swz[0] << NV50_TIC_0_MAPR__SHIFT) |
       (swz[1] << NV50_TIC_0_MAPG__SHIFT) |
@@ -92,7 +99,7 @@ nvc0_create_sampler_view(struct pipe_context *pipe,
    tic[1] = /* mt->base.bo->offset; */ 0;
    tic[2] = /* mt->base.bo->offset >> 32 */ 0;
 
-   tic[2] |= 0x10001000 | /* NV50_TIC_2_NO_BORDER */ 0x40000000;
+   tic[2] |= 0x10001000 | NV50_TIC_2_NO_BORDER;
 
    if (desc->colorspace == UTIL_FORMAT_COLORSPACE_SRGB)
       tic[2] |= NV50_TIC_2_COLORSPACE_SRGB;
@@ -140,7 +147,7 @@ nvc0_create_sampler_view(struct pipe_context *pipe,
       tic[2] |= NV50_TIC_2_TARGET_2D_ARRAY;
       break;
    case PIPE_BUFFER:
-      tic[2] |= NV50_TIC_2_TARGET_BUFFER | /* NV50_TIC_2_LINEAR */ (1 << 18);
+      tic[2] |= NV50_TIC_2_TARGET_BUFFER | NV50_TIC_2_LINEAR;
    default:
       NOUVEAU_ERR("invalid texture target: %d\n", mt->base.base.target);
       return FALSE;
index f781fbcfe73a59ff8a31eb4b694c978faac51d24..7bbfe057e58b6c798265614383fd509be2346848 100644 (file)
@@ -4,7 +4,7 @@
 #include "nvc0_context.h"
 #include "nvc0_transfer.h"
 
-#include "nv50_defs.xml.h"
+#include "nv50/nv50_defs.xml.h"
 
 struct nvc0_transfer {
    struct pipe_transfer base;