Merge remote branch 'origin/nv50-compiler'
[mesa.git] / src / gallium / drivers / nv50 / nv50_reg.h
index e2a8e5134401b732186e81be02bca699d297cc02..365576fdd07f047eafd8237c587c63f017eccd14 100644 (file)
@@ -448,7 +448,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define  NV50TCL_DMA_TIC                                                               0x000001a0
 #define  NV50TCL_DMA_TEXTURE                                                           0x000001a4
 #define  NV50TCL_DMA_STRMOUT                                                           0x000001a8
-#define  NV50TCL_DMA_UNK01AC                                                           0x000001ac
+#define  NV50TCL_DMA_CLIPID                                                            0x000001ac
 #define  NV50TCL_DMA_COLOR(x)                                                          (0x000001c0+((x)*4))
 #define  NV50TCL_DMA_COLOR__SIZE                                                       0x00000008
 #define  NV50TCL_RT_ADDRESS_HIGH(x)                                                    (0x00000200+((x)*32))
@@ -665,8 +665,20 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define  NV50TCL_DEPTH_RANGE_FAR__SIZE                                                 0x00000010
 #define  NV50TCL_VIEWPORT_CLIP_HORIZ(x)                                                        (0x00000d00+((x)*8))
 #define  NV50TCL_VIEWPORT_CLIP_HORIZ__SIZE                                             0x00000008
+#define   NV50TCL_VIEWPORT_CLIP_HORIZ_MIN_SHIFT                                                0
+#define   NV50TCL_VIEWPORT_CLIP_HORIZ_MIN_MASK                                         0x0000ffff
+#define   NV50TCL_VIEWPORT_CLIP_HORIZ_MAX_SHIFT                                                16
+#define   NV50TCL_VIEWPORT_CLIP_HORIZ_MAX_MASK                                         0xffff0000
 #define  NV50TCL_VIEWPORT_CLIP_VERT(x)                                                 (0x00000d04+((x)*8))
 #define  NV50TCL_VIEWPORT_CLIP_VERT__SIZE                                              0x00000008
+#define   NV50TCL_VIEWPORT_CLIP_VERT_MIN_SHIFT                                         0
+#define   NV50TCL_VIEWPORT_CLIP_VERT_MIN_MASK                                          0x0000ffff
+#define   NV50TCL_VIEWPORT_CLIP_VERT_MAX_SHIFT                                         16
+#define   NV50TCL_VIEWPORT_CLIP_VERT_MAX_MASK                                          0xffff0000
+#define  NV50TCL_CLIPID_REGION_HORIZ(x)                                                        (0x00000d40+((x)*8))
+#define  NV50TCL_CLIPID_REGION_HORIZ__SIZE                                             0x00000004
+#define  NV50TCL_CLIPID_REGION_VERT(x)                                                 (0x00000d44+((x)*8))
+#define  NV50TCL_CLIPID_REGION_VERT__SIZE                                              0x00000004
 #define  NV50TCL_VERTEX_BUFFER_FIRST                                                   0x00000d74
 #define  NV50TCL_VERTEX_BUFFER_COUNT                                                   0x00000d78
 #define  NV50TCL_CLEAR_COLOR(x)                                                                (0x00000d80+((x)*4))
@@ -724,14 +736,16 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define  NV50TCL_GP_ADDRESS_LOW                                                                0x00000f74
 #define  NV50TCL_VP_ADDRESS_HIGH                                                       0x00000f7c
 #define  NV50TCL_VP_ADDRESS_LOW                                                                0x00000f80
-#define  NV50TCL_UNK0F84_ADDRESS_HIGH                                                  0x00000f84
-#define  NV50TCL_UNK0F84_ADDRESS_LOW                                                   0x00000f88
+#define  NV50TCL_VERTEX_RUNOUT_HIGH                                                    0x00000f84
+#define  NV50TCL_VERTEX_RUNOUT_LOW                                                     0x00000f88
 #define  NV50TCL_DEPTH_BOUNDS(x)                                                       (0x00000f9c+((x)*4))
 #define  NV50TCL_DEPTH_BOUNDS__SIZE                                                    0x00000002
 #define  NV50TCL_FP_ADDRESS_HIGH                                                       0x00000fa4
 #define  NV50TCL_FP_ADDRESS_LOW                                                                0x00000fa8
 #define  NV50TCL_MSAA_MASK(x)                                                          (0x00000fbc+((x)*4))
 #define  NV50TCL_MSAA_MASK__SIZE                                                       0x00000004
