aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcin Koƛcielnicki2009-11-24 11:23:54 -0600
committerFrancisco Jerez2009-12-28 10:49:10 -0600
commit5fd00ddc9f35ac99c93a40d34a5d5019b91e8750 (patch)
tree718984c5b1de5a8c7f39843da3b8eb2ea587fee1 /nouveau
parentfdb33d56de3edf27f24c6db0e6beaed823f7bc38 (diff)
downloadlibdrm-5fd00ddc9f35ac99c93a40d34a5d5019b91e8750.tar.gz
libdrm-5fd00ddc9f35ac99c93a40d34a5d5019b91e8750.tar.xz
libdrm-5fd00ddc9f35ac99c93a40d34a5d5019b91e8750.zip
nouveau: Update nouveau_class.h with new renouveau.xml definitions.
Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Diffstat (limited to 'nouveau')
-rw-r--r--nouveau/nouveau_class.h1084
1 files changed, 768 insertions, 316 deletions
diff --git a/nouveau/nouveau_class.h b/nouveau/nouveau_class.h
index 0b8a6f01..4342d5f9 100644
--- a/nouveau/nouveau_class.h
+++ b/nouveau/nouveau_class.h
@@ -610,9 +610,9 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
610#define NV04_MEMORY_TO_MEMORY_FORMAT_LINE_COUNT 0x00000320 610#define NV04_MEMORY_TO_MEMORY_FORMAT_LINE_COUNT 0x00000320
611#define NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT 0x00000324 611#define NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT 0x00000324
612#define NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_INPUT_INC_SHIFT 0 612#define NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_INPUT_INC_SHIFT 0
613#define NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_INPUT_INC_MASK 0x0000000f 613#define NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_INPUT_INC_MASK 0x000000ff
614#define NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_OUTPUT_INC_SHIFT 8 614#define NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_OUTPUT_INC_SHIFT 8
615#define NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_OUTPUT_INC_MASK 0x00000f00 615#define NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_OUTPUT_INC_MASK 0x0000ff00
616#define NV04_MEMORY_TO_MEMORY_FORMAT_BUF_NOTIFY 0x00000328 616#define NV04_MEMORY_TO_MEMORY_FORMAT_BUF_NOTIFY 0x00000328
617 617
618 618
@@ -915,36 +915,36 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
915#define NV03_DX3_TEXTURED_TRIANGLE_ALPHA_CONTROL_ALPHA_REF_MASK 0x000000ff 915#define NV03_DX3_TEXTURED_TRIANGLE_ALPHA_CONTROL_ALPHA_REF_MASK 0x000000ff
916#define NV03_DX3_TEXTURED_TRIANGLE_ALPHA_CONTROL_ALPHA_FUNC_SHIFT 8 916#define NV03_DX3_TEXTURED_TRIANGLE_ALPHA_CONTROL_ALPHA_FUNC_SHIFT 8
917#define NV03_DX3_TEXTURED_TRIANGLE_ALPHA_CONTROL_ALPHA_FUNC_MASK 0xffffff00 917#define NV03_DX3_TEXTURED_TRIANGLE_ALPHA_CONTROL_ALPHA_FUNC_MASK 0xffffff00
918#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR(x) (0x00001000+((x)*32)) 918#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR(x) (0x00001000+((x)*32))
919#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR__SIZE 0x00000040 919#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR__SIZE 0x00000080
920#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I0_SHIFT 0 920#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I0_SHIFT 0
921#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I0_MASK 0x0000000f 921#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I0_MASK 0x0000000f
922#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I1_SHIFT 4 922#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I1_SHIFT 4
923#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I1_MASK 0x000000f0 923#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I1_MASK 0x000000f0
924#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I2_SHIFT 8 924#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I2_SHIFT 8
925#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I2_MASK 0x00000f00 925#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I2_MASK 0x00000f00
926#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I3_SHIFT 12 926#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I3_SHIFT 12
927#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I3_MASK 0x0000f000 927#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I3_MASK 0x0000f000
928#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I4_SHIFT 16 928#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I4_SHIFT 16
929#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I4_MASK 0x000f0000 929#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I4_MASK 0x000f0000
930#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I5_SHIFT 20 930#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I5_SHIFT 20
931#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I5_MASK 0x00f00000 931#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_I5_MASK 0x00f00000
932#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_FOG_SHIFT 24 932#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_FOG_SHIFT 24
933#define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_FOG_MASK 0xff000000 933#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_FOG_MASK 0xff000000
934#define NV03_DX3_TEXTURED_TRIANGLE_COLOR(x) (0x00001004+((x)*32)) 934#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_COLOR(x) (0x00001004+((x)*32))
935#define NV03_DX3_TEXTURED_TRIANGLE_COLOR__SIZE 0x00000040 935#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_COLOR__SIZE 0x00000080
936#define NV03_DX3_TEXTURED_TRIANGLE_X(x) (0x00001008+((x)*32)) 936#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SX(x) (0x00001008+((x)*32))
937#define NV03_DX3_TEXTURED_TRIANGLE_X__SIZE 0x00000040 937#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SX__SIZE 0x00000080
938#define NV03_DX3_TEXTURED_TRIANGLE_Y(x) (0x0000100c+((x)*32)) 938#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SY(x) (0x0000100c+((x)*32))
939#define NV03_DX3_TEXTURED_TRIANGLE_Y__SIZE 0x00000040 939#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SY__SIZE 0x00000080
940#define NV03_DX3_TEXTURED_TRIANGLE_Z(x) (0x00001010+((x)*32)) 940#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SZ(x) (0x00001010+((x)*32))
941#define NV03_DX3_TEXTURED_TRIANGLE_Z__SIZE 0x00000040 941#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_SZ__SIZE 0x00000080
942#define NV03_DX3_TEXTURED_TRIANGLE_M(x) (0x00001014+((x)*32)) 942#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_RHW(x) (0x00001014+((x)*32))
943#define NV03_DX3_TEXTURED_TRIANGLE_M__SIZE 0x00000040 943#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_RHW__SIZE 0x00000080
944#define NV03_DX3_TEXTURED_TRIANGLE_U(x) (0x00001018+((x)*32)) 944#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_TU(x) (0x00001018+((x)*32))
945#define NV03_DX3_TEXTURED_TRIANGLE_U__SIZE 0x00000040 945#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_TU__SIZE 0x00000080
946#define NV03_DX3_TEXTURED_TRIANGLE_V(x) (0x0000101c+((x)*32)) 946#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_TV(x) (0x0000101c+((x)*32))
947#define NV03_DX3_TEXTURED_TRIANGLE_V__SIZE 0x00000040 947#define NV03_DX3_TEXTURED_TRIANGLE_TLVERTEX_TV__SIZE 0x00000080
948 948
949 949
950#define NV04_GDI_RECTANGLE_TEXT 0x0000004a 950#define NV04_GDI_RECTANGLE_TEXT 0x0000004a
@@ -2525,7 +2525,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2525#define NV10TCL_ALPHA_FUNC_FUNC_EQUAL 0x00000202 2525#define NV10TCL_ALPHA_FUNC_FUNC_EQUAL 0x00000202
2526#define NV10TCL_ALPHA_FUNC_FUNC_LEQUAL 0x00000203 2526#define NV10TCL_ALPHA_FUNC_FUNC_LEQUAL 0x00000203
2527#define NV10TCL_ALPHA_FUNC_FUNC_GREATER 0x00000204 2527#define NV10TCL_ALPHA_FUNC_FUNC_GREATER 0x00000204
2528#define NV10TCL_ALPHA_FUNC_FUNC_GREATER 0x00000204
2529#define NV10TCL_ALPHA_FUNC_FUNC_NOTEQUAL 0x00000205 2528#define NV10TCL_ALPHA_FUNC_FUNC_NOTEQUAL 0x00000205
2530#define NV10TCL_ALPHA_FUNC_FUNC_GEQUAL 0x00000206 2529#define NV10TCL_ALPHA_FUNC_FUNC_GEQUAL 0x00000206
2531#define NV10TCL_ALPHA_FUNC_FUNC_ALWAYS 0x00000207 2530#define NV10TCL_ALPHA_FUNC_FUNC_ALWAYS 0x00000207
@@ -2583,7 +2582,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2583#define NV10TCL_DEPTH_FUNC_EQUAL 0x00000202 2582#define NV10TCL_DEPTH_FUNC_EQUAL 0x00000202
2584#define NV10TCL_DEPTH_FUNC_LEQUAL 0x00000203 2583#define NV10TCL_DEPTH_FUNC_LEQUAL 0x00000203
2585#define NV10TCL_DEPTH_FUNC_GREATER 0x00000204 2584#define NV10TCL_DEPTH_FUNC_GREATER 0x00000204
2586#define NV10TCL_DEPTH_FUNC_GREATER 0x00000204
2587#define NV10TCL_DEPTH_FUNC_NOTEQUAL 0x00000205 2585#define NV10TCL_DEPTH_FUNC_NOTEQUAL 0x00000205
2588#define NV10TCL_DEPTH_FUNC_GEQUAL 0x00000206 2586#define NV10TCL_DEPTH_FUNC_GEQUAL 0x00000206
2589#define NV10TCL_DEPTH_FUNC_ALWAYS 0x00000207 2587#define NV10TCL_DEPTH_FUNC_ALWAYS 0x00000207
@@ -2600,7 +2598,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2600#define NV10TCL_STENCIL_FUNC_FUNC_EQUAL 0x00000202 2598#define NV10TCL_STENCIL_FUNC_FUNC_EQUAL 0x00000202
2601#define NV10TCL_STENCIL_FUNC_FUNC_LEQUAL 0x00000203 2599#define NV10TCL_STENCIL_FUNC_FUNC_LEQUAL 0x00000203
2602#define NV10TCL_STENCIL_FUNC_FUNC_GREATER 0x00000204 2600#define NV10TCL_STENCIL_FUNC_FUNC_GREATER 0x00000204
2603#define NV10TCL_STENCIL_FUNC_FUNC_GREATER 0x00000204
2604#define NV10TCL_STENCIL_FUNC_FUNC_NOTEQUAL 0x00000205 2601#define NV10TCL_STENCIL_FUNC_FUNC_NOTEQUAL 0x00000205
2605#define NV10TCL_STENCIL_FUNC_FUNC_GEQUAL 0x00000206 2602#define NV10TCL_STENCIL_FUNC_FUNC_GEQUAL 0x00000206
2606#define NV10TCL_STENCIL_FUNC_FUNC_ALWAYS 0x00000207 2603#define NV10TCL_STENCIL_FUNC_FUNC_ALWAYS 0x00000207
@@ -3749,7 +3746,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
3749#define NV20TCL_ALPHA_FUNC_FUNC_EQUAL 0x00000202 3746#define NV20TCL_ALPHA_FUNC_FUNC_EQUAL 0x00000202
3750#define NV20TCL_ALPHA_FUNC_FUNC_LEQUAL 0x00000203 3747#define NV20TCL_ALPHA_FUNC_FUNC_LEQUAL 0x00000203
3751#define NV20TCL_ALPHA_FUNC_FUNC_GREATER 0x00000204 3748#define NV20TCL_ALPHA_FUNC_FUNC_GREATER 0x00000204
3752#define NV20TCL_ALPHA_FUNC_FUNC_GREATER 0x00000204
3753#define NV20TCL_ALPHA_FUNC_FUNC_NOTEQUAL 0x00000205 3749#define NV20TCL_ALPHA_FUNC_FUNC_NOTEQUAL 0x00000205
3754#define NV20TCL_ALPHA_FUNC_FUNC_GEQUAL 0x00000206 3750#define NV20TCL_ALPHA_FUNC_FUNC_GEQUAL 0x00000206
3755#define NV20TCL_ALPHA_FUNC_FUNC_ALWAYS 0x00000207 3751#define NV20TCL_ALPHA_FUNC_FUNC_ALWAYS 0x00000207
@@ -3807,7 +3803,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
3807#define NV20TCL_DEPTH_FUNC_EQUAL 0x00000202 3803#define NV20TCL_DEPTH_FUNC_EQUAL 0x00000202
3808#define NV20TCL_DEPTH_FUNC_LEQUAL 0x00000203 3804#define NV20TCL_DEPTH_FUNC_LEQUAL 0x00000203
3809#define NV20TCL_DEPTH_FUNC_GREATER 0x00000204 3805#define NV20TCL_DEPTH_FUNC_GREATER 0x00000204
3810#define NV20TCL_DEPTH_FUNC_GREATER 0x00000204
3811#define NV20TCL_DEPTH_FUNC_NOTEQUAL 0x00000205 3806#define NV20TCL_DEPTH_FUNC_NOTEQUAL 0x00000205
3812#define NV20TCL_DEPTH_FUNC_GEQUAL 0x00000206 3807#define NV20TCL_DEPTH_FUNC_GEQUAL 0x00000206
3813#define NV20TCL_DEPTH_FUNC_ALWAYS 0x00000207 3808#define NV20TCL_DEPTH_FUNC_ALWAYS 0x00000207
@@ -3824,7 +3819,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
3824#define NV20TCL_STENCIL_FUNC_FUNC_EQUAL 0x00000202 3819#define NV20TCL_STENCIL_FUNC_FUNC_EQUAL 0x00000202
3825#define NV20TCL_STENCIL_FUNC_FUNC_LEQUAL 0x00000203 3820#define NV20TCL_STENCIL_FUNC_FUNC_LEQUAL 0x00000203
3826#define NV20TCL_STENCIL_FUNC_FUNC_GREATER 0x00000204 3821#define NV20TCL_STENCIL_FUNC_FUNC_GREATER 0x00000204
3827#define NV20TCL_STENCIL_FUNC_FUNC_GREATER 0x00000204
3828#define NV20TCL_STENCIL_FUNC_FUNC_NOTEQUAL 0x00000205 3822#define NV20TCL_STENCIL_FUNC_FUNC_NOTEQUAL 0x00000205
3829#define NV20TCL_STENCIL_FUNC_FUNC_GEQUAL 0x00000206 3823#define NV20TCL_STENCIL_FUNC_FUNC_GEQUAL 0x00000206
3830#define NV20TCL_STENCIL_FUNC_FUNC_ALWAYS 0x00000207 3824#define NV20TCL_STENCIL_FUNC_FUNC_ALWAYS 0x00000207
@@ -4997,7 +4991,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
4997#define NV34TCL_ALPHA_FUNC_FUNC_EQUAL 0x00000202 4991#define NV34TCL_ALPHA_FUNC_FUNC_EQUAL 0x00000202
4998#define NV34TCL_ALPHA_FUNC_FUNC_LEQUAL 0x00000203 4992#define NV34TCL_ALPHA_FUNC_FUNC_LEQUAL 0x00000203
4999#define NV34TCL_ALPHA_FUNC_FUNC_GREATER 0x00000204 4993#define NV34TCL_ALPHA_FUNC_FUNC_GREATER 0x00000204
5000#define NV34TCL_ALPHA_FUNC_FUNC_GREATER 0x00000204
5001#define NV34TCL_ALPHA_FUNC_FUNC_NOTEQUAL 0x00000205 4994#define NV34TCL_ALPHA_FUNC_FUNC_NOTEQUAL 0x00000205
5002#define NV34TCL_ALPHA_FUNC_FUNC_GEQUAL 0x00000206 4995#define NV34TCL_ALPHA_FUNC_FUNC_GEQUAL 0x00000206
5003#define NV34TCL_ALPHA_FUNC_FUNC_ALWAYS 0x00000207 4996#define NV34TCL_ALPHA_FUNC_FUNC_ALWAYS 0x00000207
@@ -5105,7 +5098,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
5105#define NV34TCL_STENCIL_BACK_FUNC_FUNC_EQUAL 0x00000202 5098#define NV34TCL_STENCIL_BACK_FUNC_FUNC_EQUAL 0x00000202
5106#define NV34TCL_STENCIL_BACK_FUNC_FUNC_LEQUAL 0x00000203 5099#define NV34TCL_STENCIL_BACK_FUNC_FUNC_LEQUAL 0x00000203
5107#define NV34TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204 5100#define NV34TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
5108#define NV34TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
5109#define NV34TCL_STENCIL_BACK_FUNC_FUNC_NOTEQUAL 0x00000205 5101#define NV34TCL_STENCIL_BACK_FUNC_FUNC_NOTEQUAL 0x00000205
5110#define NV34TCL_STENCIL_BACK_FUNC_FUNC_GEQUAL 0x00000206 5102#define NV34TCL_STENCIL_BACK_FUNC_FUNC_GEQUAL 0x00000206
5111#define NV34TCL_STENCIL_BACK_FUNC_FUNC_ALWAYS 0x00000207 5103#define NV34TCL_STENCIL_BACK_FUNC_FUNC_ALWAYS 0x00000207
@@ -5146,7 +5138,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
5146#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_EQUAL 0x00000202 5138#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_EQUAL 0x00000202
5147#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_LEQUAL 0x00000203 5139#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_LEQUAL 0x00000203
5148#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204 5140#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
5149#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
5150#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL 0x00000205 5141#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL 0x00000205
5151#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_GEQUAL 0x00000206 5142#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_GEQUAL 0x00000206
5152#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_ALWAYS 0x00000207 5143#define NV34TCL_STENCIL_FRONT_FUNC_FUNC_ALWAYS 0x00000207
@@ -5952,7 +5943,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
5952#define NV34TCL_DEPTH_FUNC_EQUAL 0x00000202 5943#define NV34TCL_DEPTH_FUNC_EQUAL 0x00000202
5953#define NV34TCL_DEPTH_FUNC_LEQUAL 0x00000203 5944#define NV34TCL_DEPTH_FUNC_LEQUAL 0x00000203
5954#define NV34TCL_DEPTH_FUNC_GREATER 0x00000204 5945#define NV34TCL_DEPTH_FUNC_GREATER 0x00000204
5955#define NV34TCL_DEPTH_FUNC_GREATER 0x00000204
5956#define NV34TCL_DEPTH_FUNC_NOTEQUAL 0x00000205 5946#define NV34TCL_DEPTH_FUNC_NOTEQUAL 0x00000205
5957#define NV34TCL_DEPTH_FUNC_GEQUAL 0x00000206 5947#define NV34TCL_DEPTH_FUNC_GEQUAL 0x00000206
5958#define NV34TCL_DEPTH_FUNC_ALWAYS 0x00000207 5948#define NV34TCL_DEPTH_FUNC_ALWAYS 0x00000207
@@ -6613,7 +6603,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
6613#define NV40TCL_ALPHA_TEST_FUNC_EQUAL 0x00000202 6603#define NV40TCL_ALPHA_TEST_FUNC_EQUAL 0x00000202
6614#define NV40TCL_ALPHA_TEST_FUNC_LEQUAL 0x00000203 6604#define NV40TCL_ALPHA_TEST_FUNC_LEQUAL 0x00000203
6615#define NV40TCL_ALPHA_TEST_FUNC_GREATER 0x00000204 6605#define NV40TCL_ALPHA_TEST_FUNC_GREATER 0x00000204
6616#define NV40TCL_ALPHA_TEST_FUNC_GREATER 0x00000204
6617#define NV40TCL_ALPHA_TEST_FUNC_NOTEQUAL 0x00000205 6606#define NV40TCL_ALPHA_TEST_FUNC_NOTEQUAL 0x00000205
6618#define NV40TCL_ALPHA_TEST_FUNC_GEQUAL 0x00000206 6607#define NV40TCL_ALPHA_TEST_FUNC_GEQUAL 0x00000206
6619#define NV40TCL_ALPHA_TEST_FUNC_ALWAYS 0x00000207 6608#define NV40TCL_ALPHA_TEST_FUNC_ALWAYS 0x00000207
@@ -6730,7 +6719,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
6730#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_EQUAL 0x00000202 6719#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_EQUAL 0x00000202
6731#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_LEQUAL 0x00000203 6720#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_LEQUAL 0x00000203
6732#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204 6721#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
6733#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
6734#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL 0x00000205 6722#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL 0x00000205
6735#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_GEQUAL 0x00000206 6723#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_GEQUAL 0x00000206
6736#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_ALWAYS 0x00000207 6724#define NV40TCL_STENCIL_FRONT_FUNC_FUNC_ALWAYS 0x00000207
@@ -6771,7 +6759,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
6771#define NV40TCL_STENCIL_BACK_FUNC_FUNC_EQUAL 0x00000202 6759#define NV40TCL_STENCIL_BACK_FUNC_FUNC_EQUAL 0x00000202
6772#define NV40TCL_STENCIL_BACK_FUNC_FUNC_LEQUAL 0x00000203 6760#define NV40TCL_STENCIL_BACK_FUNC_FUNC_LEQUAL 0x00000203
6773#define NV40TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204 6761#define NV40TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
6774#define NV40TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
6775#define NV40TCL_STENCIL_BACK_FUNC_FUNC_NOTEQUAL 0x00000205 6762#define NV40TCL_STENCIL_BACK_FUNC_FUNC_NOTEQUAL 0x00000205
6776#define NV40TCL_STENCIL_BACK_FUNC_FUNC_GEQUAL 0x00000206 6763#define NV40TCL_STENCIL_BACK_FUNC_FUNC_GEQUAL 0x00000206
6777#define NV40TCL_STENCIL_BACK_FUNC_FUNC_ALWAYS 0x00000207 6764#define NV40TCL_STENCIL_BACK_FUNC_FUNC_ALWAYS 0x00000207
@@ -6894,7 +6881,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
6894#define NV40TCL_DEPTH_FUNC_EQUAL 0x00000202 6881#define NV40TCL_DEPTH_FUNC_EQUAL 0x00000202
6895#define NV40TCL_DEPTH_FUNC_LEQUAL 0x00000203 6882#define NV40TCL_DEPTH_FUNC_LEQUAL 0x00000203
6896#define NV40TCL_DEPTH_FUNC_GREATER 0x00000204 6883#define NV40TCL_DEPTH_FUNC_GREATER 0x00000204
6897#define NV40TCL_DEPTH_FUNC_GREATER 0x00000204
6898#define NV40TCL_DEPTH_FUNC_NOTEQUAL 0x00000205 6884#define NV40TCL_DEPTH_FUNC_NOTEQUAL 0x00000205
6899#define NV40TCL_DEPTH_FUNC_GEQUAL 0x00000206 6885#define NV40TCL_DEPTH_FUNC_GEQUAL 0x00000206
6900#define NV40TCL_DEPTH_FUNC_ALWAYS 0x00000207 6886#define NV40TCL_DEPTH_FUNC_ALWAYS 0x00000207
@@ -7312,41 +7298,65 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7312#define NV50_2D_NOP 0x00000100 7298#define NV50_2D_NOP 0x00000100
7313#define NV50_2D_NOTIFY 0x00000104 7299#define NV50_2D_NOTIFY 0x00000104
7314#define NV50_2D_DMA_NOTIFY 0x00000180 7300#define NV50_2D_DMA_NOTIFY 0x00000180
7315#define NV50_2D_DMA_IN_MEMORY0 0x00000184 7301#define NV50_2D_DMA_DST 0x00000184
7316#define NV50_2D_DMA_IN_MEMORY1 0x00000188 7302#define NV50_2D_DMA_SRC 0x00000188
7317#define NV50_2D_DMA_IN_MEMORY2 0x0000018c 7303#define NV50_2D_DMA_COND 0x0000018c
7318#define NV50_2D_DST_FORMAT 0x00000200 7304#define NV50_2D_DST_FORMAT 0x00000200
7319#define NV50_2D_DST_FORMAT_R32G32B32A32_FLOAT 0x000000c0 7305#define NV50_2D_DST_FORMAT_R32G32B32A32_FLOAT 0x000000c0
7320#define NV50_2D_DST_FORMAT_R32G32B32_FLOAT 0x000000c3 7306#define NV50_2D_DST_FORMAT_R32G32B32A32_SINT 0x000000c1
7307#define NV50_2D_DST_FORMAT_R32G32B32A32_UINT 0x000000c2
7308#define NV50_2D_DST_FORMAT_R32G32B32X32_FLOAT 0x000000c3
7321#define NV50_2D_DST_FORMAT_R16G16B16A16_UNORM 0x000000c6 7309#define NV50_2D_DST_FORMAT_R16G16B16A16_UNORM 0x000000c6
7322#define NV50_2D_DST_FORMAT_R16G16B16A16_SNORM 0x000000c7 7310#define NV50_2D_DST_FORMAT_R16G16B16A16_SNORM 0x000000c7
7311#define NV50_2D_DST_FORMAT_R16G16B16A16_SINT 0x000000c8
7312#define NV50_2D_DST_FORMAT_R16G16B16A16_UINT 0x000000c9
7323#define NV50_2D_DST_FORMAT_R16G16B16A16_FLOAT 0x000000ca 7313#define NV50_2D_DST_FORMAT_R16G16B16A16_FLOAT 0x000000ca
7324#define NV50_2D_DST_FORMAT_R32G32_FLOAT 0x000000cb 7314#define NV50_2D_DST_FORMAT_R32G32_FLOAT 0x000000cb
7315#define NV50_2D_DST_FORMAT_R32G32_SINT 0x000000cc
7316#define NV50_2D_DST_FORMAT_R32G32_UINT 0x000000cd
7325#define NV50_2D_DST_FORMAT_R16G16B16X16_FLOAT 0x000000ce 7317#define NV50_2D_DST_FORMAT_R16G16B16X16_FLOAT 0x000000ce
7326#define NV50_2D_DST_FORMAT_A8R8G8B8_UNORM 0x000000cf 7318#define NV50_2D_DST_FORMAT_A8R8G8B8_UNORM 0x000000cf
7319#define NV50_2D_DST_FORMAT_A8R8G8B8_SRGB 0x000000d0
7327#define NV50_2D_DST_FORMAT_A2B10G10R10_UNORM 0x000000d1 7320#define NV50_2D_DST_FORMAT_A2B10G10R10_UNORM 0x000000d1
7328#define NV50_2D_DST_FORMAT_A8B8G8R8_UNORM 0x000000d6 7321#define NV50_2D_DST_FORMAT_A2B10G10R10_UINT 0x000000d2
7322#define NV50_2D_DST_FORMAT_A8B8G8R8_UNORM 0x000000d5
7323#define NV50_2D_DST_FORMAT_A8B8G8R8_SRGB 0x000000d6
7329#define NV50_2D_DST_FORMAT_A8B8G8R8_SNORM 0x000000d7 7324#define NV50_2D_DST_FORMAT_A8B8G8R8_SNORM 0x000000d7
7325#define NV50_2D_DST_FORMAT_A8B8G8R8_SINT 0x000000d8
7326#define NV50_2D_DST_FORMAT_A8B8G8R8_UINT 0x000000d9
7330#define NV50_2D_DST_FORMAT_R16G16_UNORM 0x000000da 7327#define NV50_2D_DST_FORMAT_R16G16_UNORM 0x000000da
7331#define NV50_2D_DST_FORMAT_R16G16_SNORM 0x000000db 7328#define NV50_2D_DST_FORMAT_R16G16_SNORM 0x000000db
7329#define NV50_2D_DST_FORMAT_R16G16_SINT 0x000000dc
7330#define NV50_2D_DST_FORMAT_R16G16_UINT 0x000000dd
7332#define NV50_2D_DST_FORMAT_R16G16_FLOAT 0x000000de 7331#define NV50_2D_DST_FORMAT_R16G16_FLOAT 0x000000de
7333#define NV50_2D_DST_FORMAT_A2R10G10B10_UNORM 0x000000df 7332#define NV50_2D_DST_FORMAT_A2R10G10B10_UNORM 0x000000df
7334#define NV50_2D_DST_FORMAT_B10G11R11_FLOAT 0x000000e0 7333#define NV50_2D_DST_FORMAT_B10G11R11_FLOAT 0x000000e0
7335#define NV50_2D_DST_FORMAT_R32_FLOAT 0x000000e5 7334#define NV50_2D_DST_FORMAT_R32_FLOAT 0x000000e5
7336#define NV50_2D_DST_FORMAT_X8R8G8B8_UNORM 0x000000e6 7335#define NV50_2D_DST_FORMAT_X8R8G8B8_UNORM 0x000000e6
7336#define NV50_2D_DST_FORMAT_X8R8G8B8_SRGB 0x000000e7
7337#define NV50_2D_DST_FORMAT_R5G6B5_UNORM 0x000000e8 7337#define NV50_2D_DST_FORMAT_R5G6B5_UNORM 0x000000e8
7338#define NV50_2D_DST_FORMAT_R16_FLOAT 0x000000e9 7338#define NV50_2D_DST_FORMAT_A1R5G5B5_UNORM 0x000000e9
7339#define NV50_2D_DST_FORMAT_R8G8_UNORM 0x000000ea 7339#define NV50_2D_DST_FORMAT_R8G8_UNORM 0x000000ea
7340#define NV50_2D_DST_FORMAT_R8G8_SNORM 0x000000eb 7340#define NV50_2D_DST_FORMAT_R8G8_SNORM 0x000000eb
7341#define NV50_2D_DST_FORMAT_R8G8_SINT 0x000000ec
7342#define NV50_2D_DST_FORMAT_R8G8_UINT 0x000000ed
7341#define NV50_2D_DST_FORMAT_R16_UNORM 0x000000ee 7343#define NV50_2D_DST_FORMAT_R16_UNORM 0x000000ee
7342#define NV50_2D_DST_FORMAT_R16_SNORM 0x000000ef 7344#define NV50_2D_DST_FORMAT_R16_SNORM 0x000000ef
7345#define NV50_2D_DST_FORMAT_R16_SINT 0x000000f0
7346#define NV50_2D_DST_FORMAT_R16_UINT 0x000000f1
7347#define NV50_2D_DST_FORMAT_R16_FLOAT 0x000000f2
7343#define NV50_2D_DST_FORMAT_R8_UNORM 0x000000f3 7348#define NV50_2D_DST_FORMAT_R8_UNORM 0x000000f3
7344#define NV50_2D_DST_FORMAT_R32_BOOLEAN 0x000000f6 7349#define NV50_2D_DST_FORMAT_R8_SNORM 0x000000f4
7350#define NV50_2D_DST_FORMAT_R8_SINT 0x000000f5
7351#define NV50_2D_DST_FORMAT_R8_UINT 0x000000f6
7345#define NV50_2D_DST_FORMAT_A8_UNORM 0x000000f7 7352#define NV50_2D_DST_FORMAT_A8_UNORM 0x000000f7
7346#define NV50_2D_DST_FORMAT_X1B5G5R5_UNORM 0x000000f8 7353#define NV50_2D_DST_FORMAT_X1R5G5B5_UNORM 0x000000f8
7347#define NV50_2D_DST_FORMAT_X8B8G8R8_UNORM 0x000000f9 7354#define NV50_2D_DST_FORMAT_X8B8G8R8_UNORM 0x000000f9
7355#define NV50_2D_DST_FORMAT_X8B8G8R8_SRGB 0x000000fa
7348#define NV50_2D_DST_LINEAR 0x00000204 7356#define NV50_2D_DST_LINEAR 0x00000204
7349#define NV50_2D_DST_TILE_MODE 0x00000208 7357#define NV50_2D_DST_TILE_MODE 0x00000208
7358#define NV50_2D_DST_DEPTH 0x0000020c
7359#define NV50_2D_DST_LAYER 0x00000210
7350#define NV50_2D_DST_PITCH 0x00000214 7360#define NV50_2D_DST_PITCH 0x00000214
7351#define NV50_2D_DST_WIDTH 0x00000218 7361#define NV50_2D_DST_WIDTH 0x00000218
7352#define NV50_2D_DST_HEIGHT 0x0000021c 7362#define NV50_2D_DST_HEIGHT 0x0000021c
@@ -7354,45 +7364,88 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7354#define NV50_2D_DST_ADDRESS_LOW 0x00000224 7364#define NV50_2D_DST_ADDRESS_LOW 0x00000224
7355#define NV50_2D_SRC_FORMAT 0x00000230 7365#define NV50_2D_SRC_FORMAT 0x00000230
7356#define NV50_2D_SRC_FORMAT_R32G32B32A32_FLOAT 0x000000c0 7366#define NV50_2D_SRC_FORMAT_R32G32B32A32_FLOAT 0x000000c0
7357#define NV50_2D_SRC_FORMAT_R32G32B32_FLOAT 0x000000c3 7367#define NV50_2D_SRC_FORMAT_R32G32B32A32_SINT 0x000000c1
7368#define NV50_2D_SRC_FORMAT_R32G32B32A32_UINT 0x000000c2
7369#define NV50_2D_SRC_FORMAT_R32G32B32X32_FLOAT 0x000000c3
7358#define NV50_2D_SRC_FORMAT_R16G16B16A16_UNORM 0x000000c6 7370#define NV50_2D_SRC_FORMAT_R16G16B16A16_UNORM 0x000000c6
7359#define NV50_2D_SRC_FORMAT_R16G16B16A16_SNORM 0x000000c7 7371#define NV50_2D_SRC_FORMAT_R16G16B16A16_SNORM 0x000000c7
7372#define NV50_2D_SRC_FORMAT_R16G16B16A16_SINT 0x000000c8
7373#define NV50_2D_SRC_FORMAT_R16G16B16A16_UINT 0x000000c9
7360#define NV50_2D_SRC_FORMAT_R16G16B16A16_FLOAT 0x000000ca 7374#define NV50_2D_SRC_FORMAT_R16G16B16A16_FLOAT 0x000000ca
7361#define NV50_2D_SRC_FORMAT_R32G32_FLOAT 0x000000cb 7375#define NV50_2D_SRC_FORMAT_R32G32_FLOAT 0x000000cb
7376#define NV50_2D_SRC_FORMAT_R32G32_SINT 0x000000cc
7377#define NV50_2D_SRC_FORMAT_R32G32_UINT 0x000000cd
7362#define NV50_2D_SRC_FORMAT_R16G16B16X16_FLOAT 0x000000ce 7378#define NV50_2D_SRC_FORMAT_R16G16B16X16_FLOAT 0x000000ce
7363#define NV50_2D_SRC_FORMAT_A8R8G8B8_UNORM 0x000000cf 7379#define NV50_2D_SRC_FORMAT_A8R8G8B8_UNORM 0x000000cf
7380#define NV50_2D_SRC_FORMAT_A8R8G8B8_SRGB 0x000000d0
7364#define NV50_2D_SRC_FORMAT_A2B10G10R10_UNORM 0x000000d1 7381#define NV50_2D_SRC_FORMAT_A2B10G10R10_UNORM 0x000000d1
7365#define NV50_2D_SRC_FORMAT_A8B8G8R8_UNORM 0x000000d6 7382#define NV50_2D_SRC_FORMAT_A2B10G10R10_UINT 0x000000d2
7383#define NV50_2D_SRC_FORMAT_A8B8G8R8_UNORM 0x000000d5
7384#define NV50_2D_SRC_FORMAT_A8B8G8R8_SRGB 0x000000d6
7366#define NV50_2D_SRC_FORMAT_A8B8G8R8_SNORM 0x000000d7 7385#define NV50_2D_SRC_FORMAT_A8B8G8R8_SNORM 0x000000d7
7386#define NV50_2D_SRC_FORMAT_A8B8G8R8_SINT 0x000000d8
7387#define NV50_2D_SRC_FORMAT_A8B8G8R8_UINT 0x000000d9
7367#define NV50_2D_SRC_FORMAT_R16G16_UNORM 0x000000da 7388#define NV50_2D_SRC_FORMAT_R16G16_UNORM 0x000000da
7368#define NV50_2D_SRC_FORMAT_R16G16_SNORM 0x000000db 7389#define NV50_2D_SRC_FORMAT_R16G16_SNORM 0x000000db
7390#define NV50_2D_SRC_FORMAT_R16G16_SINT 0x000000dc
7391#define NV50_2D_SRC_FORMAT_R16G16_UINT 0x000000dd
7369#define NV50_2D_SRC_FORMAT_R16G16_FLOAT 0x000000de 7392#define NV50_2D_SRC_FORMAT_R16G16_FLOAT 0x000000de
7370#define NV50_2D_SRC_FORMAT_A2R10G10B10_UNORM 0x000000df 7393#define NV50_2D_SRC_FORMAT_A2R10G10B10_UNORM 0x000000df
7371#define NV50_2D_SRC_FORMAT_B10G11R11_FLOAT 0x000000e0 7394#define NV50_2D_SRC_FORMAT_B10G11R11_FLOAT 0x000000e0
7372#define NV50_2D_SRC_FORMAT_R32_FLOAT 0x000000e5 7395#define NV50_2D_SRC_FORMAT_R32_FLOAT 0x000000e5
7373#define NV50_2D_SRC_FORMAT_X8R8G8B8_UNORM 0x000000e6 7396#define NV50_2D_SRC_FORMAT_X8R8G8B8_UNORM 0x000000e6
7397#define NV50_2D_SRC_FORMAT_X8R8G8B8_SRGB 0x000000e7
7374#define NV50_2D_SRC_FORMAT_R5G6B5_UNORM 0x000000e8 7398#define NV50_2D_SRC_FORMAT_R5G6B5_UNORM 0x000000e8
7375#define NV50_2D_SRC_FORMAT_R16_FLOAT 0x000000e9 7399#define NV50_2D_SRC_FORMAT_A1R5G5B5_UNORM 0x000000e9
7376#define NV50_2D_SRC_FORMAT_R8G8_UNORM 0x000000ea 7400#define NV50_2D_SRC_FORMAT_R8G8_UNORM 0x000000ea
7377#define NV50_2D_SRC_FORMAT_R8G8_SNORM 0x000000eb 7401#define NV50_2D_SRC_FORMAT_R8G8_SNORM 0x000000eb
7402#define NV50_2D_SRC_FORMAT_R8G8_SINT 0x000000ec
7403#define NV50_2D_SRC_FORMAT_R8G8_UINT 0x000000ed
7378#define NV50_2D_SRC_FORMAT_R16_UNORM 0x000000ee 7404#define NV50_2D_SRC_FORMAT_R16_UNORM 0x000000ee
7379#define NV50_2D_SRC_FORMAT_R16_SNORM 0x000000ef 7405#define NV50_2D_SRC_FORMAT_R16_SNORM 0x000000ef
7406#define NV50_2D_SRC_FORMAT_R16_SINT 0x000000f0
7407#define NV50_2D_SRC_FORMAT_R16_UINT 0x000000f1
7408#define NV50_2D_SRC_FORMAT_R16_FLOAT 0x000000f2
7380#define NV50_2D_SRC_FORMAT_R8_UNORM 0x000000f3 7409#define NV50_2D_SRC_FORMAT_R8_UNORM 0x000000f3
7381#define NV50_2D_SRC_FORMAT_R32_BOOLEAN 0x000000f6 7410#define NV50_2D_SRC_FORMAT_R8_SNORM 0x000000f4
7411#define NV50_2D_SRC_FORMAT_R8_SINT 0x000000f5
7412#define NV50_2D_SRC_FORMAT_R8_UINT 0x000000f6
7382#define NV50_2D_SRC_FORMAT_A8_UNORM 0x000000f7 7413#define NV50_2D_SRC_FORMAT_A8_UNORM 0x000000f7
7383#define NV50_2D_SRC_FORMAT_X1B5G5R5_UNORM 0x000000f8 7414#define NV50_2D_SRC_FORMAT_X1R5G5B5_UNORM 0x000000f8
7384#define NV50_2D_SRC_FORMAT_X8B8G8R8_UNORM 0x000000f9 7415#define NV50_2D_SRC_FORMAT_X8B8G8R8_UNORM 0x000000f9
7416#define NV50_2D_SRC_FORMAT_X8B8G8R8_SRGB 0x000000fa
7385#define NV50_2D_SRC_LINEAR 0x00000234 7417#define NV50_2D_SRC_LINEAR 0x00000234
7386#define NV50_2D_SRC_TILE_MODE 0x00000238 7418#define NV50_2D_SRC_TILE_MODE 0x00000238
7419#define NV50_2D_SRC_DEPTH 0x0000023c
7420#define NV50_2D_SRC_LAYER 0x00000240
7387#define NV50_2D_SRC_PITCH 0x00000244 7421#define NV50_2D_SRC_PITCH 0x00000244
7388#define NV50_2D_SRC_WIDTH 0x00000248 7422#define NV50_2D_SRC_WIDTH 0x00000248
7389#define NV50_2D_SRC_HEIGHT 0x0000024c 7423#define NV50_2D_SRC_HEIGHT 0x0000024c
7390#define NV50_2D_SRC_ADDRESS_HIGH 0x00000250 7424#define NV50_2D_SRC_ADDRESS_HIGH 0x00000250
7391#define NV50_2D_SRC_ADDRESS_LOW 0x00000254 7425#define NV50_2D_SRC_ADDRESS_LOW 0x00000254
7426#define NV50_2D_COND_ADDRESS_HIGH 0x00000264
7427#define NV50_2D_COND_ADDRESS_LOW 0x00000268
7428#define NV50_2D_COND_MODE 0x0000026c
7429#define NV50_2D_COND_MODE_NEVER 0x00000000
7430#define NV50_2D_COND_MODE_ALWAYS 0x00000001
7431#define NV50_2D_COND_MODE_RES 0x00000002
7432#define NV50_2D_COND_MODE_NOT_RES_AND_NOT_ID 0x00000003
7433#define NV50_2D_COND_MODE_RES_OR_ID 0x00000004
7392#define NV50_2D_CLIP_X 0x00000280 7434#define NV50_2D_CLIP_X 0x00000280
7393#define NV50_2D_CLIP_Y 0x00000284 7435#define NV50_2D_CLIP_Y 0x00000284
7394#define NV50_2D_CLIP_Z 0x00000288 7436#define NV50_2D_CLIP_W 0x00000288
7395#define NV50_2D_CLIP_W 0x0000028c 7437#define NV50_2D_CLIP_H 0x0000028c
7438#define NV50_2D_CLIP_ENABLE 0x00000290
7439#define NV50_2D_COLOR_KEY_FORMAT 0x00000294
7440#define NV50_2D_COLOR_KEY_FORMAT_16BPP 0x00000000
7441#define NV50_2D_COLOR_KEY_FORMAT_15BPP 0x00000001
7442#define NV50_2D_COLOR_KEY_FORMAT_24BPP 0x00000002
7443#define NV50_2D_COLOR_KEY_FORMAT_30BPP 0x00000003
7444#define NV50_2D_COLOR_KEY_FORMAT_8BPP 0x00000004
7445#define NV50_2D_COLOR_KEY_FORMAT_16BPP2 0x00000005
7446#define NV50_2D_COLOR_KEY_FORMAT_32BPP 0x00000006
7447#define NV50_2D_COLOR_KEY 0x00000298
7448#define NV50_2D_COLOR_KEY_ENABLE 0x0000029c
7396#define NV50_2D_ROP 0x000002a0 7449#define NV50_2D_ROP 0x000002a0
7397#define NV50_2D_OPERATION 0x000002ac 7450#define NV50_2D_OPERATION 0x000002ac
7398#define NV50_2D_OPERATION_SRCCOPY_AND 0x00000000 7451#define NV50_2D_OPERATION_SRCCOPY_AND 0x00000000
@@ -7410,89 +7463,159 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7410#define NV50_2D_PATTERN_COLOR__SIZE 0x00000002 7463#define NV50_2D_PATTERN_COLOR__SIZE 0x00000002
7411#define NV50_2D_PATTERN_BITMAP(x) (0x000002f8+((x)*4)) 7464#define NV50_2D_PATTERN_BITMAP(x) (0x000002f8+((x)*4))
7412#define NV50_2D_PATTERN_BITMAP__SIZE 0x00000002 7465#define NV50_2D_PATTERN_BITMAP__SIZE 0x00000002
7413#define NV50_2D_RECT_FORMAT 0x00000584 7466#define NV50_2D_DRAW_SHAPE 0x00000580
7414#define NV50_2D_RECT_FORMAT_R32G32B32A32_FLOAT 0x000000c0 7467#define NV50_2D_DRAW_SHAPE_POINTS 0x00000000
7415#define NV50_2D_RECT_FORMAT_R32G32B32_FLOAT 0x000000c3 7468#define NV50_2D_DRAW_SHAPE_LINES 0x00000001
7416#define NV50_2D_RECT_FORMAT_R16G16B16A16_UNORM 0x000000c6 7469#define NV50_2D_DRAW_SHAPE_LINE_STRIP 0x00000002
7417#define NV50_2D_RECT_FORMAT_R16G16B16A16_SNORM 0x000000c7 7470#define NV50_2D_DRAW_SHAPE_TRIANGLES 0x00000003
7418#define NV50_2D_RECT_FORMAT_R16G16B16A16_FLOAT 0x000000ca 7471#define NV50_2D_DRAW_SHAPE_RECTANGLES 0x00000004
7419#define NV50_2D_RECT_FORMAT_R32G32_FLOAT 0x000000cb 7472#define NV50_2D_DRAW_COLOR_FORMAT 0x00000584
7420#define NV50_2D_RECT_FORMAT_R16G16B16X16_FLOAT 0x000000ce 7473#define NV50_2D_DRAW_COLOR_FORMAT_R32G32B32A32_FLOAT 0x000000c0
7421#define NV50_2D_RECT_FORMAT_A8R8G8B8_UNORM 0x000000cf 7474#define NV50_2D_DRAW_COLOR_FORMAT_R32G32B32A32_SINT 0x000000c1
7422#define NV50_2D_RECT_FORMAT_A2B10G10R10_UNORM 0x000000d1 7475#define NV50_2D_DRAW_COLOR_FORMAT_R32G32B32A32_UINT 0x000000c2
7423#define NV50_2D_RECT_FORMAT_A8B8G8R8_UNORM 0x000000d6 7476#define NV50_2D_DRAW_COLOR_FORMAT_R32G32B32X32_FLOAT 0x000000c3
7424#define NV50_2D_RECT_FORMAT_A8B8G8R8_SNORM 0x000000d7 7477#define NV50_2D_DRAW_COLOR_FORMAT_R16G16B16A16_UNORM 0x000000c6
7425#define NV50_2D_RECT_FORMAT_R16G16_UNORM 0x000000da 7478#define NV50_2D_DRAW_COLOR_FORMAT_R16G16B16A16_SNORM 0x000000c7
7426#define NV50_2D_RECT_FORMAT_R16G16_SNORM 0x000000db 7479#define NV50_2D_DRAW_COLOR_FORMAT_R16G16B16A16_SINT 0x000000c8
7427#define NV50_2D_RECT_FORMAT_R16G16_FLOAT 0x000000de 7480#define NV50_2D_DRAW_COLOR_FORMAT_R16G16B16A16_UINT 0x000000c9
7428#define NV50_2D_RECT_FORMAT_A2R10G10B10_UNORM 0x000000df 7481#define NV50_2D_DRAW_COLOR_FORMAT_R16G16B16A16_FLOAT 0x000000ca
7429#define NV50_2D_RECT_FORMAT_B10G11R11_FLOAT 0x000000e0 7482#define NV50_2D_DRAW_COLOR_FORMAT_R32G32_FLOAT 0x000000cb
7430#define NV50_2D_RECT_FORMAT_R32_FLOAT 0x000000e5 7483#define NV50_2D_DRAW_COLOR_FORMAT_R32G32_SINT 0x000000cc
7431#define NV50_2D_RECT_FORMAT_X8R8G8B8_UNORM 0x000000e6 7484#define NV50_2D_DRAW_COLOR_FORMAT_R32G32_UINT 0x000000cd
7432#define NV50_2D_RECT_FORMAT_R5G6B5_UNORM 0x000000e8 7485#define NV50_2D_DRAW_COLOR_FORMAT_R16G16B16X16_FLOAT 0x000000ce
7433#define NV50_2D_RECT_FORMAT_R16_FLOAT 0x000000e9 7486#define NV50_2D_DRAW_COLOR_FORMAT_A8R8G8B8_UNORM 0x000000cf
7434#define NV50_2D_RECT_FORMAT_R8G8_UNORM 0x000000ea 7487#define NV50_2D_DRAW_COLOR_FORMAT_A8R8G8B8_SRGB 0x000000d0
7435#define NV50_2D_RECT_FORMAT_R8G8_SNORM 0x000000eb 7488#define NV50_2D_DRAW_COLOR_FORMAT_A2B10G10R10_UNORM 0x000000d1
7436#define NV50_2D_RECT_FORMAT_R16_UNORM 0x000000ee 7489#define NV50_2D_DRAW_COLOR_FORMAT_A2B10G10R10_UINT 0x000000d2
7437#define NV50_2D_RECT_FORMAT_R16_SNORM 0x000000ef 7490#define NV50_2D_DRAW_COLOR_FORMAT_A8B8G8R8_UNORM 0x000000d5
7438#define NV50_2D_RECT_FORMAT_R8_UNORM 0x000000f3 7491#define NV50_2D_DRAW_COLOR_FORMAT_A8B8G8R8_SRGB 0x000000d6
7439#define NV50_2D_RECT_FORMAT_R32_BOOLEAN 0x000000f6 7492#define NV50_2D_DRAW_COLOR_FORMAT_A8B8G8R8_SNORM 0x000000d7
7440#define NV50_2D_RECT_FORMAT_A8_UNORM 0x000000f7 7493#define NV50_2D_DRAW_COLOR_FORMAT_A8B8G8R8_SINT 0x000000d8
7441#define NV50_2D_RECT_FORMAT_X1B5G5R5_UNORM 0x000000f8 7494#define NV50_2D_DRAW_COLOR_FORMAT_A8B8G8R8_UINT 0x000000d9
7442#define NV50_2D_RECT_FORMAT_X8B8G8R8_UNORM 0x000000f9 7495#define NV50_2D_DRAW_COLOR_FORMAT_R16G16_UNORM 0x000000da
7443#define NV50_2D_RECT_COLOR 0x00000588 7496#define NV50_2D_DRAW_COLOR_FORMAT_R16G16_SNORM 0x000000db
7444#define NV50_2D_RECT_X1 0x00000600 7497#define NV50_2D_DRAW_COLOR_FORMAT_R16G16_SINT 0x000000dc
7445#define NV50_2D_RECT_Y1 0x00000604 7498#define NV50_2D_DRAW_COLOR_FORMAT_R16G16_UINT 0x000000dd
7446#define NV50_2D_RECT_X2 0x00000608 7499#define NV50_2D_DRAW_COLOR_FORMAT_R16G16_FLOAT 0x000000de
7447#define NV50_2D_RECT_Y2 0x0000060c 7500#define NV50_2D_DRAW_COLOR_FORMAT_A2R10G10B10_UNORM 0x000000df
7448#define NV50_2D_SIFC_UNK0800 0x00000800 7501#define NV50_2D_DRAW_COLOR_FORMAT_B10G11R11_FLOAT 0x000000e0
7502#define NV50_2D_DRAW_COLOR_FORMAT_R32_FLOAT 0x000000e5
7503#define NV50_2D_DRAW_COLOR_FORMAT_X8R8G8B8_UNORM 0x000000e6
7504#define NV50_2D_DRAW_COLOR_FORMAT_X8R8G8B8_SRGB 0x000000e7
7505#define NV50_2D_DRAW_COLOR_FORMAT_R5G6B5_UNORM 0x000000e8
7506#define NV50_2D_DRAW_COLOR_FORMAT_A1R5G5B5_UNORM 0x000000e9
7507#define NV50_2D_DRAW_COLOR_FORMAT_R8G8_UNORM 0x000000ea
7508#define NV50_2D_DRAW_COLOR_FORMAT_R8G8_SNORM 0x000000eb
7509#define NV50_2D_DRAW_COLOR_FORMAT_R8G8_SINT 0x000000ec
7510#define NV50_2D_DRAW_COLOR_FORMAT_R8G8_UINT 0x000000ed
7511#define NV50_2D_DRAW_COLOR_FORMAT_R16_UNORM 0x000000ee
7512#define NV50_2D_DRAW_COLOR_FORMAT_R16_SNORM 0x000000ef
7513#define NV50_2D_DRAW_COLOR_FORMAT_R16_SINT 0x000000f0
7514#define NV50_2D_DRAW_COLOR_FORMAT_R16_UINT 0x000000f1
7515#define NV50_2D_DRAW_COLOR_FORMAT_R16_FLOAT 0x000000f2
7516#define NV50_2D_DRAW_COLOR_FORMAT_R8_UNORM 0x000000f3
7517#define NV50_2D_DRAW_COLOR_FORMAT_R8_SNORM 0x000000f4
7518#define NV50_2D_DRAW_COLOR_FORMAT_R8_SINT 0x000000f5
7519#define NV50_2D_DRAW_COLOR_FORMAT_R8_UINT 0x000000f6
7520#define NV50_2D_DRAW_COLOR_FORMAT_A8_UNORM 0x000000f7
7521#define NV50_2D_DRAW_COLOR_FORMAT_X1R5G5B5_UNORM 0x000000f8
7522#define NV50_2D_DRAW_COLOR_FORMAT_X8B8G8R8_UNORM 0x000000f9
7523#define NV50_2D_DRAW_COLOR_FORMAT_X8B8G8R8_SRGB 0x000000fa
7524#define NV50_2D_DRAW_COLOR 0x00000588
7525#define NV50_2D_DRAW_POINT16 0x000005e0
7526#define NV50_2D_DRAW_POINT16_X_SHIFT 0
7527#define NV50_2D_DRAW_POINT16_X_MASK 0x0000ffff
7528#define NV50_2D_DRAW_POINT16_Y_SHIFT 16
7529#define NV50_2D_DRAW_POINT16_Y_MASK 0xffff0000
7530#define NV50_2D_DRAW_POINT32_X(x) (0x00000600+((x)*8))
7531#define NV50_2D_DRAW_POINT32_X__SIZE 0x00000040
7532#define NV50_2D_DRAW_POINT32_Y(x) (0x00000604+((x)*8))
7533#define NV50_2D_DRAW_POINT32_Y__SIZE 0x00000040
7534#define NV50_2D_SIFC_BITMAP_ENABLE 0x00000800
7449#define NV50_2D_SIFC_FORMAT 0x00000804 7535#define NV50_2D_SIFC_FORMAT 0x00000804
7450#define NV50_2D_SIFC_FORMAT_R32G32B32A32_FLOAT 0x000000c0 7536#define NV50_2D_SIFC_FORMAT_R32G32B32A32_FLOAT 0x000000c0
7451#define NV50_2D_SIFC_FORMAT_R32G32B32_FLOAT 0x000000c3 7537#define NV50_2D_SIFC_FORMAT_R32G32B32A32_SINT 0x000000c1
7538#define NV50_2D_SIFC_FORMAT_R32G32B32A32_UINT 0x000000c2
7539#define NV50_2D_SIFC_FORMAT_R32G32B32X32_FLOAT 0x000000c3
7452#define NV50_2D_SIFC_FORMAT_R16G16B16A16_UNORM 0x000000c6 7540#define NV50_2D_SIFC_FORMAT_R16G16B16A16_UNORM 0x000000c6
7453#define NV50_2D_SIFC_FORMAT_R16G16B16A16_SNORM 0x000000c7 7541#define NV50_2D_SIFC_FORMAT_R16G16B16A16_SNORM 0x000000c7
7542#define NV50_2D_SIFC_FORMAT_R16G16B16A16_SINT 0x000000c8
7543#define NV50_2D_SIFC_FORMAT_R16G16B16A16_UINT 0x000000c9
7454#define NV50_2D_SIFC_FORMAT_R16G16B16A16_FLOAT 0x000000ca 7544#define NV50_2D_SIFC_FORMAT_R16G16B16A16_FLOAT 0x000000ca
7455#define NV50_2D_SIFC_FORMAT_R32G32_FLOAT 0x000000cb 7545#define NV50_2D_SIFC_FORMAT_R32G32_FLOAT 0x000000cb
7546#define NV50_2D_SIFC_FORMAT_R32G32_SINT 0x000000cc
7547#define NV50_2D_SIFC_FORMAT_R32G32_UINT 0x000000cd
7456#define NV50_2D_SIFC_FORMAT_R16G16B16X16_FLOAT 0x000000ce 7548#define NV50_2D_SIFC_FORMAT_R16G16B16X16_FLOAT 0x000000ce
7457#define NV50_2D_SIFC_FORMAT_A8R8G8B8_UNORM 0x000000cf 7549#define NV50_2D_SIFC_FORMAT_A8R8G8B8_UNORM 0x000000cf
7550#define NV50_2D_SIFC_FORMAT_A8R8G8B8_SRGB 0x000000d0
7458#define NV50_2D_SIFC_FORMAT_A2B10G10R10_UNORM 0x000000d1 7551#define NV50_2D_SIFC_FORMAT_A2B10G10R10_UNORM 0x000000d1
7459#define NV50_2D_SIFC_FORMAT_A8B8G8R8_UNORM 0x000000d6 7552#define NV50_2D_SIFC_FORMAT_A2B10G10R10_UINT 0x000000d2
7553#define NV50_2D_SIFC_FORMAT_A8B8G8R8_UNORM 0x000000d5
7554#define NV50_2D_SIFC_FORMAT_A8B8G8R8_SRGB 0x000000d6
7460#define NV50_2D_SIFC_FORMAT_A8B8G8R8_SNORM 0x000000d7 7555#define NV50_2D_SIFC_FORMAT_A8B8G8R8_SNORM 0x000000d7
7556#define NV50_2D_SIFC_FORMAT_A8B8G8R8_SINT 0x000000d8
7557#define NV50_2D_SIFC_FORMAT_A8B8G8R8_UINT 0x000000d9
7461#define NV50_2D_SIFC_FORMAT_R16G16_UNORM 0x000000da 7558#define NV50_2D_SIFC_FORMAT_R16G16_UNORM 0x000000da
7462#define NV50_2D_SIFC_FORMAT_R16G16_SNORM 0x000000db 7559#define NV50_2D_SIFC_FORMAT_R16G16_SNORM 0x000000db
7560#define NV50_2D_SIFC_FORMAT_R16G16_SINT 0x000000dc
7561#define NV50_2D_SIFC_FORMAT_R16G16_UINT 0x000000dd
7463#define NV50_2D_SIFC_FORMAT_R16G16_FLOAT 0x000000de 7562#define NV50_2D_SIFC_FORMAT_R16G16_FLOAT 0x000000de
7464#define NV50_2D_SIFC_FORMAT_A2R10G10B10_UNORM 0x000000df 7563#define NV50_2D_SIFC_FORMAT_A2R10G10B10_UNORM 0x000000df
7465#define NV50_2D_SIFC_FORMAT_B10G11R11_FLOAT 0x000000e0 7564#define NV50_2D_SIFC_FORMAT_B10G11R11_FLOAT 0x000000e0
7466#define NV50_2D_SIFC_FORMAT_R32_FLOAT 0x000000e5 7565#define NV50_2D_SIFC_FORMAT_R32_FLOAT 0x000000e5
7467#define NV50_2D_SIFC_FORMAT_X8R8G8B8_UNORM 0x000000e6 7566#define NV50_2D_SIFC_FORMAT_X8R8G8B8_UNORM 0x000000e6
7567#define NV50_2D_SIFC_FORMAT_X8R8G8B8_SRGB 0x000000e7
7468#define NV50_2D_SIFC_FORMAT_R5G6B5_UNORM 0x000000e8 7568#define NV50_2D_SIFC_FORMAT_R5G6B5_UNORM 0x000000e8
7469#define NV50_2D_SIFC_FORMAT_R16_FLOAT 0x000000e9 7569#define NV50_2D_SIFC_FORMAT_A1R5G5B5_UNORM 0x000000e9
7470#define NV50_2D_SIFC_FORMAT_R8G8_UNORM 0x000000ea 7570#define NV50_2D_SIFC_FORMAT_R8G8_UNORM 0x000000ea
7471#define NV50_2D_SIFC_FORMAT_R8G8_SNORM 0x000000eb 7571#define NV50_2D_SIFC_FORMAT_R8G8_SNORM 0x000000eb
7572#define NV50_2D_SIFC_FORMAT_R8G8_SINT 0x000000ec
7573#define NV50_2D_SIFC_FORMAT_R8G8_UINT 0x000000ed
7472#define NV50_2D_SIFC_FORMAT_R16_UNORM 0x000000ee 7574#define NV50_2D_SIFC_FORMAT_R16_UNORM 0x000000ee
7473#define NV50_2D_SIFC_FORMAT_R16_SNORM 0x000000ef 7575#define NV50_2D_SIFC_FORMAT_R16_SNORM 0x000000ef
7576#define NV50_2D_SIFC_FORMAT_R16_SINT 0x000000f0
7577#define NV50_2D_SIFC_FORMAT_R16_UINT 0x000000f1
7578#define NV50_2D_SIFC_FORMAT_R16_FLOAT 0x000000f2
7474#define NV50_2D_SIFC_FORMAT_R8_UNORM 0x000000f3 7579#define NV50_2D_SIFC_FORMAT_R8_UNORM 0x000000f3
7475#define NV50_2D_SIFC_FORMAT_R32_BOOLEAN 0x000000f6 7580#define NV50_2D_SIFC_FORMAT_R8_SNORM 0x000000f4
7581#define NV50_2D_SIFC_FORMAT_R8_SINT 0x000000f5
7582#define NV50_2D_SIFC_FORMAT_R8_UINT 0x000000f6
7476#define NV50_2D_SIFC_FORMAT_A8_UNORM 0x000000f7 7583#define NV50_2D_SIFC_FORMAT_A8_UNORM 0x000000f7
7477#define NV50_2D_SIFC_FORMAT_X1B5G5R5_UNORM 0x000000f8 7584#define NV50_2D_SIFC_FORMAT_X1R5G5B5_UNORM 0x000000f8
7478#define NV50_2D_SIFC_FORMAT_X8B8G8R8_UNORM 0x000000f9 7585#define NV50_2D_SIFC_FORMAT_X8B8G8R8_UNORM 0x000000f9
7586#define NV50_2D_SIFC_FORMAT_X8B8G8R8_SRGB 0x000000fa
7587#define NV50_2D_SIFC_BITMAP_UNK808 0x00000808
7588#define NV50_2D_SIFC_BITMAP_LSB_FIRST 0x0000080c
7589#define NV50_2D_SIFC_BITMAP_LINE_PACK_MODE 0x00000810
7590#define NV50_2D_SIFC_BITMAP_LINE_PACK_MODE_PACKED 0x00000000
7591#define NV50_2D_SIFC_BITMAP_LINE_PACK_MODE_ALIGN_BYTE 0x00000001
7592#define NV50_2D_SIFC_BITMAP_LINE_PACK_MODE_ALIGN_WORD 0x00000002
7593#define NV50_2D_SIFC_BITMAP_COLOR_BIT0 0x00000814
7594#define NV50_2D_SIFC_BITMAP_COLOR_BIT1 0x00000818
7595#define NV50_2D_SIFC_BITMAP_WRITE_BIT0_ENABLE 0x0000081c
7479#define NV50_2D_SIFC_WIDTH 0x00000838 7596#define NV50_2D_SIFC_WIDTH 0x00000838
7480#define NV50_2D_SIFC_HEIGHT 0x0000083c 7597#define NV50_2D_SIFC_HEIGHT 0x0000083c
7481#define NV50_2D_SIFC_SCALE_UNK0840 0x00000840 7598#define NV50_2D_SIFC_DX_DU_FRACT 0x00000840
7482#define NV50_2D_SIFC_SCALE_UNK0844 0x00000844 7599#define NV50_2D_SIFC_DX_DU_INT 0x00000844
7483#define NV50_2D_SIFC_SCALE_UNK0848 0x00000848 7600#define NV50_2D_SIFC_DY_DV_FRACT 0x00000848
7484#define NV50_2D_SIFC_SCALE_UNK084C 0x0000084c 7601#define NV50_2D_SIFC_DY_DV_INT 0x0000084c
7485#define NV50_2D_SIFC_UNK0850 0x00000850 7602#define NV50_2D_SIFC_DST_X_FRACT 0x00000850
7486#define NV50_2D_SIFC_DST_X 0x00000854 7603#define NV50_2D_SIFC_DST_X_INT 0x00000854
7487#define NV50_2D_SIFC_UNK0858 0x00000858 7604#define NV50_2D_SIFC_DST_Y_FRACT 0x00000858
7488#define NV50_2D_SIFC_DST_Y 0x0000085c 7605#define NV50_2D_SIFC_DST_Y_INT 0x0000085c
7489#define NV50_2D_SIFC_DATA 0x00000860 7606#define NV50_2D_SIFC_DATA 0x00000860
7490#define NV50_2D_BLIT_DST_X 0x000008b0 7607#define NV50_2D_BLIT_DST_X 0x000008b0
7491#define NV50_2D_BLIT_DST_Y 0x000008b4 7608#define NV50_2D_BLIT_DST_Y 0x000008b4
7492#define NV50_2D_BLIT_DST_W 0x000008b8 7609#define NV50_2D_BLIT_DST_W 0x000008b8
7493#define NV50_2D_BLIT_DST_H 0x000008bc 7610#define NV50_2D_BLIT_DST_H 0x000008bc
7494#define NV50_2D_BLIT_SRC_X 0x000008d4 7611#define NV50_2D_BLIT_DU_DX_FRACT 0x000008c0
7495#define NV50_2D_BLIT_SRC_Y 0x000008dc 7612#define NV50_2D_BLIT_DU_DX_INT 0x000008c4
7613#define NV50_2D_BLIT_DV_DY_FRACT 0x000008c8
7614#define NV50_2D_BLIT_DV_DY_INT 0x000008cc
7615#define NV50_2D_BLIT_SRC_X_FRACT 0x000008d0
7616#define NV50_2D_BLIT_SRC_X_INT 0x000008d4
7617#define NV50_2D_BLIT_SRC_Y_FRACT 0x000008d8
7618#define NV50_2D_BLIT_SRC_Y_INT 0x000008dc
7496 7619
7497 7620
7498#define NV50_MEMORY_TO_MEMORY_FORMAT 0x00005039 7621#define NV50_MEMORY_TO_MEMORY_FORMAT 0x00005039
@@ -7501,20 +7624,26 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7501#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_MODE_IN 0x00000204 7624#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_MODE_IN 0x00000204
7502#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_PITCH_IN 0x00000208 7625#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_PITCH_IN 0x00000208
7503#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_HEIGHT_IN 0x0000020c 7626#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_HEIGHT_IN 0x0000020c
7627#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_DEPTH_IN 0x00000210
7628#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_IN_Z 0x00000214
7504#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_IN 0x00000218 7629#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_IN 0x00000218
7630#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_IN_X_SHIFT 0
7631#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_IN_X_MASK 0x0000ffff
7632#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_IN_Y_SHIFT 16
7633#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_IN_Y_MASK 0xffff0000
7505#define NV50_MEMORY_TO_MEMORY_FORMAT_LINEAR_OUT 0x0000021c 7634#define NV50_MEMORY_TO_MEMORY_FORMAT_LINEAR_OUT 0x0000021c
7506#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_MODE_OUT 0x00000220 7635#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_MODE_OUT 0x00000220
7507#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_PITCH_OUT 0x00000224 7636#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_PITCH_OUT 0x00000224
7508#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_HEIGHT_OUT 0x00000228 7637#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_HEIGHT_OUT 0x00000228
7638#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_DEPTH_OUT 0x0000022c
7639#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_OUT_Z 0x00000230
7509#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_OUT 0x00000234 7640#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_OUT 0x00000234
7641#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_OUT_X_SHIFT 0
7642#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_OUT_X_MASK 0x0000ffff
7643#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_OUT_Y_SHIFT 16
7644#define NV50_MEMORY_TO_MEMORY_FORMAT_TILING_POSITION_OUT_Y_MASK 0xffff0000
7510#define NV50_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN_HIGH 0x00000238 7645#define NV50_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN_HIGH 0x00000238
7511#define NV50_MEMORY_TO_MEMORY_FORMAT_OFFSET_OUT_HIGH 0x0000023c 7646#define NV50_MEMORY_TO_MEMORY_FORMAT_OFFSET_OUT_HIGH 0x0000023c
7512#define NV50_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN 0x0000030c
7513#define NV50_MEMORY_TO_MEMORY_FORMAT_OFFSET_OUT 0x00000310
7514#define NV50_MEMORY_TO_MEMORY_FORMAT_PITCH_IN 0x00000314
7515#define NV50_MEMORY_TO_MEMORY_FORMAT_PITCH_OUT 0x00000318
7516#define NV50_MEMORY_TO_MEMORY_FORMAT_LINE_LENGTH_IN 0x0000031c
7517#define NV50_MEMORY_TO_MEMORY_FORMAT_LINE_COUNT 0x00000320
7518 7647
7519 7648
7520#define NV50TCL 0x00005097 7649#define NV50TCL 0x00005097
@@ -7522,10 +7651,19 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7522#define NV50TCL_NOP 0x00000100 7651#define NV50TCL_NOP 0x00000100
7523#define NV50TCL_NOTIFY 0x00000104 7652#define NV50TCL_NOTIFY 0x00000104
7524#define NV50TCL_DMA_NOTIFY 0x00000180 7653#define NV50TCL_DMA_NOTIFY 0x00000180
7525#define NV50TCL_DMA_UNK0(x) (0x00000184+((x)*4)) 7654#define NV50TCL_DMA_ZETA 0x00000184
7526#define NV50TCL_DMA_UNK0__SIZE 0x0000000b 7655#define NV50TCL_DMA_QUERY 0x00000188
7527#define NV50TCL_DMA_UNK1(x) (0x000001c0+((x)*4)) 7656#define NV50TCL_DMA_VTXBUF0 0x0000018c
7528#define NV50TCL_DMA_UNK1__SIZE 0x00000008 7657#define NV50TCL_DMA_LOCAL 0x00000190
7658#define NV50TCL_DMA_STACK 0x00000194
7659#define NV50TCL_DMA_CODE_CB 0x00000198
7660#define NV50TCL_DMA_TSC 0x0000019c
7661#define NV50TCL_DMA_TIC 0x000001a0
7662#define NV50TCL_DMA_TEXTURE 0x000001a4
7663#define NV50TCL_DMA_STRMOUT 0x000001a8
7664#define NV50TCL_DMA_UNK01AC 0x000001ac
7665#define NV50TCL_DMA_COLOR(x) (0x000001c0+((x)*4))
7666#define NV50TCL_DMA_COLOR__SIZE 0x00000008
7529#define NV50TCL_RT_ADDRESS_HIGH(x) (0x00000200+((x)*32)) 7667#define NV50TCL_RT_ADDRESS_HIGH(x) (0x00000200+((x)*32))
7530#define NV50TCL_RT_ADDRESS_HIGH__SIZE 0x00000008 7668#define NV50TCL_RT_ADDRESS_HIGH__SIZE 0x00000008
7531#define NV50TCL_RT_ADDRESS_LOW(x) (0x00000204+((x)*32)) 7669#define NV50TCL_RT_ADDRESS_LOW(x) (0x00000204+((x)*32))
@@ -7533,40 +7671,68 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7533#define NV50TCL_RT_FORMAT(x) (0x00000208+((x)*32)) 7671#define NV50TCL_RT_FORMAT(x) (0x00000208+((x)*32))
7534#define NV50TCL_RT_FORMAT__SIZE 0x00000008 7672#define NV50TCL_RT_FORMAT__SIZE 0x00000008
7535#define NV50TCL_RT_FORMAT_R32G32B32A32_FLOAT 0x000000c0 7673#define NV50TCL_RT_FORMAT_R32G32B32A32_FLOAT 0x000000c0
7536#define NV50TCL_RT_FORMAT_R32G32B32_FLOAT 0x000000c3 7674#define NV50TCL_RT_FORMAT_R32G32B32A32_SINT 0x000000c1
7675#define NV50TCL_RT_FORMAT_R32G32B32A32_UINT 0x000000c2
7676#define NV50TCL_RT_FORMAT_R32G32B32X32_FLOAT 0x000000c3
7537#define NV50TCL_RT_FORMAT_R16G16B16A16_UNORM 0x000000c6 7677#define NV50TCL_RT_FORMAT_R16G16B16A16_UNORM 0x000000c6
7538#define NV50TCL_RT_FORMAT_R16G16B16A16_SNORM 0x000000c7 7678#define NV50TCL_RT_FORMAT_R16G16B16A16_SNORM 0x000000c7
7679#define NV50TCL_RT_FORMAT_R16G16B16A16_SINT 0x000000c8
7680#define NV50TCL_RT_FORMAT_R16G16B16A16_UINT 0x000000c9
7539#define NV50TCL_RT_FORMAT_R16G16B16A16_FLOAT 0x000000ca 7681#define NV50TCL_RT_FORMAT_R16G16B16A16_FLOAT 0x000000ca
7540#define NV50TCL_RT_FORMAT_R32G32_FLOAT 0x000000cb 7682#define NV50TCL_RT_FORMAT_R32G32_FLOAT 0x000000cb
7683#define NV50TCL_RT_FORMAT_R32G32_SINT 0x000000cc
7684#define NV50TCL_RT_FORMAT_R32G32_UINT 0x000000cd
7541#define NV50TCL_RT_FORMAT_R16G16B16X16_FLOAT 0x000000ce 7685#define NV50TCL_RT_FORMAT_R16G16B16X16_FLOAT 0x000000ce
7542#define NV50TCL_RT_FORMAT_A8R8G8B8_UNORM 0x000000cf 7686#define NV50TCL_RT_FORMAT_A8R8G8B8_UNORM 0x000000cf
7687#define NV50TCL_RT_FORMAT_A8R8G8B8_SRGB 0x000000d0
7543#define NV50TCL_RT_FORMAT_A2B10G10R10_UNORM 0x000000d1 7688#define NV50TCL_RT_FORMAT_A2B10G10R10_UNORM 0x000000d1
7544#define NV50TCL_RT_FORMAT_A8B8G8R8_UNORM 0x000000d6 7689#define NV50TCL_RT_FORMAT_A2B10G10R10_UINT 0x000000d2
7690#define NV50TCL_RT_FORMAT_A8B8G8R8_UNORM 0x000000d5
7691#define NV50TCL_RT_FORMAT_A8B8G8R8_SRGB 0x000000d6
7545#define NV50TCL_RT_FORMAT_A8B8G8R8_SNORM 0x000000d7 7692#define NV50TCL_RT_FORMAT_A8B8G8R8_SNORM 0x000000d7
7693#define NV50TCL_RT_FORMAT_A8B8G8R8_SINT 0x000000d8
7694#define NV50TCL_RT_FORMAT_A8B8G8R8_UINT 0x000000d9
7546#define NV50TCL_RT_FORMAT_R16G16_UNORM 0x000000da 7695#define NV50TCL_RT_FORMAT_R16G16_UNORM 0x000000da
7547#define NV50TCL_RT_FORMAT_R16G16_SNORM 0x000000db 7696#define NV50TCL_RT_FORMAT_R16G16_SNORM 0x000000db
7697#define NV50TCL_RT_FORMAT_R16G16_SINT 0x000000dc
7698#define NV50TCL_RT_FORMAT_R16G16_UINT 0x000000dd
7548#define NV50TCL_RT_FORMAT_R16G16_FLOAT 0x000000de 7699#define NV50TCL_RT_FORMAT_R16G16_FLOAT 0x000000de
7549#define NV50TCL_RT_FORMAT_A2R10G10B10_UNORM 0x000000df 7700#define NV50TCL_RT_FORMAT_A2R10G10B10_UNORM 0x000000df
7550#define NV50TCL_RT_FORMAT_B10G11R11_FLOAT 0x000000e0 7701#define NV50TCL_RT_FORMAT_B10G11R11_FLOAT 0x000000e0
7551#define NV50TCL_RT_FORMAT_R32_FLOAT 0x000000e5 7702#define NV50TCL_RT_FORMAT_R32_FLOAT 0x000000e5
7552#define NV50TCL_RT_FORMAT_X8R8G8B8_UNORM 0x000000e6 7703#define NV50TCL_RT_FORMAT_X8R8G8B8_UNORM 0x000000e6
7704#define NV50TCL_RT_FORMAT_X8R8G8B8_SRGB 0x000000e7
7553#define NV50TCL_RT_FORMAT_R5G6B5_UNORM 0x000000e8 7705#define NV50TCL_RT_FORMAT_R5G6B5_UNORM 0x000000e8
7554#define NV50TCL_RT_FORMAT_R16_FLOAT 0x000000e9 7706#define NV50TCL_RT_FORMAT_A1R5G5B5_UNORM 0x000000e9
7555#define NV50TCL_RT_FORMAT_R8G8_UNORM 0x000000ea 7707#define NV50TCL_RT_FORMAT_R8G8_UNORM 0x000000ea
7556#define NV50TCL_RT_FORMAT_R8G8_SNORM 0x000000eb 7708#define NV50TCL_RT_FORMAT_R8G8_SNORM 0x000000eb
7709#define NV50TCL_RT_FORMAT_R8G8_SINT 0x000000ec
7710#define NV50TCL_RT_FORMAT_R8G8_UINT 0x000000ed
7557#define NV50TCL_RT_FORMAT_R16_UNORM 0x000000ee 7711#define NV50TCL_RT_FORMAT_R16_UNORM 0x000000ee
7558#define NV50TCL_RT_FORMAT_R16_SNORM 0x000000ef 7712#define NV50TCL_RT_FORMAT_R16_SNORM 0x000000ef
7713#define NV50TCL_RT_FORMAT_R16_SINT 0x000000f0
7714#define NV50TCL_RT_FORMAT_R16_UINT 0x000000f1
7715#define NV50TCL_RT_FORMAT_R16_FLOAT 0x000000f2
7559#define NV50TCL_RT_FORMAT_R8_UNORM 0x000000f3 7716#define NV50TCL_RT_FORMAT_R8_UNORM 0x000000f3
7560#define NV50TCL_RT_FORMAT_R32_BOOLEAN 0x000000f6 7717#define NV50TCL_RT_FORMAT_R8_SNORM 0x000000f4
7718#define NV50TCL_RT_FORMAT_R8_SINT 0x000000f5
7719#define NV50TCL_RT_FORMAT_R8_UINT 0x000000f6
7561#define NV50TCL_RT_FORMAT_A8_UNORM 0x000000f7 7720#define NV50TCL_RT_FORMAT_A8_UNORM 0x000000f7
7562#define NV50TCL_RT_FORMAT_X1B5G5R5_UNORM 0x000000f8 7721#define NV50TCL_RT_FORMAT_X1R5G5B5_UNORM 0x000000f8
7563#define NV50TCL_RT_FORMAT_X8B8G8R8_UNORM 0x000000f9 7722#define NV50TCL_RT_FORMAT_X8B8G8R8_UNORM 0x000000f9
7723#define NV50TCL_RT_FORMAT_X8B8G8R8_SRGB 0x000000fa
7564#define NV50TCL_RT_TILE_MODE(x) (0x0000020c+((x)*32)) 7724#define NV50TCL_RT_TILE_MODE(x) (0x0000020c+((x)*32))
7565#define NV50TCL_RT_TILE_MODE__SIZE 0x00000008 7725#define NV50TCL_RT_TILE_MODE__SIZE 0x00000008
7566#define NV50TCL_RT_UNK4(x) (0x00000210+((x)*32)) 7726#define NV50TCL_RT_LAYER_STRIDE(x) (0x00000210+((x)*32))
7567#define NV50TCL_RT_UNK4__SIZE 0x00000008 7727#define NV50TCL_RT_LAYER_STRIDE__SIZE 0x00000008
7568#define NV50TCL_VTX_ATTR_1F(x) (0x00000300+((x)*4)) 7728#define NV50TCL_VTX_ATTR_1F(x) (0x00000300+((x)*4))
7569#define NV50TCL_VTX_ATTR_1F__SIZE 0x00000010 7729#define NV50TCL_VTX_ATTR_1F__SIZE 0x00000010
7730#define NV50TCL_VTX_ATTR_2H(x) (0x00000340+((x)*4))
7731#define NV50TCL_VTX_ATTR_2H__SIZE 0x00000010
7732#define NV50TCL_VTX_ATTR_2H_X_SHIFT 0
7733#define NV50TCL_VTX_ATTR_2H_X_MASK 0x0000ffff
7734#define NV50TCL_VTX_ATTR_2H_Y_SHIFT 16
7735#define NV50TCL_VTX_ATTR_2H_Y_MASK 0xffff0000
7570#define NV50TCL_VTX_ATTR_2F_X(x) (0x00000380+((x)*8)) 7736#define NV50TCL_VTX_ATTR_2F_X(x) (0x00000380+((x)*8))
7571#define NV50TCL_VTX_ATTR_2F_X__SIZE 0x00000010 7737#define NV50TCL_VTX_ATTR_2F_X__SIZE 0x00000010
7572#define NV50TCL_VTX_ATTR_2F_Y(x) (0x00000384+((x)*8)) 7738#define NV50TCL_VTX_ATTR_2F_Y(x) (0x00000384+((x)*8))
@@ -7577,8 +7743,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7577#define NV50TCL_VTX_ATTR_3F_Y__SIZE 0x00000010 7743#define NV50TCL_VTX_ATTR_3F_Y__SIZE 0x00000010
7578#define NV50TCL_VTX_ATTR_3F_Z(x) (0x00000408+((x)*16)) 7744#define NV50TCL_VTX_ATTR_3F_Z(x) (0x00000408+((x)*16))
7579#define NV50TCL_VTX_ATTR_3F_Z__SIZE 0x00000010 7745#define NV50TCL_VTX_ATTR_3F_Z__SIZE 0x00000010
7580#define NV50TCL_VTX_ATTR_3F_W(x) (0x0000040c+((x)*16))
7581#define NV50TCL_VTX_ATTR_3F_W__SIZE 0x00000010
7582#define NV50TCL_VTX_ATTR_4F_X(x) (0x00000500+((x)*16)) 7746#define NV50TCL_VTX_ATTR_4F_X(x) (0x00000500+((x)*16))
7583#define NV50TCL_VTX_ATTR_4F_X__SIZE 0x00000010 7747#define NV50TCL_VTX_ATTR_4F_X__SIZE 0x00000010
7584#define NV50TCL_VTX_ATTR_4F_Y(x) (0x00000504+((x)*16)) 7748#define NV50TCL_VTX_ATTR_4F_Y(x) (0x00000504+((x)*16))
@@ -7587,12 +7751,30 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7587#define NV50TCL_VTX_ATTR_4F_Z__SIZE 0x00000010 7751#define NV50TCL_VTX_ATTR_4F_Z__SIZE 0x00000010
7588#define NV50TCL_VTX_ATTR_4F_W(x) (0x0000050c+((x)*16)) 7752#define NV50TCL_VTX_ATTR_4F_W(x) (0x0000050c+((x)*16))
7589#define NV50TCL_VTX_ATTR_4F_W__SIZE 0x00000010 7753#define NV50TCL_VTX_ATTR_4F_W__SIZE 0x00000010
7754#define NV50TCL_VTX_ATTR_4H_0(x) (0x00000600+((x)*8))
7755#define NV50TCL_VTX_ATTR_4H_0__SIZE 0x00000010
7756#define NV50TCL_VTX_ATTR_4H_0_X_SHIFT 0
7757#define NV50TCL_VTX_ATTR_4H_0_X_MASK 0x0000ffff
7758#define NV50TCL_VTX_ATTR_4H_0_Y_SHIFT 16
7759#define NV50TCL_VTX_ATTR_4H_0_Y_MASK 0xffff0000
7760#define NV50TCL_VTX_ATTR_4H_1(x) (0x00000604+((x)*8))
7761#define NV50TCL_VTX_ATTR_4H_1__SIZE 0x00000010
7762#define NV50TCL_VTX_ATTR_4H_1_Z_SHIFT 0
7763#define NV50TCL_VTX_ATTR_4H_1_Z_MASK 0x0000ffff
7764#define NV50TCL_VTX_ATTR_4H_1_W_SHIFT 16
7765#define NV50TCL_VTX_ATTR_4H_1_W_MASK 0xffff0000
7590#define NV50TCL_VTX_ATTR_2I(x) (0x00000680+((x)*4)) 7766#define NV50TCL_VTX_ATTR_2I(x) (0x00000680+((x)*4))
7591#define NV50TCL_VTX_ATTR_2I__SIZE 0x00000010 7767#define NV50TCL_VTX_ATTR_2I__SIZE 0x00000010
7592#define NV50TCL_VTX_ATTR_2I_X_SHIFT 0 7768#define NV50TCL_VTX_ATTR_2I_X_SHIFT 0
7593#define NV50TCL_VTX_ATTR_2I_X_MASK 0x0000ffff 7769#define NV50TCL_VTX_ATTR_2I_X_MASK 0x0000ffff
7594#define NV50TCL_VTX_ATTR_2I_Y_SHIFT 16 7770#define NV50TCL_VTX_ATTR_2I_Y_SHIFT 16
7595#define NV50TCL_VTX_ATTR_2I_Y_MASK 0xffff0000 7771#define NV50TCL_VTX_ATTR_2I_Y_MASK 0xffff0000
7772#define NV50TCL_VTX_ATTR_2NI(x) (0x000006c0+((x)*4))
7773#define NV50TCL_VTX_ATTR_2NI__SIZE 0x00000010
7774#define NV50TCL_VTX_ATTR_2NI_X_SHIFT 0
7775#define NV50TCL_VTX_ATTR_2NI_X_MASK 0x0000ffff
7776#define NV50TCL_VTX_ATTR_2NI_Y_SHIFT 16
7777#define NV50TCL_VTX_ATTR_2NI_Y_MASK 0xffff0000
7596#define NV50TCL_VTX_ATTR_4I_0(x) (0x00000700+((x)*8)) 7778#define NV50TCL_VTX_ATTR_4I_0(x) (0x00000700+((x)*8))
7597#define NV50TCL_VTX_ATTR_4I_0__SIZE 0x00000010 7779#define NV50TCL_VTX_ATTR_4I_0__SIZE 0x00000010
7598#define NV50TCL_VTX_ATTR_4I_0_X_SHIFT 0 7780#define NV50TCL_VTX_ATTR_4I_0_X_SHIFT 0
@@ -7617,30 +7799,83 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7617#define NV50TCL_VTX_ATTR_4NI_1_Z_MASK 0x0000ffff 7799#define NV50TCL_VTX_ATTR_4NI_1_Z_MASK 0x0000ffff
7618#define NV50TCL_VTX_ATTR_4NI_1_W_SHIFT 16 7800#define NV50TCL_VTX_ATTR_4NI_1_W_SHIFT 16
7619#define NV50TCL_VTX_ATTR_4NI_1_W_MASK 0xffff0000 7801#define NV50TCL_VTX_ATTR_4NI_1_W_MASK 0xffff0000
7802#define NV50TCL_VTX_ATTR_4UB(x) (0x00000800+((x)*4))
7803#define NV50TCL_VTX_ATTR_4UB__SIZE 0x00000010
7804#define NV50TCL_VTX_ATTR_4UB_X_SHIFT 0
7805#define NV50TCL_VTX_ATTR_4UB_X_MASK 0x000000ff
7806#define NV50TCL_VTX_ATTR_4UB_Y_SHIFT 8
7807#define NV50TCL_VTX_ATTR_4UB_Y_MASK 0x0000ff00
7808#define NV50TCL_VTX_ATTR_4UB_Z_SHIFT 16
7809#define NV50TCL_VTX_ATTR_4UB_Z_MASK 0x00ff0000
7810#define NV50TCL_VTX_ATTR_4UB_W_SHIFT 24
7811#define NV50TCL_VTX_ATTR_4UB_W_MASK 0xff000000
7812#define NV50TCL_VTX_ATTR_4B(x) (0x00000840+((x)*4))
7813#define NV50TCL_VTX_ATTR_4B__SIZE 0x00000010
7814#define NV50TCL_VTX_ATTR_4B_X_SHIFT 0
7815#define NV50TCL_VTX_ATTR_4B_X_MASK 0x000000ff
7816#define NV50TCL_VTX_ATTR_4B_Y_SHIFT 8
7817#define NV50TCL_VTX_ATTR_4B_Y_MASK 0x0000ff00
7818#define NV50TCL_VTX_ATTR_4B_Z_SHIFT 16
7819#define NV50TCL_VTX_ATTR_4B_Z_MASK 0x00ff0000
7820#define NV50TCL_VTX_ATTR_4B_W_SHIFT 24
7821#define NV50TCL_VTX_ATTR_4B_W_MASK 0xff000000
7822#define NV50TCL_VTX_ATTR_4NUB(x) (0x00000880+((x)*4))
7823#define NV50TCL_VTX_ATTR_4NUB__SIZE 0x00000010
7824#define NV50TCL_VTX_ATTR_4NUB_X_SHIFT 0
7825#define NV50TCL_VTX_ATTR_4NUB_X_MASK 0x000000ff
7826#define NV50TCL_VTX_ATTR_4NUB_Y_SHIFT 8
7827#define NV50TCL_VTX_ATTR_4NUB_Y_MASK 0x0000ff00
7828#define NV50TCL_VTX_ATTR_4NUB_Z_SHIFT 16
7829#define NV50TCL_VTX_ATTR_4NUB_Z_MASK 0x00ff0000
7830#define NV50TCL_VTX_ATTR_4NUB_W_SHIFT 24
7831#define NV50TCL_VTX_ATTR_4NUB_W_MASK 0xff000000
7832#define NV50TCL_VTX_ATTR_4NB(x) (0x000008c0+((x)*4))
7833#define NV50TCL_VTX_ATTR_4NB__SIZE 0x00000010
7834#define NV50TCL_VTX_ATTR_4NB_X_SHIFT 0
7835#define NV50TCL_VTX_ATTR_4NB_X_MASK 0x000000ff
7836#define NV50TCL_VTX_ATTR_4NB_Y_SHIFT 8
7837#define NV50TCL_VTX_ATTR_4NB_Y_MASK 0x0000ff00
7838#define NV50TCL_VTX_ATTR_4NB_Z_SHIFT 16
7839#define NV50TCL_VTX_ATTR_4NB_Z_MASK 0x00ff0000
7840#define NV50TCL_VTX_ATTR_4NB_W_SHIFT 24
7841#define NV50TCL_VTX_ATTR_4NB_W_MASK 0xff000000
7620#define NV50TCL_VERTEX_ARRAY_FORMAT(x) (0x00000900+((x)*16)) 7842#define NV50TCL_VERTEX_ARRAY_FORMAT(x) (0x00000900+((x)*16))
7621#define NV50TCL_VERTEX_ARRAY_FORMAT__SIZE 0x00000010 7843#define NV50TCL_VERTEX_ARRAY_FORMAT__SIZE 0x00000010
7622#define NV50TCL_VERTEX_ARRAY_FORMAT_STRIDE_SHIFT 0 7844#define NV50TCL_VERTEX_ARRAY_FORMAT_STRIDE_SHIFT 0
7623#define NV50TCL_VERTEX_ARRAY_FORMAT_STRIDE_MASK 0x000000ff 7845#define NV50TCL_VERTEX_ARRAY_FORMAT_STRIDE_MASK 0x00000fff
7624#define NV50TCL_UNK0904_OFFSET_HIGH(x) (0x00000904+((x)*16)) 7846#define NV50TCL_VERTEX_ARRAY_FORMAT_ENABLE (1 << 29)
7625#define NV50TCL_UNK0904_OFFSET_HIGH__SIZE 0x00000010 7847#define NV50TCL_VERTEX_ARRAY_START_HIGH(x) (0x00000904+((x)*16))
7626#define NV50TCL_UNK0904_OFFSET_LOW(x) (0x00000908+((x)*16)) 7848#define NV50TCL_VERTEX_ARRAY_START_HIGH__SIZE 0x00000010
7627#define NV50TCL_UNK0904_OFFSET_LOW__SIZE 0x00000010 7849#define NV50TCL_VERTEX_ARRAY_START_LOW(x) (0x00000908+((x)*16))
7628#define NV50TCL_VIEWPORT_SCALE(x) (0x00000a00+((x)*4)) 7850#define NV50TCL_VERTEX_ARRAY_START_LOW__SIZE 0x00000010
7629#define NV50TCL_VIEWPORT_SCALE__SIZE 0x00000003 7851#define NV50TCL_VIEWPORT_SCALE_X(x) (0x00000a00+((x)*32))
7630#define NV50TCL_VIEWPORT_TRANSLATE(x) (0x00000a0c+((x)*4)) 7852#define NV50TCL_VIEWPORT_SCALE_X__SIZE 0x00000010
7631#define NV50TCL_VIEWPORT_TRANSLATE__SIZE 0x00000003 7853#define NV50TCL_VIEWPORT_SCALE_Y(x) (0x00000a04+((x)*32))
7632#define NV50TCL_VIEWPORT_HORIZ 0x00000c00 7854#define NV50TCL_VIEWPORT_SCALE_Y__SIZE 0x00000010
7855#define NV50TCL_VIEWPORT_SCALE_Z(x) (0x00000a08+((x)*32))
7856#define NV50TCL_VIEWPORT_SCALE_Z__SIZE 0x00000010
7857#define NV50TCL_VIEWPORT_TRANSLATE_X(x) (0x00000a0c+((x)*32))
7858#define NV50TCL_VIEWPORT_TRANSLATE_X__SIZE 0x00000010
7859#define NV50TCL_VIEWPORT_TRANSLATE_Y(x) (0x00000a10+((x)*32))
7860#define NV50TCL_VIEWPORT_TRANSLATE_Y__SIZE 0x00000010
7861#define NV50TCL_VIEWPORT_TRANSLATE_Z(x) (0x00000a14+((x)*32))
7862#define NV50TCL_VIEWPORT_TRANSLATE_Z__SIZE 0x00000010
7863#define NV50TCL_VIEWPORT_HORIZ(x) (0x00000c00+((x)*16))
7864#define NV50TCL_VIEWPORT_HORIZ__SIZE 0x00000010
7633#define NV50TCL_VIEWPORT_HORIZ_X_SHIFT 0 7865#define NV50TCL_VIEWPORT_HORIZ_X_SHIFT 0
7634#define NV50TCL_VIEWPORT_HORIZ_X_MASK 0x0000ffff 7866#define NV50TCL_VIEWPORT_HORIZ_X_MASK 0x0000ffff
7635#define NV50TCL_VIEWPORT_HORIZ_W_SHIFT 16 7867#define NV50TCL_VIEWPORT_HORIZ_W_SHIFT 16
7636#define NV50TCL_VIEWPORT_HORIZ_W_MASK 0xffff0000 7868#define NV50TCL_VIEWPORT_HORIZ_W_MASK 0xffff0000
7637#define NV50TCL_VIEWPORT_VERT 0x00000c04 7869#define NV50TCL_VIEWPORT_VERT(x) (0x00000c04+((x)*16))
7870#define NV50TCL_VIEWPORT_VERT__SIZE 0x00000010
7638#define NV50TCL_VIEWPORT_VERT_Y_SHIFT 0 7871#define NV50TCL_VIEWPORT_VERT_Y_SHIFT 0
7639#define NV50TCL_VIEWPORT_VERT_Y_MASK 0x0000ffff 7872#define NV50TCL_VIEWPORT_VERT_Y_MASK 0x0000ffff
7640#define NV50TCL_VIEWPORT_VERT_H_SHIFT 16 7873#define NV50TCL_VIEWPORT_VERT_H_SHIFT 16
7641#define NV50TCL_VIEWPORT_VERT_H_MASK 0xffff0000 7874#define NV50TCL_VIEWPORT_VERT_H_MASK 0xffff0000
7642#define NV50TCL_DEPTH_RANGE_NEAR 0x00000c08 7875#define NV50TCL_DEPTH_RANGE_NEAR(x) (0x00000c08+((x)*16))
7643#define NV50TCL_DEPTH_RANGE_FAR 0x00000c0c 7876#define NV50TCL_DEPTH_RANGE_NEAR__SIZE 0x00000010
7877#define NV50TCL_DEPTH_RANGE_FAR(x) (0x00000c0c+((x)*16))
7878#define NV50TCL_DEPTH_RANGE_FAR__SIZE 0x00000010
7644#define NV50TCL_VIEWPORT_CLIP_HORIZ(x) (0x00000d00+((x)*8)) 7879#define NV50TCL_VIEWPORT_CLIP_HORIZ(x) (0x00000d00+((x)*8))
7645#define NV50TCL_VIEWPORT_CLIP_HORIZ__SIZE 0x00000008 7880#define NV50TCL_VIEWPORT_CLIP_HORIZ__SIZE 0x00000008
7646#define NV50TCL_VIEWPORT_CLIP_VERT(x) (0x00000d04+((x)*8)) 7881#define NV50TCL_VIEWPORT_CLIP_VERT(x) (0x00000d04+((x)*8))
@@ -7650,8 +7885,10 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7650#define NV50TCL_CLEAR_COLOR(x) (0x00000d80+((x)*4)) 7885#define NV50TCL_CLEAR_COLOR(x) (0x00000d80+((x)*4))
7651#define NV50TCL_CLEAR_COLOR__SIZE 0x00000004 7886#define NV50TCL_CLEAR_COLOR__SIZE 0x00000004
7652#define NV50TCL_CLEAR_DEPTH 0x00000d90 7887#define NV50TCL_CLEAR_DEPTH 0x00000d90
7888#define NV50TCL_STACK_ADDRESS_HIGH 0x00000d94
7889#define NV50TCL_STACK_ADDRESS_LOW 0x00000d98
7653#define NV50TCL_CLEAR_STENCIL 0x00000da0 7890#define NV50TCL_CLEAR_STENCIL 0x00000da0
7654#define NV50TCL_STRMOUT_UNK0DA8 0x00000da8 7891#define NV50TCL_STRMOUT_PRIMITIVE_COUNT 0x00000da8
7655#define NV50TCL_POLYGON_MODE_FRONT 0x00000dac 7892#define NV50TCL_POLYGON_MODE_FRONT 0x00000dac
7656#define NV50TCL_POLYGON_MODE_FRONT_POINT 0x00001b00 7893#define NV50TCL_POLYGON_MODE_FRONT_POINT 0x00001b00
7657#define NV50TCL_POLYGON_MODE_FRONT_LINE 0x00001b01 7894#define NV50TCL_POLYGON_MODE_FRONT_LINE 0x00001b01
@@ -7664,29 +7901,33 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7664#define NV50TCL_POLYGON_OFFSET_POINT_ENABLE 0x00000dc0 7901#define NV50TCL_POLYGON_OFFSET_POINT_ENABLE 0x00000dc0
7665#define NV50TCL_POLYGON_OFFSET_LINE_ENABLE 0x00000dc4 7902#define NV50TCL_POLYGON_OFFSET_LINE_ENABLE 0x00000dc4
7666#define NV50TCL_POLYGON_OFFSET_FILL_ENABLE 0x00000dc8 7903#define NV50TCL_POLYGON_OFFSET_FILL_ENABLE 0x00000dc8
7667#define NV50TCL_WINDOW_LEFT 0x00000df8 7904#define NV50TCL_WATCHDOG_TIMER 0x00000de4
7668#define NV50TCL_WINDOW_BOTTOM 0x00000dfc 7905#define NV50TCL_WINDOW_OFFSET_X 0x00000df8
7669#define NV50TCL_SCISSOR_ENABLE 0x00000e00 7906#define NV50TCL_WINDOW_OFFSET_Y 0x00000dfc
7670#define NV50TCL_SCISSOR_HORIZ 0x00000e04 7907#define NV50TCL_SCISSOR_ENABLE(x) (0x00000e00+((x)*16))
7671#define NV50TCL_SCISSOR_HORIZ_L_SHIFT 0 7908#define NV50TCL_SCISSOR_ENABLE__SIZE 0x00000010
7672#define NV50TCL_SCISSOR_HORIZ_L_MASK 0x0000ffff 7909#define NV50TCL_SCISSOR_HORIZ(x) (0x00000e04+((x)*16))
7673#define NV50TCL_SCISSOR_HORIZ_R_SHIFT 16 7910#define NV50TCL_SCISSOR_HORIZ__SIZE 0x00000010
7674#define NV50TCL_SCISSOR_HORIZ_R_MASK 0xffff0000 7911#define NV50TCL_SCISSOR_HORIZ_MIN_SHIFT 0
7675#define NV50TCL_SCISSOR_VERT 0x00000e08 7912#define NV50TCL_SCISSOR_HORIZ_MIN_MASK 0x0000ffff
7676#define NV50TCL_SCISSOR_VERT_B_SHIFT 0 7913#define NV50TCL_SCISSOR_HORIZ_MAX_SHIFT 16
7677#define NV50TCL_SCISSOR_VERT_B_MASK 0x0000ffff 7914#define NV50TCL_SCISSOR_HORIZ_MAX_MASK 0xffff0000
7678#define NV50TCL_SCISSOR_VERT_T_SHIFT 16 7915#define NV50TCL_SCISSOR_VERT(x) (0x00000e08+((x)*16))
7679#define NV50TCL_SCISSOR_VERT_T_MASK 0xffff0000 7916#define NV50TCL_SCISSOR_VERT__SIZE 0x00000010
7917#define NV50TCL_SCISSOR_VERT_MIN_SHIFT 0
7918#define NV50TCL_SCISSOR_VERT_MIN_MASK 0x0000ffff
7919#define NV50TCL_SCISSOR_VERT_MAX_SHIFT 16
7920#define NV50TCL_SCISSOR_VERT_MAX_MASK 0xffff0000
7680#define NV50TCL_CB_ADDR 0x00000f00 7921#define NV50TCL_CB_ADDR 0x00000f00
7681#define NV50TCL_CB_ADDR_ID_SHIFT 8 7922#define NV50TCL_CB_ADDR_ID_SHIFT 8
7682#define NV50TCL_CB_ADDR_ID_MASK 0xffffff00 7923#define NV50TCL_CB_ADDR_ID_MASK 0x003fff00
7683#define NV50TCL_CB_ADDR_BUFFER_SHIFT 0 7924#define NV50TCL_CB_ADDR_BUFFER_SHIFT 0
7684#define NV50TCL_CB_ADDR_BUFFER_MASK 0x000000ff 7925#define NV50TCL_CB_ADDR_BUFFER_MASK 0x0000007f
7685#define NV50TCL_CB_DATA(x) (0x00000f04+((x)*4)) 7926#define NV50TCL_CB_DATA(x) (0x00000f04+((x)*4))
7686#define NV50TCL_CB_DATA__SIZE 0x00000010 7927#define NV50TCL_CB_DATA__SIZE 0x00000010
7687#define NV50TCL_STENCIL_FRONT_FUNC_REF 0x00000f54 7928#define NV50TCL_STENCIL_BACK_FUNC_REF 0x00000f54
7688#define NV50TCL_STENCIL_FRONT_MASK 0x00000f58 7929#define NV50TCL_STENCIL_BACK_MASK 0x00000f58
7689#define NV50TCL_STENCIL_FRONT_FUNC_MASK 0x00000f5c 7930#define NV50TCL_STENCIL_BACK_FUNC_MASK 0x00000f5c
7690#define NV50TCL_GP_ADDRESS_HIGH 0x00000f70 7931#define NV50TCL_GP_ADDRESS_HIGH 0x00000f70
7691#define NV50TCL_GP_ADDRESS_LOW 0x00000f74 7932#define NV50TCL_GP_ADDRESS_LOW 0x00000f74
7692#define NV50TCL_VP_ADDRESS_HIGH 0x00000f7c 7933#define NV50TCL_VP_ADDRESS_HIGH 0x00000f7c
@@ -7703,12 +7944,13 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7703#define NV50TCL_ZETA_ADDRESS_LOW 0x00000fe4 7944#define NV50TCL_ZETA_ADDRESS_LOW 0x00000fe4
7704#define NV50TCL_ZETA_FORMAT 0x00000fe8 7945#define NV50TCL_ZETA_FORMAT 0x00000fe8
7705#define NV50TCL_ZETA_FORMAT_Z32_FLOAT 0x0000000a 7946#define NV50TCL_ZETA_FORMAT_Z32_FLOAT 0x0000000a
7947#define NV50TCL_ZETA_FORMAT_Z16_UNORM 0x00000013
7706#define NV50TCL_ZETA_FORMAT_Z24S8_UNORM 0x00000014 7948#define NV50TCL_ZETA_FORMAT_Z24S8_UNORM 0x00000014
7707#define NV50TCL_ZETA_FORMAT_X8Z24_UNORM 0x00000015 7949#define NV50TCL_ZETA_FORMAT_X8Z24_UNORM 0x00000015
7708#define NV50TCL_ZETA_FORMAT_S8Z24_UNORM 0x00000016 7950#define NV50TCL_ZETA_FORMAT_S8Z24_UNORM 0x00000016
7709#define NV50TCL_ZETA_FORMAT_Z32_FLOAT_X24S8_UNORM 0x00000019 7951#define NV50TCL_ZETA_FORMAT_Z32_FLOAT_X24S8_UNORM 0x00000019
7710#define NV50TCL_ZETA_TILE_MODE 0x00000fec 7952#define NV50TCL_ZETA_TILE_MODE 0x00000fec
7711#define NV50TCL_ZETA_UNK 0x00000ff0 7953#define NV50TCL_ZETA_LAYER_STRIDE 0x00000ff0
7712#define NV50TCL_SCREEN_SCISSOR_HORIZ 0x00000ff4 7954#define NV50TCL_SCREEN_SCISSOR_HORIZ 0x00000ff4
7713#define NV50TCL_SCREEN_SCISSOR_HORIZ_W_SHIFT 16 7955#define NV50TCL_SCREEN_SCISSOR_HORIZ_W_SHIFT 16
7714#define NV50TCL_SCREEN_SCISSOR_HORIZ_W_MASK 0xffff0000 7956#define NV50TCL_SCREEN_SCISSOR_HORIZ_W_MASK 0xffff0000
@@ -7719,12 +7961,40 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7719#define NV50TCL_SCREEN_SCISSOR_VERT_H_MASK 0xffff0000 7961#define NV50TCL_SCREEN_SCISSOR_VERT_H_MASK 0xffff0000
7720#define NV50TCL_SCREEN_SCISSOR_VERT_Y_SHIFT 0 7962#define NV50TCL_SCREEN_SCISSOR_VERT_Y_SHIFT 0
7721#define NV50TCL_SCREEN_SCISSOR_VERT_Y_MASK 0x0000ffff 7963#define NV50TCL_SCREEN_SCISSOR_VERT_Y_MASK 0x0000ffff
7722#define NV50TCL_UNK1080_OFFSET_HIGH(x) (0x00001080+((x)*8)) 7964#define NV50TCL_VERTEX_ARRAY_LIMIT_HIGH(x) (0x00001080+((x)*8))
7723#define NV50TCL_UNK1080_OFFSET_HIGH__SIZE 0x00000010 7965#define NV50TCL_VERTEX_ARRAY_LIMIT_HIGH__SIZE 0x00000010
7724#define NV50TCL_UNK1080_OFFSET_LOW(x) (0x00001084+((x)*8)) 7966#define NV50TCL_VERTEX_ARRAY_LIMIT_LOW(x) (0x00001084+((x)*8))
7725#define NV50TCL_UNK1080_OFFSET_LOW__SIZE 0x00000010 7967#define NV50TCL_VERTEX_ARRAY_LIMIT_LOW__SIZE 0x00000010
7968#define NV50TCL_RT_CONTROL 0x0000121c
7969#define NV50TCL_RT_CONTROL_COUNT_SHIFT 0
7970#define NV50TCL_RT_CONTROL_COUNT_MASK 0x0000000f
7971#define NV50TCL_RT_CONTROL_MAP0_SHIFT 4
7972#define NV50TCL_RT_CONTROL_MAP0_MASK 0x00000070
7973#define NV50TCL_RT_CONTROL_MAP1_SHIFT 7
7974#define NV50TCL_RT_CONTROL_MAP1_MASK 0x00000380
7975#define NV50TCL_RT_CONTROL_MAP2_SHIFT 10
7976#define NV50TCL_RT_CONTROL_MAP2_MASK 0x00001c00
7977#define NV50TCL_RT_CONTROL_MAP3_SHIFT 13
7978#define NV50TCL_RT_CONTROL_MAP3_MASK 0x0000e000
7979#define NV50TCL_RT_CONTROL_MAP4_SHIFT 16
7980#define NV50TCL_RT_CONTROL_MAP4_MASK 0x00070000
7981#define NV50TCL_RT_CONTROL_MAP5_SHIFT 19
7982#define NV50TCL_RT_CONTROL_MAP5_MASK 0x00380000
7983#define NV50TCL_RT_CONTROL_MAP6_SHIFT 22
7984#define NV50TCL_RT_CONTROL_MAP6_MASK 0x01c00000
7985#define NV50TCL_RT_CONTROL_MAP7_SHIFT 25
7986#define NV50TCL_RT_CONTROL_MAP7_MASK 0x0e000000
7987#define NV50TCL_RT_ARRAY_MODE 0x00001224
7988#define NV50TCL_RT_ARRAY_MODE_LAYERS_SHIFT 0
7989#define NV50TCL_RT_ARRAY_MODE_LAYERS_MASK 0x0000ffff
7990#define NV50TCL_RT_ARRAY_MODE_VOLUME (1 << 16)
7726#define NV50TCL_ZETA_HORIZ 0x00001228 7991#define NV50TCL_ZETA_HORIZ 0x00001228
7727#define NV50TCL_ZETA_VERT 0x0000122c 7992#define NV50TCL_ZETA_VERT 0x0000122c
7993#define NV50TCL_ZETA_ARRAY_MODE 0x00001230
7994#define NV50TCL_ZETA_ARRAY_MODE_LAYERS_SHIFT 0
7995#define NV50TCL_ZETA_ARRAY_MODE_LAYERS_MASK 0x0000ffff
7996#define NV50TCL_ZETA_ARRAY_MODE_UNK (1 << 16)
7997#define NV50TCL_LINKED_TSC 0x00001234
7728#define NV50TCL_RT_HORIZ(x) (0x00001240+((x)*8)) 7998#define NV50TCL_RT_HORIZ(x) (0x00001240+((x)*8))
7729#define NV50TCL_RT_HORIZ__SIZE 0x00000008 7999#define NV50TCL_RT_HORIZ__SIZE 0x00000008
7730#define NV50TCL_RT_VERT(x) (0x00001244+((x)*8)) 8000#define NV50TCL_RT_VERT(x) (0x00001244+((x)*8))
@@ -7735,7 +8005,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7735#define NV50TCL_CB_DEF_SET_SIZE_SHIFT 0 8005#define NV50TCL_CB_DEF_SET_SIZE_SHIFT 0
7736#define NV50TCL_CB_DEF_SET_SIZE_MASK 0x0000ffff 8006#define NV50TCL_CB_DEF_SET_SIZE_MASK 0x0000ffff
7737#define NV50TCL_CB_DEF_SET_BUFFER_SHIFT 16 8007#define NV50TCL_CB_DEF_SET_BUFFER_SHIFT 16
7738#define NV50TCL_CB_DEF_SET_BUFFER_MASK 0xffff0000 8008#define NV50TCL_CB_DEF_SET_BUFFER_MASK 0x007f0000
7739#define NV50TCL_STRMOUT_BUFFERS_CTRL 0x00001294 8009#define NV50TCL_STRMOUT_BUFFERS_CTRL 0x00001294
7740#define NV50TCL_STRMOUT_BUFFERS_CTRL_INTERLEAVED (1 << 0) 8010#define NV50TCL_STRMOUT_BUFFERS_CTRL_INTERLEAVED (1 << 0)
7741#define NV50TCL_STRMOUT_BUFFERS_CTRL_SEPARATE_SHIFT 4 8011#define NV50TCL_STRMOUT_BUFFERS_CTRL_SEPARATE_SHIFT 4
@@ -7747,15 +8017,33 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7747#define NV50TCL_SHADE_MODEL 0x000012d4 8017#define NV50TCL_SHADE_MODEL 0x000012d4
7748#define NV50TCL_SHADE_MODEL_FLAT 0x00001d00 8018#define NV50TCL_SHADE_MODEL_FLAT 0x00001d00
7749#define NV50TCL_SHADE_MODEL_SMOOTH 0x00001d01 8019#define NV50TCL_SHADE_MODEL_SMOOTH 0x00001d01
8020#define NV50TCL_LOCAL_BASE_HIGH 0x000012d8
8021#define NV50TCL_LOCAL_BASE_LOW 0x000012dc
8022#define NV50TCL_LOCAL_SIZE_LOG 0x000012e0
7750#define NV50TCL_DEPTH_WRITE_ENABLE 0x000012e8 8023#define NV50TCL_DEPTH_WRITE_ENABLE 0x000012e8
7751#define NV50TCL_ALPHA_TEST_ENABLE 0x000012ec 8024#define NV50TCL_ALPHA_TEST_ENABLE 0x000012ec
8025#define NV50TCL_PM_SET(x) (0x000012f0+((x)*4))
8026#define NV50TCL_PM_SET__SIZE 0x00000004
8027#define NV50TCL_VB_ELEMENT_U8_SETUP 0x00001300
8028#define NV50TCL_VB_ELEMENT_U8_SETUP_OFFSET_SHIFT 30
8029#define NV50TCL_VB_ELEMENT_U8_SETUP_OFFSET_MASK 0xc0000000
8030#define NV50TCL_VB_ELEMENT_U8_SETUP_COUNT_SHIFT 0
8031#define NV50TCL_VB_ELEMENT_U8_SETUP_COUNT_MASK 0x3fffffff
8032#define NV50TCL_VB_ELEMENT_U8 0x00001304
8033#define NV50TCL_VB_ELEMENT_U8_I0_SHIFT 0
8034#define NV50TCL_VB_ELEMENT_U8_I0_MASK 0x000000ff
8035#define NV50TCL_VB_ELEMENT_U8_I1_SHIFT 8
8036#define NV50TCL_VB_ELEMENT_U8_I1_MASK 0x0000ff00
8037#define NV50TCL_VB_ELEMENT_U8_I2_SHIFT 16
8038#define NV50TCL_VB_ELEMENT_U8_I2_MASK 0x00ff0000
8039#define NV50TCL_VB_ELEMENT_U8_I3_SHIFT 24
8040#define NV50TCL_VB_ELEMENT_U8_I3_MASK 0xff000000
7752#define NV50TCL_DEPTH_TEST_FUNC 0x0000130c 8041#define NV50TCL_DEPTH_TEST_FUNC 0x0000130c
7753#define NV50TCL_DEPTH_TEST_FUNC_NEVER 0x00000200 8042#define NV50TCL_DEPTH_TEST_FUNC_NEVER 0x00000200
7754#define NV50TCL_DEPTH_TEST_FUNC_LESS 0x00000201 8043#define NV50TCL_DEPTH_TEST_FUNC_LESS 0x00000201
7755#define NV50TCL_DEPTH_TEST_FUNC_EQUAL 0x00000202 8044#define NV50TCL_DEPTH_TEST_FUNC_EQUAL 0x00000202
7756#define NV50TCL_DEPTH_TEST_FUNC_LEQUAL 0x00000203 8045#define NV50TCL_DEPTH_TEST_FUNC_LEQUAL 0x00000203
7757#define NV50TCL_DEPTH_TEST_FUNC_GREATER 0x00000204 8046#define NV50TCL_DEPTH_TEST_FUNC_GREATER 0x00000204
7758#define NV50TCL_DEPTH_TEST_FUNC_GREATER 0x00000204
7759#define NV50TCL_DEPTH_TEST_FUNC_NOTEQUAL 0x00000205 8047#define NV50TCL_DEPTH_TEST_FUNC_NOTEQUAL 0x00000205
7760#define NV50TCL_DEPTH_TEST_FUNC_GEQUAL 0x00000206 8048#define NV50TCL_DEPTH_TEST_FUNC_GEQUAL 0x00000206
7761#define NV50TCL_DEPTH_TEST_FUNC_ALWAYS 0x00000207 8049#define NV50TCL_DEPTH_TEST_FUNC_ALWAYS 0x00000207
@@ -7766,7 +8054,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7766#define NV50TCL_ALPHA_TEST_FUNC_EQUAL 0x00000202 8054#define NV50TCL_ALPHA_TEST_FUNC_EQUAL 0x00000202
7767#define NV50TCL_ALPHA_TEST_FUNC_LEQUAL 0x00000203 8055#define NV50TCL_ALPHA_TEST_FUNC_LEQUAL 0x00000203
7768#define NV50TCL_ALPHA_TEST_FUNC_GREATER 0x00000204 8056#define NV50TCL_ALPHA_TEST_FUNC_GREATER 0x00000204
7769#define NV50TCL_ALPHA_TEST_FUNC_GREATER 0x00000204
7770#define NV50TCL_ALPHA_TEST_FUNC_NOTEQUAL 0x00000205 8057#define NV50TCL_ALPHA_TEST_FUNC_NOTEQUAL 0x00000205
7771#define NV50TCL_ALPHA_TEST_FUNC_GEQUAL 0x00000206 8058#define NV50TCL_ALPHA_TEST_FUNC_GEQUAL 0x00000206
7772#define NV50TCL_ALPHA_TEST_FUNC_ALWAYS 0x00000207 8059#define NV50TCL_ALPHA_TEST_FUNC_ALWAYS 0x00000207
@@ -7850,83 +8137,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7850#define NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_ALPHA 0x00008004 8137#define NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_ALPHA 0x00008004
7851#define NV50TCL_BLEND_ENABLE(x) (0x00001360+((x)*4)) 8138#define NV50TCL_BLEND_ENABLE(x) (0x00001360+((x)*4))
7852#define NV50TCL_BLEND_ENABLE__SIZE 0x00000008 8139#define NV50TCL_BLEND_ENABLE__SIZE 0x00000008
7853#define NV50TCL_STENCIL_BACK_ENABLE 0x00001380 8140#define NV50TCL_STENCIL_FRONT_ENABLE 0x00001380
7854#define NV50TCL_STENCIL_BACK_OP_FAIL 0x00001384 8141#define NV50TCL_STENCIL_FRONT_OP_FAIL 0x00001384
7855#define NV50TCL_STENCIL_BACK_OP_FAIL_ZERO 0x00000000
7856#define NV50TCL_STENCIL_BACK_OP_FAIL_INVERT 0x0000150a
7857#define NV50TCL_STENCIL_BACK_OP_FAIL_KEEP 0x00001e00
7858#define NV50TCL_STENCIL_BACK_OP_FAIL_REPLACE 0x00001e01
7859#define NV50TCL_STENCIL_BACK_OP_FAIL_INCR 0x00001e02
7860#define NV50TCL_STENCIL_BACK_OP_FAIL_DECR 0x00001e03
7861#define NV50TCL_STENCIL_BACK_OP_FAIL_INCR_WRAP 0x00008507
7862#define NV50TCL_STENCIL_BACK_OP_FAIL_DECR_WRAP 0x00008508
7863#define NV50TCL_STENCIL_BACK_OP_ZFAIL 0x00001388
7864#define NV50TCL_STENCIL_BACK_OP_ZFAIL_ZERO 0x00000000
7865#define NV50TCL_STENCIL_BACK_OP_ZFAIL_INVERT 0x0000150a
7866#define NV50TCL_STENCIL_BACK_OP_ZFAIL_KEEP 0x00001e00
7867#define NV50TCL_STENCIL_BACK_OP_ZFAIL_REPLACE 0x00001e01
7868#define NV50TCL_STENCIL_BACK_OP_ZFAIL_INCR 0x00001e02
7869#define NV50TCL_STENCIL_BACK_OP_ZFAIL_DECR 0x00001e03
7870#define NV50TCL_STENCIL_BACK_OP_ZFAIL_INCR_WRAP 0x00008507
7871#define NV50TCL_STENCIL_BACK_OP_ZFAIL_DECR_WRAP 0x00008508
7872#define NV50TCL_STENCIL_BACK_OP_ZPASS 0x0000138c
7873#define NV50TCL_STENCIL_BACK_OP_ZPASS_ZERO 0x00000000
7874#define NV50TCL_STENCIL_BACK_OP_ZPASS_INVERT 0x0000150a
7875#define NV50TCL_STENCIL_BACK_OP_ZPASS_KEEP 0x00001e00
7876#define NV50TCL_STENCIL_BACK_OP_ZPASS_REPLACE 0x00001e01
7877#define NV50TCL_STENCIL_BACK_OP_ZPASS_INCR 0x00001e02
7878#define NV50TCL_STENCIL_BACK_OP_ZPASS_DECR 0x00001e03
7879#define NV50TCL_STENCIL_BACK_OP_ZPASS_INCR_WRAP 0x00008507
7880#define NV50TCL_STENCIL_BACK_OP_ZPASS_DECR_WRAP 0x00008508
7881#define NV50TCL_STENCIL_BACK_FUNC_FUNC 0x00001390
7882#define NV50TCL_STENCIL_BACK_FUNC_FUNC_NEVER 0x00000200
7883#define NV50TCL_STENCIL_BACK_FUNC_FUNC_LESS 0x00000201
7884#define NV50TCL_STENCIL_BACK_FUNC_FUNC_EQUAL 0x00000202
7885#define NV50TCL_STENCIL_BACK_FUNC_FUNC_LEQUAL 0x00000203
7886#define NV50TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
7887#define NV50TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
7888#define NV50TCL_STENCIL_BACK_FUNC_FUNC_NOTEQUAL 0x00000205
7889#define NV50TCL_STENCIL_BACK_FUNC_FUNC_GEQUAL 0x00000206
7890#define NV50TCL_STENCIL_BACK_FUNC_FUNC_ALWAYS 0x00000207
7891#define NV50TCL_STENCIL_BACK_FUNC_REF 0x00001394
7892#define NV50TCL_STENCIL_BACK_MASK 0x00001398
7893#define NV50TCL_STENCIL_BACK_FUNC_MASK 0x0000139c
7894#define NV50TCL_FRAG_COLOR_CLAMP_EN 0x000013a8
7895#define NV50TCL_LINE_WIDTH 0x000013b0
7896#define NV50TCL_POINT_COORD_REPLACE_MAP(x) (0x000013c0+((x)*4))
7897#define NV50TCL_POINT_COORD_REPLACE_MAP__SIZE 0x00000008
7898#define NV50TCL_VP_START_ID 0x0000140c
7899#define NV50TCL_GP_START_ID 0x00001410
7900#define NV50TCL_FP_START_ID 0x00001414
7901#define NV50TCL_GP_VERTEX_OUTPUT_COUNT 0x00001420
7902#define NV50TCL_SET_SAMPLER_TEX 0x00001458
7903#define NV50TCL_SET_SAMPLER_TEX_SAMPLER_SHIFT 1
7904#define NV50TCL_SET_SAMPLER_TEX_SAMPLER_MASK 0x000001fe
7905#define NV50TCL_SET_SAMPLER_TEX_TIC_SHIFT 9
7906#define NV50TCL_SET_SAMPLER_TEX_TIC_MASK 0x0001fe00
7907#define NV50TCL_SET_SAMPLER_TEX_VALID (1 << 0)
7908#define NV50TCL_STRMOUT_MAP(x) (0x00001480+((x)*4))
7909#define NV50TCL_STRMOUT_MAP__SIZE 0x00000020
7910#define NV50TCL_VP_CLIP_DISTANCE_ENABLE 0x00001510
7911#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_0 (1 << 0)
7912#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_1 (1 << 1)
7913#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_2 (1 << 2)
7914#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_3 (1 << 3)
7915#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_4 (1 << 4)
7916#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_5 (1 << 5)
7917#define NV50TCL_POINT_SIZE 0x00001518
7918#define NV50TCL_POINT_SPRITE_ENABLE 0x00001520
7919#define NV50TCL_MULTISAMPLE_CTRL 0x0000153c
7920#define NV50TCL_MULTISAMPLE_CTRL_ALPHA_TO_COVERAGE (1 << 0)
7921#define NV50TCL_MULTISAMPLE_CTRL_ALPHA_TO_ONE (1 << 4)
7922#define NV50TCL_TSC_ADDRESS_HIGH 0x0000155c
7923#define NV50TCL_TSC_ADDRESS_LOW 0x00001560
7924#define NV50TCL_POLYGON_OFFSET_FACTOR 0x0000156c
7925#define NV50TCL_LINE_SMOOTH_ENABLE 0x00001570
7926#define NV50TCL_TIC_ADDRESS_HIGH 0x00001574
7927#define NV50TCL_TIC_ADDRESS_LOW 0x00001578
7928#define NV50TCL_STENCIL_FRONT_ENABLE 0x00001594
7929#define NV50TCL_STENCIL_FRONT_OP_FAIL 0x00001598
7930#define NV50TCL_STENCIL_FRONT_OP_FAIL_ZERO 0x00000000 8142#define NV50TCL_STENCIL_FRONT_OP_FAIL_ZERO 0x00000000
7931#define NV50TCL_STENCIL_FRONT_OP_FAIL_INVERT 0x0000150a 8143#define NV50TCL_STENCIL_FRONT_OP_FAIL_INVERT 0x0000150a
7932#define NV50TCL_STENCIL_FRONT_OP_FAIL_KEEP 0x00001e00 8144#define NV50TCL_STENCIL_FRONT_OP_FAIL_KEEP 0x00001e00
@@ -7935,7 +8147,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7935#define NV50TCL_STENCIL_FRONT_OP_FAIL_DECR 0x00001e03 8147#define NV50TCL_STENCIL_FRONT_OP_FAIL_DECR 0x00001e03
7936#define NV50TCL_STENCIL_FRONT_OP_FAIL_INCR_WRAP 0x00008507 8148#define NV50TCL_STENCIL_FRONT_OP_FAIL_INCR_WRAP 0x00008507
7937#define NV50TCL_STENCIL_FRONT_OP_FAIL_DECR_WRAP 0x00008508 8149#define NV50TCL_STENCIL_FRONT_OP_FAIL_DECR_WRAP 0x00008508
7938#define NV50TCL_STENCIL_FRONT_OP_ZFAIL 0x0000159c 8150#define NV50TCL_STENCIL_FRONT_OP_ZFAIL 0x00001388
7939#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_ZERO 0x00000000 8151#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_ZERO 0x00000000
7940#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_INVERT 0x0000150a 8152#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_INVERT 0x0000150a
7941#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_KEEP 0x00001e00 8153#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_KEEP 0x00001e00
@@ -7944,7 +8156,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7944#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_DECR 0x00001e03 8156#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_DECR 0x00001e03
7945#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_INCR_WRAP 0x00008507 8157#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_INCR_WRAP 0x00008507
7946#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_DECR_WRAP 0x00008508 8158#define NV50TCL_STENCIL_FRONT_OP_ZFAIL_DECR_WRAP 0x00008508
7947#define NV50TCL_STENCIL_FRONT_OP_ZPASS 0x000015a0 8159#define NV50TCL_STENCIL_FRONT_OP_ZPASS 0x0000138c
7948#define NV50TCL_STENCIL_FRONT_OP_ZPASS_ZERO 0x00000000 8160#define NV50TCL_STENCIL_FRONT_OP_ZPASS_ZERO 0x00000000
7949#define NV50TCL_STENCIL_FRONT_OP_ZPASS_INVERT 0x0000150a 8161#define NV50TCL_STENCIL_FRONT_OP_ZPASS_INVERT 0x0000150a
7950#define NV50TCL_STENCIL_FRONT_OP_ZPASS_KEEP 0x00001e00 8162#define NV50TCL_STENCIL_FRONT_OP_ZPASS_KEEP 0x00001e00
@@ -7953,17 +8165,135 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7953#define NV50TCL_STENCIL_FRONT_OP_ZPASS_DECR 0x00001e03 8165#define NV50TCL_STENCIL_FRONT_OP_ZPASS_DECR 0x00001e03
7954#define NV50TCL_STENCIL_FRONT_OP_ZPASS_INCR_WRAP 0x00008507 8166#define NV50TCL_STENCIL_FRONT_OP_ZPASS_INCR_WRAP 0x00008507
7955#define NV50TCL_STENCIL_FRONT_OP_ZPASS_DECR_WRAP 0x00008508 8167#define NV50TCL_STENCIL_FRONT_OP_ZPASS_DECR_WRAP 0x00008508
7956#define NV50TCL_STENCIL_FRONT_FUNC_FUNC 0x000015a4 8168#define NV50TCL_STENCIL_FRONT_FUNC_FUNC 0x00001390
7957#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_NEVER 0x00000200 8169#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_NEVER 0x00000200
7958#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_LESS 0x00000201 8170#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_LESS 0x00000201
7959#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_EQUAL 0x00000202 8171#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_EQUAL 0x00000202
7960#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_LEQUAL 0x00000203 8172#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_LEQUAL 0x00000203
7961#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204 8173#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
7962#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
7963#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL 0x00000205 8174#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL 0x00000205
7964#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_GEQUAL 0x00000206 8175#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_GEQUAL 0x00000206
7965#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_ALWAYS 0x00000207 8176#define NV50TCL_STENCIL_FRONT_FUNC_FUNC_ALWAYS 0x00000207
8177#define NV50TCL_STENCIL_FRONT_FUNC_REF 0x00001394
8178#define NV50TCL_STENCIL_FRONT_MASK 0x00001398
8179#define NV50TCL_STENCIL_FRONT_FUNC_MASK 0x0000139c
8180#define NV50TCL_FRAG_COLOR_CLAMP_EN 0x000013a8
8181#define NV50TCL_Y_ORIGIN_BOTTOM 0x000013ac
8182#define NV50TCL_LINE_WIDTH 0x000013b0
8183#define NV50TCL_TEX_LIMITS(x) (0x000013b4+((x)*4))
8184#define NV50TCL_TEX_LIMITS__SIZE 0x00000003
8185#define NV50TCL_TEX_LIMITS_SAMPLERS_LOG2_SHIFT 0
8186#define NV50TCL_TEX_LIMITS_SAMPLERS_LOG2_MASK 0x0000000f
8187#define NV50TCL_TEX_LIMITS_TEXTURES_LOG2_SHIFT 4
8188#define NV50TCL_TEX_LIMITS_TEXTURES_LOG2_MASK 0x000000f0
8189#define NV50TCL_POINT_COORD_REPLACE_MAP(x) (0x000013c0+((x)*4))
8190#define NV50TCL_POINT_COORD_REPLACE_MAP__SIZE 0x00000008
8191#define NV50TCL_VP_START_ID 0x0000140c
8192#define NV50TCL_GP_START_ID 0x00001410
8193#define NV50TCL_FP_START_ID 0x00001414
8194#define NV50TCL_GP_VERTEX_OUTPUT_COUNT 0x00001420
8195#define NV50TCL_VB_ELEMENT_BASE 0x00001434
8196#define NV50TCL_CODE_CB_FLUSH 0x00001440
8197#define NV50TCL_BIND_TSC(x) (0x00001444+((x)*8))
8198#define NV50TCL_BIND_TSC__SIZE 0x00000003
8199#define NV50TCL_BIND_TSC_VALID (1 << 0)
8200#define NV50TCL_BIND_TSC_SAMPLER_SHIFT 4
8201#define NV50TCL_BIND_TSC_SAMPLER_MASK 0x000000f0
8202#define NV50TCL_BIND_TSC_TSC_SHIFT 12
8203#define NV50TCL_BIND_TSC_TSC_MASK 0x001ff000
8204#define NV50TCL_BIND_TIC(x) (0x00001448+((x)*8))
8205#define NV50TCL_BIND_TIC__SIZE 0x00000003
8206#define NV50TCL_BIND_TIC_VALID (1 << 0)
8207#define NV50TCL_BIND_TIC_TEXTURE_SHIFT 1
8208#define NV50TCL_BIND_TIC_TEXTURE_MASK 0x000001fe
8209#define NV50TCL_BIND_TIC_TIC_SHIFT 9
8210#define NV50TCL_BIND_TIC_TIC_MASK 0x7ffffe00
8211#define NV50TCL_STRMOUT_MAP(x) (0x00001480+((x)*4))
8212#define NV50TCL_STRMOUT_MAP__SIZE 0x00000020
8213#define NV50TCL_VP_CLIP_DISTANCE_ENABLE 0x00001510
8214#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_0 (1 << 0)
8215#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_1 (1 << 1)
8216#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_2 (1 << 2)
8217#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_3 (1 << 3)
8218#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_4 (1 << 4)
8219#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_5 (1 << 5)
8220#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_6 (1 << 6)
8221#define NV50TCL_VP_CLIP_DISTANCE_ENABLE_7 (1 << 7)
8222#define NV50TCL_SAMPLECNT_ENABLE 0x00001514
8223#define NV50TCL_POINT_SIZE 0x00001518
8224#define NV50TCL_POINT_SPRITE_ENABLE 0x00001520
8225#define NV50TCL_SAMPLECNT_RESET 0x00001530
8226#define NV50TCL_ZETA_ENABLE 0x00001538
8227#define NV50TCL_MULTISAMPLE_CTRL 0x0000153c
8228#define NV50TCL_MULTISAMPLE_CTRL_ALPHA_TO_COVERAGE (1 << 0)
8229#define NV50TCL_MULTISAMPLE_CTRL_ALPHA_TO_ONE (1 << 4)
8230#define NV50TCL_NOPERSPECTIVE_BITMAP(x) (0x00001540+((x)*4))
8231#define NV50TCL_NOPERSPECTIVE_BITMAP__SIZE 0x00000004
8232#define NV50TCL_COND_ADDRESS_HIGH 0x00001550
8233#define NV50TCL_COND_ADDRESS_LOW 0x00001554
8234#define NV50TCL_COND_MODE 0x00001558
8235#define NV50TCL_COND_MODE_NEVER 0x00000000
8236#define NV50TCL_COND_MODE_ALWAYS 0x00000001
8237#define NV50TCL_COND_MODE_RES 0x00000002
8238#define NV50TCL_COND_MODE_NOT_RES_AND_NOT_ID 0x00000003
8239#define NV50TCL_COND_MODE_RES_OR_ID 0x00000004
8240#define NV50TCL_TSC_ADDRESS_HIGH 0x0000155c
8241#define NV50TCL_TSC_ADDRESS_LOW 0x00001560
8242#define NV50TCL_TSC_LIMIT 0x00001564
8243#define NV50TCL_POLYGON_OFFSET_FACTOR 0x0000156c
8244#define NV50TCL_LINE_SMOOTH_ENABLE 0x00001570
8245#define NV50TCL_TIC_ADDRESS_HIGH 0x00001574
8246#define NV50TCL_TIC_ADDRESS_LOW 0x00001578
8247#define NV50TCL_TIC_LIMIT 0x0000157c
8248#define NV50TCL_PM_CONTROL(x) (0x00001580+((x)*4))
8249#define NV50TCL_PM_CONTROL__SIZE 0x00000004
8250#define NV50TCL_PM_CONTROL_UNK0 (1 << 0)
8251#define NV50TCL_PM_CONTROL_UNK1_SHIFT 4
8252#define NV50TCL_PM_CONTROL_UNK1_MASK 0x00000070
8253#define NV50TCL_PM_CONTROL_UNK2_SHIFT 8
8254#define NV50TCL_PM_CONTROL_UNK2_MASK 0xffffff00
8255#define NV50TCL_STENCIL_BACK_ENABLE 0x00001594
8256#define NV50TCL_STENCIL_BACK_OP_FAIL 0x00001598
8257#define NV50TCL_STENCIL_BACK_OP_FAIL_ZERO 0x00000000
8258#define NV50TCL_STENCIL_BACK_OP_FAIL_INVERT 0x0000150a
8259#define NV50TCL_STENCIL_BACK_OP_FAIL_KEEP 0x00001e00
8260#define NV50TCL_STENCIL_BACK_OP_FAIL_REPLACE 0x00001e01
8261#define NV50TCL_STENCIL_BACK_OP_FAIL_INCR 0x00001e02
8262#define NV50TCL_STENCIL_BACK_OP_FAIL_DECR 0x00001e03
8263#define NV50TCL_STENCIL_BACK_OP_FAIL_INCR_WRAP 0x00008507
8264#define NV50TCL_STENCIL_BACK_OP_FAIL_DECR_WRAP 0x00008508
8265#define NV50TCL_STENCIL_BACK_OP_ZFAIL 0x0000159c
8266#define NV50TCL_STENCIL_BACK_OP_ZFAIL_ZERO 0x00000000
8267#define NV50TCL_STENCIL_BACK_OP_ZFAIL_INVERT 0x0000150a
8268#define NV50TCL_STENCIL_BACK_OP_ZFAIL_KEEP 0x00001e00
8269#define NV50TCL_STENCIL_BACK_OP_ZFAIL_REPLACE 0x00001e01
8270#define NV50TCL_STENCIL_BACK_OP_ZFAIL_INCR 0x00001e02
8271#define NV50TCL_STENCIL_BACK_OP_ZFAIL_DECR 0x00001e03
8272#define NV50TCL_STENCIL_BACK_OP_ZFAIL_INCR_WRAP 0x00008507
8273#define NV50TCL_STENCIL_BACK_OP_ZFAIL_DECR_WRAP 0x00008508
8274#define NV50TCL_STENCIL_BACK_OP_ZPASS 0x000015a0
8275#define NV50TCL_STENCIL_BACK_OP_ZPASS_ZERO 0x00000000
8276#define NV50TCL_STENCIL_BACK_OP_ZPASS_INVERT 0x0000150a
8277#define NV50TCL_STENCIL_BACK_OP_ZPASS_KEEP 0x00001e00
8278#define NV50TCL_STENCIL_BACK_OP_ZPASS_REPLACE 0x00001e01
8279#define NV50TCL_STENCIL_BACK_OP_ZPASS_INCR 0x00001e02
8280#define NV50TCL_STENCIL_BACK_OP_ZPASS_DECR 0x00001e03
8281#define NV50TCL_STENCIL_BACK_OP_ZPASS_INCR_WRAP 0x00008507
8282#define NV50TCL_STENCIL_BACK_OP_ZPASS_DECR_WRAP 0x00008508
8283#define NV50TCL_STENCIL_BACK_FUNC_FUNC 0x000015a4
8284#define NV50TCL_STENCIL_BACK_FUNC_FUNC_NEVER 0x00000200
8285#define NV50TCL_STENCIL_BACK_FUNC_FUNC_LESS 0x00000201
8286#define NV50TCL_STENCIL_BACK_FUNC_FUNC_EQUAL 0x00000202
8287#define NV50TCL_STENCIL_BACK_FUNC_FUNC_LEQUAL 0x00000203
8288#define NV50TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
8289#define NV50TCL_STENCIL_BACK_FUNC_FUNC_NOTEQUAL 0x00000205
8290#define NV50TCL_STENCIL_BACK_FUNC_FUNC_GEQUAL 0x00000206
8291#define NV50TCL_STENCIL_BACK_FUNC_FUNC_ALWAYS 0x00000207
8292#define NV50TCL_FRAMEBUFFER_SRGB 0x000015b8
7966#define NV50TCL_POLYGON_OFFSET_UNITS 0x000015bc 8293#define NV50TCL_POLYGON_OFFSET_UNITS 0x000015bc
8294#define NV50TCL_GP_BUILTIN_RESULT_EN 0x000015cc
8295#define NV50TCL_GP_BUILTIN_RESULT_EN_VPORT_IDX (1 << 0)
8296#define NV50TCL_GP_BUILTIN_RESULT_EN_LAYER_IDX (1 << 16)
7967#define NV50TCL_MULTISAMPLE_SAMPLES_LOG2 0x000015d0 8297#define NV50TCL_MULTISAMPLE_SAMPLES_LOG2 0x000015d0
7968#define NV50TCL_VERTEX_BEGIN 0x000015dc 8298#define NV50TCL_VERTEX_BEGIN 0x000015dc
7969#define NV50TCL_VERTEX_BEGIN_POINTS 0x00000000 8299#define NV50TCL_VERTEX_BEGIN_POINTS 0x00000000
@@ -7981,9 +8311,26 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7981#define NV50TCL_VERTEX_BEGIN_TRIANGLES_ADJACENCY 0x0000000c 8311#define NV50TCL_VERTEX_BEGIN_TRIANGLES_ADJACENCY 0x0000000c
7982#define NV50TCL_VERTEX_BEGIN_TRIANGLE_STRIP_ADJACENCY 0x0000000d 8312#define NV50TCL_VERTEX_BEGIN_TRIANGLE_STRIP_ADJACENCY 0x0000000d
7983#define NV50TCL_VERTEX_END 0x000015e0 8313#define NV50TCL_VERTEX_END 0x000015e0
8314#define NV50TCL_EDGEFLAG_ENABLE 0x000015e4
8315#define NV50TCL_VB_ELEMENT_U32 0x000015e8
8316#define NV50TCL_VB_ELEMENT_U16_SETUP 0x000015ec
8317#define NV50TCL_VB_ELEMENT_U16_SETUP_OFFSET_SHIFT 30
8318#define NV50TCL_VB_ELEMENT_U16_SETUP_OFFSET_MASK 0xc0000000
8319#define NV50TCL_VB_ELEMENT_U16_SETUP_COUNT_SHIFT 0
8320#define NV50TCL_VB_ELEMENT_U16_SETUP_COUNT_MASK 0x3fffffff
8321#define NV50TCL_VB_ELEMENT_U16 0x000015f0
8322#define NV50TCL_VB_ELEMENT_U16_I0_SHIFT 0
8323#define NV50TCL_VB_ELEMENT_U16_I0_MASK 0x0000ffff
8324#define NV50TCL_VB_ELEMENT_U16_I1_SHIFT 16
8325#define NV50TCL_VB_ELEMENT_U16_I1_MASK 0xffff0000
7984#define NV50TCL_VERTEX_DATA 0x00001640 8326#define NV50TCL_VERTEX_DATA 0x00001640
7985#define NV50TCL_PRIM_RESTART_ENABLE 0x00001644 8327#define NV50TCL_PRIM_RESTART_ENABLE 0x00001644
7986#define NV50TCL_PRIM_RESTART_INDEX 0x00001648 8328#define NV50TCL_PRIM_RESTART_INDEX 0x00001648
8329#define NV50TCL_VP_GP_BUILTIN_ATTR_EN 0x0000164c
8330#define NV50TCL_VP_GP_BUILTIN_ATTR_EN_VERTEX_ID (1 << 0)
8331#define NV50TCL_VP_GP_BUILTIN_ATTR_EN_INSTANCE_ID (1 << 4)
8332#define NV50TCL_VP_GP_BUILTIN_ATTR_EN_PRIMITIVE_ID (1 << 8)
8333#define NV50TCL_VP_GP_BUILTIN_ATTR_EN_UNK12 (1 << 12)
7987#define NV50TCL_VP_ATTR_EN_0 0x00001650 8334#define NV50TCL_VP_ATTR_EN_0 0x00001650
7988#define NV50TCL_VP_ATTR_EN_0_7_SHIFT 28 8335#define NV50TCL_VP_ATTR_EN_0_7_SHIFT 28
7989#define NV50TCL_VP_ATTR_EN_0_7_MASK 0xf0000000 8336#define NV50TCL_VP_ATTR_EN_0_7_MASK 0xf0000000
@@ -8277,6 +8624,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8277#define NV50TCL_POINT_SPRITE_CTRL 0x00001660 8624#define NV50TCL_POINT_SPRITE_CTRL 0x00001660
8278#define NV50TCL_LINE_STIPPLE_ENABLE 0x0000166c 8625#define NV50TCL_LINE_STIPPLE_ENABLE 0x0000166c
8279#define NV50TCL_LINE_STIPPLE_PATTERN 0x00001680 8626#define NV50TCL_LINE_STIPPLE_PATTERN 0x00001680
8627#define NV50TCL_PROVOKING_VERTEX_LAST 0x00001684
8280#define NV50TCL_VERTEX_TWO_SIDE_ENABLE 0x00001688 8628#define NV50TCL_VERTEX_TWO_SIDE_ENABLE 0x00001688
8281#define NV50TCL_POLYGON_STIPPLE_ENABLE 0x0000168c 8629#define NV50TCL_POLYGON_STIPPLE_ENABLE 0x0000168c
8282#define NV50TCL_SET_PROGRAM_CB 0x00001694 8630#define NV50TCL_SET_PROGRAM_CB 0x00001694
@@ -8288,7 +8636,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8288#define NV50TCL_SET_PROGRAM_CB_INDEX_SHIFT 8 8636#define NV50TCL_SET_PROGRAM_CB_INDEX_SHIFT 8
8289#define NV50TCL_SET_PROGRAM_CB_INDEX_MASK 0x00000f00 8637#define NV50TCL_SET_PROGRAM_CB_INDEX_MASK 0x00000f00
8290#define NV50TCL_SET_PROGRAM_CB_BUFFER_SHIFT 12 8638#define NV50TCL_SET_PROGRAM_CB_BUFFER_SHIFT 12
8291#define NV50TCL_SET_PROGRAM_CB_BUFFER_MASK 0x000ff000 8639#define NV50TCL_SET_PROGRAM_CB_BUFFER_MASK 0x0007f000
8292#define NV50TCL_SET_PROGRAM_CB_VALID (1 << 0) 8640#define NV50TCL_SET_PROGRAM_CB_VALID (1 << 0)
8293#define NV50TCL_VP_RESULT_MAP_SIZE 0x000016ac 8641#define NV50TCL_VP_RESULT_MAP_SIZE 0x000016ac
8294#define NV50TCL_VP_REG_ALLOC_TEMP 0x000016b0 8642#define NV50TCL_VP_REG_ALLOC_TEMP 0x000016b0
@@ -8314,6 +8662,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8314#define NV50TCL_GP_OUTPUT_PRIMITIVE_TYPE_LINE_STRIP 0x00000002 8662#define NV50TCL_GP_OUTPUT_PRIMITIVE_TYPE_LINE_STRIP 0x00000002
8315#define NV50TCL_GP_OUTPUT_PRIMITIVE_TYPE_TRIANGLE_STRIP 0x00000003 8663#define NV50TCL_GP_OUTPUT_PRIMITIVE_TYPE_TRIANGLE_STRIP 0x00000003
8316#define NV50TCL_RASTERIZE_ENABLE 0x000017b4 8664#define NV50TCL_RASTERIZE_ENABLE 0x000017b4
8665#define NV50TCL_STRMOUT_ENABLE 0x000017b8
8317#define NV50TCL_GP_RESULT_MAP(x) (0x000017fc+((x)*4)) 8666#define NV50TCL_GP_RESULT_MAP(x) (0x000017fc+((x)*4))
8318#define NV50TCL_GP_RESULT_MAP__SIZE 0x00000008 8667#define NV50TCL_GP_RESULT_MAP__SIZE 0x00000008
8319#define NV50TCL_GP_RESULT_MAP_0_SHIFT 0 8668#define NV50TCL_GP_RESULT_MAP_0_SHIFT 0
@@ -8338,23 +8687,16 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8338#define NV50TCL_MAP_SEMANTIC_1_CLIP_LO_MASK 0x000000ff 8687#define NV50TCL_MAP_SEMANTIC_1_CLIP_LO_MASK 0x000000ff
8339#define NV50TCL_MAP_SEMANTIC_1_CLIP_HI_SHIFT 8 8688#define NV50TCL_MAP_SEMANTIC_1_CLIP_HI_SHIFT 8
8340#define NV50TCL_MAP_SEMANTIC_1_CLIP_HI_MASK 0x0000ff00 8689#define NV50TCL_MAP_SEMANTIC_1_CLIP_HI_MASK 0x0000ff00
8341#define NV50TCL_MAP_SEMANTIC_1_UNKN_02_SHIFT 16
8342#define NV50TCL_MAP_SEMANTIC_1_UNKN_02_MASK 0x00ff0000
8343#define NV50TCL_MAP_SEMANTIC_1_UNKN_03_SHIFT 24
8344#define NV50TCL_MAP_SEMANTIC_1_UNKN_03_MASK 0xff000000
8345#define NV50TCL_MAP_SEMANTIC_2 0x0000190c 8690#define NV50TCL_MAP_SEMANTIC_2 0x0000190c
8346#define NV50TCL_MAP_SEMANTIC_2_UNKN_00_SHIFT 0 8691#define NV50TCL_MAP_SEMANTIC_2_LAYER_ID_SHIFT 0
8347#define NV50TCL_MAP_SEMANTIC_2_UNKN_00_MASK 0x000000ff 8692#define NV50TCL_MAP_SEMANTIC_2_LAYER_ID_MASK 0x000000ff
8348#define NV50TCL_MAP_SEMANTIC_2_UNKN_01_SHIFT 8
8349#define NV50TCL_MAP_SEMANTIC_2_UNKN_01_MASK 0x0000ff00
8350#define NV50TCL_MAP_SEMANTIC_2_UNKN_02_SHIFT 16
8351#define NV50TCL_MAP_SEMANTIC_2_UNKN_02_MASK 0x00ff0000
8352#define NV50TCL_MAP_SEMANTIC_2_UNKN_03_SHIFT 24
8353#define NV50TCL_MAP_SEMANTIC_2_UNKN_03_MASK 0xff000000
8354#define NV50TCL_MAP_SEMANTIC_3 0x00001910 8693#define NV50TCL_MAP_SEMANTIC_3 0x00001910
8355#define NV50TCL_MAP_SEMANTIC_3_PTSZ_EN (1 << 0) 8694#define NV50TCL_MAP_SEMANTIC_3_PTSZ_EN (1 << 0)
8356#define NV50TCL_MAP_SEMANTIC_3_PTSZ_ID_SHIFT 4 8695#define NV50TCL_MAP_SEMANTIC_3_PTSZ_ID_SHIFT 4
8357#define NV50TCL_MAP_SEMANTIC_3_PTSZ_ID_MASK 0x00000ff0 8696#define NV50TCL_MAP_SEMANTIC_3_PTSZ_ID_MASK 0x00000ff0
8697#define NV50TCL_MAP_SEMANTIC_4 0x00001914
8698#define NV50TCL_MAP_SEMANTIC_4_PRIM_ID_SHIFT 0
8699#define NV50TCL_MAP_SEMANTIC_4_PRIM_ID_MASK 0x000000ff
8358#define NV50TCL_CULL_FACE_ENABLE 0x00001918 8700#define NV50TCL_CULL_FACE_ENABLE 0x00001918
8359#define NV50TCL_FRONT_FACE 0x0000191c 8701#define NV50TCL_FRONT_FACE 0x0000191c
8360#define NV50TCL_FRONT_FACE_CW 0x00000900 8702#define NV50TCL_FRONT_FACE_CW 0x00000900
@@ -8385,16 +8727,18 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8385#define NV50TCL_FP_INTERPOLANT_CTRL_UMASK_XNZW 0x0d000000 8727#define NV50TCL_FP_INTERPOLANT_CTRL_UMASK_XNZW 0x0d000000
8386#define NV50TCL_FP_INTERPOLANT_CTRL_UMASK_NYZW 0x0e000000 8728#define NV50TCL_FP_INTERPOLANT_CTRL_UMASK_NYZW 0x0e000000
8387#define NV50TCL_FP_INTERPOLANT_CTRL_UMASK_XYZW 0x0f000000 8729#define NV50TCL_FP_INTERPOLANT_CTRL_UMASK_XYZW 0x0f000000
8388#define NV50TCL_FP_INTERPOLANT_CTRL_COUNT_SHIFT 16 8730#define NV50TCL_FP_INTERPOLANT_CTRL_COUNT_NONFLAT_SHIFT 16
8389#define NV50TCL_FP_INTERPOLANT_CTRL_COUNT_MASK 0x00ff0000 8731#define NV50TCL_FP_INTERPOLANT_CTRL_COUNT_NONFLAT_MASK 0x00ff0000
8390#define NV50TCL_FP_INTERPOLANT_CTRL_OFFSET_SHIFT 8 8732#define NV50TCL_FP_INTERPOLANT_CTRL_OFFSET_SHIFT 8
8391#define NV50TCL_FP_INTERPOLANT_CTRL_OFFSET_MASK 0x0000ff00 8733#define NV50TCL_FP_INTERPOLANT_CTRL_OFFSET_MASK 0x0000ff00
8392#define NV50TCL_FP_INTERPOLANT_CTRL_COUNT_UNK_SHIFT 0 8734#define NV50TCL_FP_INTERPOLANT_CTRL_COUNT_SHIFT 0
8393#define NV50TCL_FP_INTERPOLANT_CTRL_COUNT_UNK_MASK 0x000000ff 8735#define NV50TCL_FP_INTERPOLANT_CTRL_COUNT_MASK 0x000000ff
8394#define NV50TCL_FP_REG_ALLOC_TEMP 0x0000198c 8736#define NV50TCL_FP_REG_ALLOC_TEMP 0x0000198c
8395#define NV50TCL_FP_CTRL_UNK19A8 0x000019a8 8737#define NV50TCL_WARP_HALVES 0x000019a0
8396#define NV50TCL_FP_CTRL_UNK19A8_DEP (1 << 20) 8738#define NV50TCL_FP_CONTROL 0x000019a8
8397#define NV50TCL_FP_CTRL_UNK19A8_KIL (1 << 8) 8739#define NV50TCL_FP_CONTROL_MULTIPLE_RESULTS (1 << 0)
8740#define NV50TCL_FP_CONTROL_EXPORTS_Z (1 << 8)
8741#define NV50TCL_FP_CONTROL_USES_KIL (1 << 20)
8398#define NV50TCL_DEPTH_BOUNDS_EN 0x000019bc 8742#define NV50TCL_DEPTH_BOUNDS_EN 0x000019bc
8399#define NV50TCL_LOGIC_OP_ENABLE 0x000019c4 8743#define NV50TCL_LOGIC_OP_ENABLE 0x000019c4
8400#define NV50TCL_LOGIC_OP 0x000019c8 8744#define NV50TCL_LOGIC_OP 0x000019c8
@@ -8415,6 +8759,16 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8415#define NV50TCL_LOGIC_OP_NAND 0x0000150e 8759#define NV50TCL_LOGIC_OP_NAND 0x0000150e
8416#define NV50TCL_LOGIC_OP_SET 0x0000150f 8760#define NV50TCL_LOGIC_OP_SET 0x0000150f
8417#define NV50TCL_CLEAR_BUFFERS 0x000019d0 8761#define NV50TCL_CLEAR_BUFFERS 0x000019d0
8762#define NV50TCL_CLEAR_BUFFERS_Z (1 << 0)
8763#define NV50TCL_CLEAR_BUFFERS_S (1 << 1)
8764#define NV50TCL_CLEAR_BUFFERS_R (1 << 2)
8765#define NV50TCL_CLEAR_BUFFERS_G (1 << 3)
8766#define NV50TCL_CLEAR_BUFFERS_B (1 << 4)
8767#define NV50TCL_CLEAR_BUFFERS_A (1 << 5)
8768#define NV50TCL_CLEAR_BUFFERS_RT_SHIFT 6
8769#define NV50TCL_CLEAR_BUFFERS_RT_MASK 0x000003c0
8770#define NV50TCL_CLEAR_BUFFERS_LAYER_SHIFT 10
8771#define NV50TCL_CLEAR_BUFFERS_LAYER_MASK 0x0007fc00
8418#define NV50TCL_COLOR_MASK(x) (0x00001a00+((x)*4)) 8772#define NV50TCL_COLOR_MASK(x) (0x00001a00+((x)*4))
8419#define NV50TCL_COLOR_MASK__SIZE 0x00000008 8773#define NV50TCL_COLOR_MASK__SIZE 0x00000008
8420#define NV50TCL_COLOR_MASK_R_SHIFT 0 8774#define NV50TCL_COLOR_MASK_R_SHIFT 0
@@ -8434,23 +8788,26 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8434#define NV50TCL_VERTEX_ARRAY_ATTRIB(x) (0x00001ac0+((x)*4)) 8788#define NV50TCL_VERTEX_ARRAY_ATTRIB(x) (0x00001ac0+((x)*4))
8435#define NV50TCL_VERTEX_ARRAY_ATTRIB__SIZE 0x00000010 8789#define NV50TCL_VERTEX_ARRAY_ATTRIB__SIZE 0x00000010
8436#define NV50TCL_VERTEX_ARRAY_ATTRIB_BUFFER_SHIFT 0 8790#define NV50TCL_VERTEX_ARRAY_ATTRIB_BUFFER_SHIFT 0
8437#define NV50TCL_VERTEX_ARRAY_ATTRIB_BUFFER_MASK 0x000000ff 8791#define NV50TCL_VERTEX_ARRAY_ATTRIB_BUFFER_MASK 0x0000000f
8438#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_SHIFT 16 8792#define NV50TCL_VERTEX_ARRAY_ATTRIB_CONST (1 << 4)
8439#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_MASK 0x00ff0000 8793#define NV50TCL_VERTEX_ARRAY_ATTRIB_OFFSET_SHIFT 5
8440#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_32_32_32_32 0x00080000 8794#define NV50TCL_VERTEX_ARRAY_ATTRIB_OFFSET_MASK 0x0007ffe0
8441#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_32_32_32 0x00100000 8795#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_SHIFT 19
8442#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_32_32 0x00200000 8796#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_MASK 0x01f80000
8443#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_32 0x00900000 8797#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_32_32_32_32 0x00080000
8444#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_16_16_16_16 0x00180000 8798#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_32_32_32 0x00100000
8445#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_16_16_16 0x00280000 8799#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_16_16_16_16 0x00180000
8446#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_16_16 0x00780000 8800#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_32_32 0x00200000
8447#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_16 0x00d80000 8801#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_16_16_16 0x00280000
8448#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_8_8_8_8 0x00500000 8802#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_8_8_8_8 0x00500000
8449#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_8_8_8 0x00980000 8803#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_16_16 0x00780000
8450#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_8_8 0x00c00000 8804#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_32 0x00900000
8451#define NV50TCL_VERTEX_ARRAY_ATTRIB_SIZE_8 0x00e80000 8805#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_8_8_8 0x00980000
8452#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SHIFT 24 8806#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_8_8 0x00c00000
8453#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_MASK 0xff000000 8807#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_16 0x00d80000
8808#define NV50TCL_VERTEX_ARRAY_ATTRIB_FORMAT_8 0x00e80000
8809#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SHIFT 25
8810#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_MASK 0x7e000000
8454#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_FLOAT 0x7e000000 8811#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_FLOAT 0x7e000000
8455#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_UNORM 0x24000000 8812#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_UNORM 0x24000000
8456#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SNORM 0x12000000 8813#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SNORM 0x12000000
@@ -8458,6 +8815,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8458#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SSCALED 0x6c000000 8815#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SSCALED 0x6c000000
8459#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_UINT 0x48000000 8816#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_UINT 0x48000000
8460#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SINT 0x36000000 8817#define NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SINT 0x36000000
8818#define NV50TCL_VERTEX_ARRAY_ATTRIB_BGRA (1 << 31)
8461#define NV50TCL_QUERY_ADDRESS_HIGH 0x00001b00 8819#define NV50TCL_QUERY_ADDRESS_HIGH 0x00001b00
8462#define NV50TCL_QUERY_ADDRESS_LOW 0x00001b04 8820#define NV50TCL_QUERY_ADDRESS_LOW 0x00001b04
8463#define NV50TCL_QUERY_COUNTER 0x00001b08 8821#define NV50TCL_QUERY_COUNTER 0x00001b08
@@ -8466,45 +8824,135 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8466 8824
8467#define NV50_COMPUTE 0x000050c0 8825#define NV50_COMPUTE 0x000050c0
8468 8826
8469#define NV50_COMPUTE_DMA_UNK0 0x000001a0 8827#define NV50_COMPUTE_NOP 0x00000100
8470#define NV50_COMPUTE_DMA_STATUS 0x000001a4 8828#define NV50_COMPUTE_NOTIFY 0x00000104
8471#define NV50_COMPUTE_DMA_UNK1 0x000001b8 8829#define NV50_COMPUTE_DMA_NOTIFY 0x00000180
8472#define NV50_COMPUTE_DMA_UNK2 0x000001bc 8830#define NV50_COMPUTE_DMA_GLOBAL 0x000001a0
8473#define NV50_COMPUTE_DMA_UNK3 0x000001c0 8831#define NV50_COMPUTE_DMA_QUERY 0x000001a4
8474#define NV50_COMPUTE_UNK4_HIGH 0x00000210 8832#define NV50_COMPUTE_DMA_LOCAL 0x000001b8
8475#define NV50_COMPUTE_UNK4_LOW 0x00000214 8833#define NV50_COMPUTE_DMA_STACK 0x000001bc
8476#define NV50_COMPUTE_UNK5_HIGH 0x00000218 8834#define NV50_COMPUTE_DMA_CODE_CB 0x000001c0
8477#define NV50_COMPUTE_UNK5_LOW 0x0000021c 8835#define NV50_COMPUTE_DMA_TSC 0x000001c4
8478#define NV50_COMPUTE_UNK6_HIGH 0x00000294 8836#define NV50_COMPUTE_DMA_TIC 0x000001c8
8479#define NV50_COMPUTE_UNK6_LOW 0x00000298 8837#define NV50_COMPUTE_DMA_TEXTURE 0x000001cc
8480#define NV50_COMPUTE_CONST_BASE_HIGH 0x000002a4 8838#define NV50_COMPUTE_CP_ADDRESS_HIGH 0x00000210
8481#define NV50_COMPUTE_CONST_BASE_LO 0x000002a8 8839#define NV50_COMPUTE_CP_ADDRESS_LOW 0x00000214
8482#define NV50_COMPUTE_CONST_SIZE_SEG 0x000002ac 8840#define NV50_COMPUTE_STACK_ADDRESS_HIGH 0x00000218
8483#define NV50_COMPUTE_REG_COUNT 0x000002c0 8841#define NV50_COMPUTE_STACK_ADDRESS_LOW 0x0000021c
8484#define NV50_COMPUTE_STATUS_HIGH 0x00000310 8842#define NV50_COMPUTE_TSC_ADDRESS_HIGH 0x0000022c
8485#define NV50_COMPUTE_STATUS_LOW 0x00000314 8843#define NV50_COMPUTE_TSC_ADDRESS_LOW 0x00000230
8486#define NV50_COMPUTE_EXECUTE 0x0000031c 8844#define NV50_COMPUTE_TSC_LIMIT 0x00000234
8845#define NV50_COMPUTE_CB_ADDR 0x00000238
8846#define NV50_COMPUTE_CB_ADDR_ID_SHIFT 8
8847#define NV50_COMPUTE_CB_ADDR_ID_MASK 0x003fff00
8848#define NV50_COMPUTE_CB_ADDR_BUFFER_SHIFT 0
8849#define NV50_COMPUTE_CB_ADDR_BUFFER_MASK 0x0000007f
8850#define NV50_COMPUTE_CB_DATA(x) (0x0000023c+((x)*4))
8851#define NV50_COMPUTE_CB_DATA__SIZE 0x00000010
8852#define NV50_COMPUTE_DELAY1 0x00000284
8853#define NV50_COMPUTE_WATCHDOG_TIMER 0x00000288
8854#define NV50_COMPUTE_DELAY2 0x0000028c
8855#define NV50_COMPUTE_LOCAL_BASE_HIGH 0x00000294
8856#define NV50_COMPUTE_LOCAL_BASE_LOW 0x00000298
8857#define NV50_COMPUTE_LOCAL_SIZE_LOG 0x0000029c
8858#define NV50_COMPUTE_CB_DEF_ADDRESS_HIGH 0x000002a4
8859#define NV50_COMPUTE_CB_DEF_ADDRESS_LOW 0x000002a8
8860#define NV50_COMPUTE_CB_DEF_SET 0x000002ac
8861#define NV50_COMPUTE_CB_DEF_SET_SIZE_SHIFT 0
8862#define NV50_COMPUTE_CB_DEF_SET_SIZE_MASK 0x0000ffff
8863#define NV50_COMPUTE_CB_DEF_SET_BUFFER_SHIFT 16
8864#define NV50_COMPUTE_CB_DEF_SET_BUFFER_MASK 0x007f0000
8865#define NV50_COMPUTE_BLOCK_ALLOC 0x000002b4
8866#define NV50_COMPUTE_BLOCK_ALLOC_THREADS_SHIFT 0
8867#define NV50_COMPUTE_BLOCK_ALLOC_THREADS_MASK 0x0000ffff
8868#define NV50_COMPUTE_BLOCK_ALLOC_BARRIERS_SHIFT 16
8869#define NV50_COMPUTE_BLOCK_ALLOC_BARRIERS_MASK 0xffff0000
8870#define NV50_COMPUTE_CP_REG_ALLOC_TEMP 0x000002c0
8871#define NV50_COMPUTE_TIC_ADDRESS_HIGH 0x000002c4
8872#define NV50_COMPUTE_TIC_ADDRESS_LOW 0x000002c8
8873#define NV50_COMPUTE_TIC_LIMIT 0x000002cc
8874#define NV50_COMPUTE_PM_SET(x) (0x000002d0+((x)*4))
8875#define NV50_COMPUTE_PM_SET__SIZE 0x00000004
8876#define NV50_COMPUTE_PM_CONTROL(x) (0x000002e0+((x)*4))
8877#define NV50_COMPUTE_PM_CONTROL__SIZE 0x00000004
8878#define NV50_COMPUTE_PM_CONTROL_UNK0 (1 << 0)
8879#define NV50_COMPUTE_PM_CONTROL_UNK1_SHIFT 4
8880#define NV50_COMPUTE_PM_CONTROL_UNK1_MASK 0x00000070
8881#define NV50_COMPUTE_PM_CONTROL_UNK2_SHIFT 8
8882#define NV50_COMPUTE_PM_CONTROL_UNK2_MASK 0xffffff00
8883#define NV50_COMPUTE_QUERY_ADDRESS_HIGH 0x00000310
8884#define NV50_COMPUTE_QUERY_ADDRESS_LOW 0x00000314
8885#define NV50_COMPUTE_QUERY_COUNTER 0x00000318
8886#define NV50_COMPUTE_QUERY_GET 0x0000031c
8887#define NV50_COMPUTE_COND_ADDRESS_HIGH 0x00000320
8888#define NV50_COMPUTE_COND_ADDRESS_LOW 0x00000324
8889#define NV50_COMPUTE_COND_MODE 0x00000328
8890#define NV50_COMPUTE_COND_MODE_NEVER 0x00000000
8891#define NV50_COMPUTE_COND_MODE_ALWAYS 0x00000001
8892#define NV50_COMPUTE_COND_MODE_RES 0x00000002
8893#define NV50_COMPUTE_COND_MODE_NOT_RES_AND_NOT_ID 0x00000003
8894#define NV50_COMPUTE_COND_MODE_RES_OR_ID 0x00000004
8895#define NV50_COMPUTE_LAUNCH 0x00000368
8487#define NV50_COMPUTE_USER_PARAM_COUNT 0x00000374 8896#define NV50_COMPUTE_USER_PARAM_COUNT 0x00000374
8488#define NV50_COMPUTE_GRIDDIM_YX 0x000003a4 8897#define NV50_COMPUTE_USER_PARAM_COUNT_COUNT_SHIFT 8
8898#define NV50_COMPUTE_USER_PARAM_COUNT_COUNT_MASK 0x0000ff00
8899#define NV50_COMPUTE_LINKED_TSC 0x00000378
8900#define NV50_COMPUTE_CODE_CB_FLUSH 0x00000380
8901#define NV50_COMPUTE_GRIDDIM 0x000003a4
8902#define NV50_COMPUTE_GRIDDIM_X_SHIFT 0
8903#define NV50_COMPUTE_GRIDDIM_X_MASK 0x0000ffff
8904#define NV50_COMPUTE_GRIDDIM_Y_SHIFT 16
8905#define NV50_COMPUTE_GRIDDIM_Y_MASK 0xffff0000
8489#define NV50_COMPUTE_SHARED_SIZE 0x000003a8 8906#define NV50_COMPUTE_SHARED_SIZE 0x000003a8
8490#define NV50_COMPUTE_BLOCKDIM_YX 0x000003ac 8907#define NV50_COMPUTE_BLOCKDIM_YX 0x000003ac
8908#define NV50_COMPUTE_BLOCKDIM_YX_X_SHIFT 0
8909#define NV50_COMPUTE_BLOCKDIM_YX_X_MASK 0x0000ffff
8910#define NV50_COMPUTE_BLOCKDIM_YX_Y_SHIFT 16
8911#define NV50_COMPUTE_BLOCKDIM_YX_Y_MASK 0xffff0000
8491#define NV50_COMPUTE_BLOCKDIM_Z 0x000003b0 8912#define NV50_COMPUTE_BLOCKDIM_Z 0x000003b0
8492#define NV50_COMPUTE_CALL_ADDRESS 0x000003b4 8913#define NV50_COMPUTE_CP_START_ID 0x000003b4
8914#define NV50_COMPUTE_WARP_HALVES 0x000003b8
8915#define NV50_COMPUTE_TEX_LIMITS 0x000003bc
8916#define NV50_COMPUTE_TEX_LIMITS_SAMPLERS_LOG2_SHIFT 0
8917#define NV50_COMPUTE_TEX_LIMITS_SAMPLERS_LOG2_MASK 0x0000000f
8918#define NV50_COMPUTE_TEX_LIMITS_TEXTURES_LOG2_SHIFT 4
8919#define NV50_COMPUTE_TEX_LIMITS_TEXTURES_LOG2_MASK 0x000000f0
8920#define NV50_COMPUTE_BIND_TSC 0x000003c0
8921#define NV50_COMPUTE_BIND_TSC_VALID (1 << 0)
8922#define NV50_COMPUTE_BIND_TSC_SAMPLER_SHIFT 4
8923#define NV50_COMPUTE_BIND_TSC_SAMPLER_MASK 0x000000f0
8924#define NV50_COMPUTE_BIND_TSC_TSC_SHIFT 12
8925#define NV50_COMPUTE_BIND_TSC_TSC_MASK 0x001ff000
8926#define NV50_COMPUTE_BIND_TIC 0x000003c4
8927#define NV50_COMPUTE_BIND_TIC_VALID (1 << 0)
8928#define NV50_COMPUTE_BIND_TIC_TEXTURE_SHIFT 1
8929#define NV50_COMPUTE_BIND_TIC_TEXTURE_MASK 0x000001fe
8930#define NV50_COMPUTE_BIND_TIC_TIC_SHIFT 9
8931#define NV50_COMPUTE_BIND_TIC_TIC_MASK 0x7ffffe00
8932#define NV50_COMPUTE_SET_PROGRAM_CB 0x000003c8
8933#define NV50_COMPUTE_SET_PROGRAM_CB_INDEX_SHIFT 8
8934#define NV50_COMPUTE_SET_PROGRAM_CB_INDEX_MASK 0x00000f00
8935#define NV50_COMPUTE_SET_PROGRAM_CB_BUFFER_SHIFT 12
8936#define NV50_COMPUTE_SET_PROGRAM_CB_BUFFER_MASK 0x0007f000
8937#define NV50_COMPUTE_SET_PROGRAM_CB_VALID (1 << 0)
8493#define NV50_COMPUTE_GLOBAL_BASE_HIGH(x) (0x00000400+((x)*32)) 8938#define NV50_COMPUTE_GLOBAL_BASE_HIGH(x) (0x00000400+((x)*32))
8494#define NV50_COMPUTE_GLOBAL_BASE_HIGH__SIZE 0x00000010 8939#define NV50_COMPUTE_GLOBAL_BASE_HIGH__SIZE 0x00000010
8495#define NV50_COMPUTE_GLOBAL_BASE_LOW(x) (0x00000404+((x)*32)) 8940#define NV50_COMPUTE_GLOBAL_BASE_LOW(x) (0x00000404+((x)*32))
8496#define NV50_COMPUTE_GLOBAL_BASE_LOW__SIZE 0x00000010 8941#define NV50_COMPUTE_GLOBAL_BASE_LOW__SIZE 0x00000010
8497#define NV50_COMPUTE_GLOBAL_LIMIT_HIGH(x) (0x00000408+((x)*32)) 8942#define NV50_COMPUTE_GLOBAL_PITCH(x) (0x00000408+((x)*32))
8498#define NV50_COMPUTE_GLOBAL_LIMIT_HIGH__SIZE 0x00000010 8943#define NV50_COMPUTE_GLOBAL_PITCH__SIZE 0x00000010
8499#define NV50_COMPUTE_GLOBAL_LIMIT_LOW(x) (0x0000040c+((x)*32)) 8944#define NV50_COMPUTE_GLOBAL_LIMIT(x) (0x0000040c+((x)*32))
8500#define NV50_COMPUTE_GLOBAL_LIMIT_LOW__SIZE 0x00000010 8945#define NV50_COMPUTE_GLOBAL_LIMIT__SIZE 0x00000010
8501#define NV50_COMPUTE_GLOBAL_UNK(x) (0x00000410+((x)*32)) 8946#define NV50_COMPUTE_GLOBAL_MODE(x) (0x00000410+((x)*32))
8502#define NV50_COMPUTE_GLOBAL_UNK__SIZE 0x00000010 8947#define NV50_COMPUTE_GLOBAL_MODE__SIZE 0x00000010
8948#define NV50_COMPUTE_GLOBAL_MODE_LINEAR (1 << 0)
8949#define NV50_COMPUTE_GLOBAL_MODE_TILE_MODE_SHIFT 8
8950#define NV50_COMPUTE_GLOBAL_MODE_TILE_MODE_MASK 0x00000f00
8503#define NV50_COMPUTE_USER_PARAM(x) (0x00000600+((x)*4)) 8951#define NV50_COMPUTE_USER_PARAM(x) (0x00000600+((x)*4))
8504#define NV50_COMPUTE_USER_PARAM__SIZE 0x00000040 8952#define NV50_COMPUTE_USER_PARAM__SIZE 0x00000040
8505 8953
8506 8954
8507#define NV54TCL 0x00008297 8955#define NV84TCL 0x00008297
8508 8956
8509 8957
8510 8958
@@ -8512,4 +8960,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8512 8960
8513 8961
8514 8962
8963#define NVA8TCL 0x00008597
8964
8965
8966
8515#endif /* NOUVEAU_REG_H */ 8967#endif /* NOUVEAU_REG_H */