+#define  NV50TCL_CLIPID_ADDRESS_HIGH                                                   0x00000fcc
+#define  NV50TCL_CLIPID_ADDRESS_LOW                                                    0x00000fd0
 #define  NV50TCL_ZETA_ADDRESS_HIGH                                                     0x00000fe0
 #define  NV50TCL_ZETA_ADDRESS_LOW                                                      0x00000fe4
 #define  NV50TCL_ZETA_FORMAT                                                           0x00000fe8
@@ -861,37 +875,45 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV50TCL_BLEND_EQUATION_RGB_FUNC_SUBTRACT                                     0x0000800a
 #define   NV50TCL_BLEND_EQUATION_RGB_FUNC_REVERSE_SUBTRACT                             0x0000800b
 #define  NV50TCL_BLEND_FUNC_SRC_RGB                                                    0x00001344
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_ZERO                                              0x00000000
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE                                               0x00000001
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_SRC_COLOR                                         0x00000300
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_COLOR                               0x00000301
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_SRC_ALPHA                                         0x00000302
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_ALPHA                               0x00000303
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_DST_ALPHA                                         0x00000304
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_ALPHA                               0x00000305
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_DST_COLOR                                         0x00000306
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_COLOR                               0x00000307
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_SRC_ALPHA_SATURATE                                        0x00000308
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_CONSTANT_COLOR                                    0x00008001
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_COLOR                          0x00008002
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_CONSTANT_ALPHA                                    0x00008003
-#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_ALPHA                          0x00008004
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_ZERO                                              0x00004000
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE                                               0x00004001
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_SRC_COLOR                                         0x00004300
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_COLOR                               0x00004301
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_SRC_ALPHA                                         0x00004302
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_ALPHA                               0x00004303
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_DST_ALPHA                                         0x00004304
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_ALPHA                               0x00004305
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_DST_COLOR                                         0x00004306
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_COLOR                               0x00004307
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_SRC_ALPHA_SATURATE                                        0x00004308
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_CONSTANT_COLOR                                    0x0000c001
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_COLOR                          0x0000c002
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_CONSTANT_ALPHA                                    0x0000c003
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_ALPHA                          0x0000c004
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_SRC1_COLOR                                                0x0000c900
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC1_COLOR                              0x0000c901
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_SRC1_ALPHA                                                0x0000c902
+#define   NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC1_ALPHA                              0x0000c903
 #define  NV50TCL_BLEND_FUNC_DST_RGB                                                    0x00001348
-#define   NV50TCL_BLEND_FUNC_DST_RGB_ZERO                                              0x00000000
-#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE                                               0x00000001
-#define   NV50TCL_BLEND_FUNC_DST_RGB_SRC_COLOR                                         0x00000300
-#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_COLOR                               0x00000301
-#define   NV50TCL_BLEND_FUNC_DST_RGB_SRC_ALPHA                                         0x00000302
-#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_ALPHA                               0x00000303
-#define   NV50TCL_BLEND_FUNC_DST_RGB_DST_ALPHA                                         0x00000304
-#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_ALPHA                               0x00000305
-#define   NV50TCL_BLEND_FUNC_DST_RGB_DST_COLOR                                         0x00000306
-#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_COLOR                               0x00000307
-#define   NV50TCL_BLEND_FUNC_DST_RGB_SRC_ALPHA_SATURATE                                        0x00000308
-#define   NV50TCL_BLEND_FUNC_DST_RGB_CONSTANT_COLOR                                    0x00008001
-#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_COLOR                          0x00008002
-#define   NV50TCL_BLEND_FUNC_DST_RGB_CONSTANT_ALPHA                                    0x00008003
-#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_ALPHA                          0x00008004
+#define   NV50TCL_BLEND_FUNC_DST_RGB_ZERO                                              0x00004000
+#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE                                               0x00004001
+#define   NV50TCL_BLEND_FUNC_DST_RGB_SRC_COLOR                                         0x00004300
+#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_COLOR                               0x00004301
+#define   NV50TCL_BLEND_FUNC_DST_RGB_SRC_ALPHA                                         0x00004302
+#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_ALPHA                               0x00004303
+#define   NV50TCL_BLEND_FUNC_DST_RGB_DST_ALPHA                                         0x00004304
+#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_ALPHA                               0x00004305
+#define   NV50TCL_BLEND_FUNC_DST_RGB_DST_COLOR                                         0x00004306
+#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_COLOR                               0x00004307
+#define   NV50TCL_BLEND_FUNC_DST_RGB_SRC_ALPHA_SATURATE                                        0x00004308
+#define   NV50TCL_BLEND_FUNC_DST_RGB_CONSTANT_COLOR                                    0x0000c001
+#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_COLOR                          0x0000c002
+#define   NV50TCL_BLEND_FUNC_DST_RGB_CONSTANT_ALPHA                                    0x0000c003
+#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_ALPHA                          0x0000c004
+#define   NV50TCL_BLEND_FUNC_DST_RGB_SRC1_COLOR                                                0x0000c900
+#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC1_COLOR                              0x0000c901
+#define   NV50TCL_BLEND_FUNC_DST_RGB_SRC1_ALPHA                                                0x0000c902
+#define   NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC1_ALPHA                              0x0000c903
 #define  NV50TCL_BLEND_EQUATION_ALPHA                                                  0x0000134c
 #define   NV50TCL_BLEND_EQUATION_ALPHA_FUNC_ADD                                                0x00008006
 #define   NV50TCL_BLEND_EQUATION_ALPHA_MIN                                             0x00008007
@@ -899,37 +921,45 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV50TCL_BLEND_EQUATION_ALPHA_FUNC_SUBTRACT                                   0x0000800a
 #define   NV50TCL_BLEND_EQUATION_ALPHA_FUNC_REVERSE_SUBTRACT                           0x0000800b
 #define  NV50TCL_BLEND_FUNC_SRC_ALPHA                                                  0x00001350
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ZERO                                            0x00000000
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE                                             0x00000001
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_SRC_COLOR                                       0x00000300
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_COLOR                             0x00000301
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA                                       0x00000302
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_ALPHA                             0x00000303
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_DST_ALPHA                                       0x00000304
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_ALPHA                             0x00000305
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_DST_COLOR                                       0x00000306
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_COLOR                             0x00000307
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA_SATURATE                              0x00000308
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_CONSTANT_COLOR                                  0x00008001
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_COLOR                                0x00008002
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_CONSTANT_ALPHA                                  0x00008003
-#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_ALPHA                                0x00008004
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ZERO                                            0x00004000
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE                                             0x00004001
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_SRC_COLOR                                       0x00004300
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_COLOR                             0x00004301
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA                                       0x00004302
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_ALPHA                             0x00004303
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_DST_ALPHA                                       0x00004304
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_ALPHA                             0x00004305
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_DST_COLOR                                       0x00004306
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_COLOR                             0x00004307
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA_SATURATE                              0x00004308
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_CONSTANT_COLOR                                  0x0000c001
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_COLOR                                0x0000c002
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_CONSTANT_ALPHA                                  0x0000c003
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_ALPHA                                0x0000c004
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_SRC1_COLOR                                      0x0000c900
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC1_COLOR                            0x0000c901
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_SRC1_ALPHA                                      0x0000c902
+#define   NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC1_ALPHA                            0x0000c903
 #define  NV50TCL_BLEND_FUNC_DST_ALPHA                                                  0x00001358
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ZERO                                            0x00000000
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE                                             0x00000001
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_SRC_COLOR                                       0x00000300
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_COLOR                             0x00000301
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_SRC_ALPHA                                       0x00000302
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_ALPHA                             0x00000303
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_DST_ALPHA                                       0x00000304
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_ALPHA                             0x00000305
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_DST_COLOR                                       0x00000306
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_COLOR                             0x00000307
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_SRC_ALPHA_SATURATE                              0x00000308
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_CONSTANT_COLOR                                  0x00008001
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_COLOR                                0x00008002
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_CONSTANT_ALPHA                                  0x00008003
-#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_ALPHA                                0x00008004
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ZERO                                            0x00004000
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE                                             0x00004001
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_SRC_COLOR                                       0x00004300
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_COLOR                             0x00004301
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_SRC_ALPHA                                       0x00004302
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_ALPHA                             0x00004303
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_DST_ALPHA                                       0x00004304
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_ALPHA                             0x00004305
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_DST_COLOR                                       0x00004306
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_COLOR                             0x00004307
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_SRC_ALPHA_SATURATE                              0x00004308
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_CONSTANT_COLOR                                  0x0000c001
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_COLOR                                0x0000c002
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_CONSTANT_ALPHA                                  0x0000c003
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_ALPHA                                0x0000c004
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_SRC1_COLOR                                      0x0000c900
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC1_COLOR                            0x0000c901
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_SRC1_ALPHA                                      0x0000c902
+#define   NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC1_ALPHA                            0x0000c903
 #define  NV50TCL_BLEND_ENABLE(x)                                                       (0x00001360+((x)*4))
 #define  NV50TCL_BLEND_ENABLE__SIZE                                                    0x00000008
 #define  NV50TCL_STENCIL_FRONT_ENABLE                                                  0x00001380
@@ -988,6 +1018,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define  NV50TCL_FP_START_ID                                                           0x00001414
 #define  NV50TCL_GP_VERTEX_OUTPUT_COUNT                                                        0x00001420
 #define  NV50TCL_VB_ELEMENT_BASE                                                       0x00001434
+#define  NV50TCL_INSTANCE_BASE                                                         0x00001438
 #define  NV50TCL_CODE_CB_FLUSH                                                         0x00001440
 #define  NV50TCL_BIND_TSC(x)                                                           (0x00001444+((x)*8))
 #define  NV50TCL_BIND_TSC__SIZE                                                                0x00000003
@@ -1005,6 +1036,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV50TCL_BIND_TIC_TIC_MASK                                                    0x7ffffe00
 #define  NV50TCL_STRMOUT_MAP(x)                                                                (0x00001480+((x)*4))
 #define  NV50TCL_STRMOUT_MAP__SIZE                                                     0x00000020
+#define  NV50TCL_CLIPID_HEIGHT                                                         0x00001504
 #define  NV50TCL_VP_CLIP_DISTANCE_ENABLE                                               0x00001510
 #define   NV50TCL_VP_CLIP_DISTANCE_ENABLE_0                                            (1 <<  0)
 #define   NV50TCL_VP_CLIP_DISTANCE_ENABLE_1                                            (1 <<  1)
@@ -1089,7 +1121,14 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define  NV50TCL_GP_BUILTIN_RESULT_EN                                                  0x000015cc
 #define   NV50TCL_GP_BUILTIN_RESULT_EN_VPORT_IDX                                       (1 <<  0)
 #define   NV50TCL_GP_BUILTIN_RESULT_EN_LAYER_IDX                                       (1 << 16)
-#define  NV50TCL_MULTISAMPLE_SAMPLES_LOG2                                              0x000015d0
+#define  NV50TCL_MULTISAMPLE_MODE                                                      0x000015d0
+#define   NV50TCL_MULTISAMPLE_MODE_1X                                                  0x00000000
+#define   NV50TCL_MULTISAMPLE_MODE_2XMS                                                        0x00000001
+#define   NV50TCL_MULTISAMPLE_MODE_4XMS                                                        0x00000002
+#define   NV50TCL_MULTISAMPLE_MODE_8XMS                                                        0x00000004
+#define   NV50TCL_MULTISAMPLE_MODE_4XMS_4XCS                                           0x00000008
+#define   NV50TCL_MULTISAMPLE_MODE_4XMS_12XCS                                          0x00000009
+#define   NV50TCL_MULTISAMPLE_MODE_8XMS_8XCS                                           0x0000000a
 #define  NV50TCL_VERTEX_BEGIN                                                          0x000015dc
 #define   NV50TCL_VERTEX_BEGIN_POINTS                                                  0x00000000
 #define   NV50TCL_VERTEX_BEGIN_LINES                                                   0x00000001
@@ -1105,6 +1144,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV50TCL_VERTEX_BEGIN_LINE_STRIP_ADJACENCY                                    0x0000000b
 #define   NV50TCL_VERTEX_BEGIN_TRIANGLES_ADJACENCY                                     0x0000000c
 #define   NV50TCL_VERTEX_BEGIN_TRIANGLE_STRIP_ADJACENCY                                        0x0000000d
+#define   NV50TCL_VERTEX_BEGIN_PATCHES                                                 0x0000000e
 #define  NV50TCL_VERTEX_END                                                            0x000015e0
 #define  NV50TCL_EDGEFLAG_ENABLE                                                       0x000015e4
 #define  NV50TCL_VB_ELEMENT_U32                                                                0x000015e8
@@ -1118,6 +1158,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV50TCL_VB_ELEMENT_U16_I0_MASK                                               0x0000ffff
 #define   NV50TCL_VB_ELEMENT_U16_I1_SHIFT                                              16
 #define   NV50TCL_VB_ELEMENT_U16_I1_MASK                                               0xffff0000
+#define  NV50TCL_VERTEX_BASE_HIGH                                                      0x000015f4
+#define  NV50TCL_VERTEX_BASE_LOW                                                       0x000015f8
 #define  NV50TCL_VERTEX_DATA                                                           0x00001640
 #define  NV50TCL_PRIM_RESTART_ENABLE                                                   0x00001644
 #define  NV50TCL_PRIM_RESTART_INDEX                                                    0x00001648
@@ -1503,7 +1545,14 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define  NV50TCL_VIEWPORT_TRANSFORM_EN                                                 0x0000192c
 #define  NV50TCL_VIEW_VOLUME_CLIP_CTRL                                                 0x0000193c
 #define  NV50TCL_VIEWPORT_CLIP_RECTS_EN                                                        0x0000194c
+#define  NV50TCL_VIEWPORT_CLIP_MODE                                                    0x00001950
+#define   NV50TCL_VIEWPORT_CLIP_MODE_INCLUDE                                           0x00000000
+#define   NV50TCL_VIEWPORT_CLIP_MODE_EXCLUDE                                           0x00000001
+#define   NV50TCL_VIEWPORT_CLIP_MODE_UNKNOWN                                           0x00000002
 #define  NV50TCL_FP_CTRL_UNK196C                                                       0x0000196c
+#define  NV50TCL_CLIPID_ENABLE                                                         0x0000197c
+#define  NV50TCL_CLIPID_WIDTH                                                          0x00001980
+#define  NV50TCL_CLIPID_ID                                                             0x00001984
 #define  NV50TCL_FP_INTERPOLANT_CTRL                                                   0x00001988
 #define   NV50TCL_FP_INTERPOLANT_CTRL_UMASK_SHIFT                                      24
 #define   NV50TCL_FP_INTERPOLANT_CTRL_UMASK_MASK                                       0xff000000
@@ -1604,19 +1653,20 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define    NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_8_8                                      0x00c00000
 #define    NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_16                                       0x00d80000
 #define    NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_8                                                0x00e80000
+#define    NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_2_10_10_10                               0x01800000
 #define   NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SHIFT                                       25
-#define   NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_MASK                                                0x7e000000
-#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_FLOAT                                      0x7e000000
-#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_UNORM                                      0x24000000
-#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SNORM                                      0x12000000
-#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_USCALED                                    0x5a000000
-#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SSCALED                                    0x6c000000
-#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_UINT                                       0x48000000
-#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SINT                                       0x36000000
+#define   NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_MASK                                                0x0e000000
+#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_FLOAT                                      0x0e000000
+#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SNORM                                      0x02000000
+#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_UNORM                                      0x04000000
+#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_USCALED                                    0x0a000000
+#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SSCALED                                    0x0c000000
+#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_UINT                                       0x08000000
+#define    NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SINT                                       0x06000000
 #define   NV50TCL_VERTEX_ARRAY_ATTRIB_BGRA                                             (1 << 31)
 #define  NV50TCL_QUERY_ADDRESS_HIGH                                                    0x00001b00
 #define  NV50TCL_QUERY_ADDRESS_LOW                                                     0x00001b04
-#define  NV50TCL_QUERY_COUNTER                                                         0x00001b08
+#define  NV50TCL_QUERY_SEQUENCE                                                                0x00001b08
 #define  NV50TCL_QUERY_GET                                                             0x00001b0c