From a875598d9e0f2e5d0f5a9b7cf0e2cbfebf2cab94 Mon Sep 17 00:00:00 2001 From: Arthur Huillet Date: Thu, 25 Apr 2024 17:57:47 +0200 Subject: [PATCH] nvk: update 3d classes for conservative raster Signed-off-by: Arthur Huillet Reviewed-by: Mary Guillemard Part-of: --- src/nouveau/headers/nvidia/classes/clb197.h | 5 ++++ src/nouveau/headers/nvidia/classes/clc097.h | 5 ++++ src/nouveau/headers/nvidia/classes/clc197.h | 5 ++++ src/nouveau/headers/nvidia/classes/clc397.h | 29 +++++++++++++++++++++ src/nouveau/headers/nvidia/classes/clc597.h | 29 +++++++++++++++++++++ src/nouveau/headers/nvidia/classes/clc697.h | 29 +++++++++++++++++++++ src/nouveau/headers/nvidia/classes/clc797.h | 29 +++++++++++++++++++++ src/nouveau/headers/nvidia/classes/clc997.h | 29 +++++++++++++++++++++ src/nouveau/headers/nvidia/classes/clcb97.h | 29 +++++++++++++++++++++ 9 files changed, 189 insertions(+) diff --git a/src/nouveau/headers/nvidia/classes/clb197.h b/src/nouveau/headers/nvidia/classes/clb197.h index f8c976c93d7..6ba793e8f4b 100644 --- a/src/nouveau/headers/nvidia/classes/clb197.h +++ b/src/nouveau/headers/nvidia/classes/clb197.h @@ -1833,6 +1833,11 @@ #define NVB197_FLUSH_PENDING_WRITES 0x1144 #define NVB197_FLUSH_PENDING_WRITES_SM_DOES_GLOBAL_STORE 0:0 +#define NVB197_SET_CONSERVATIVE_RASTER 0x1148 +#define NVB197_SET_CONSERVATIVE_RASTER_ENABLE 0:0 +#define NVB197_SET_CONSERVATIVE_RASTER_ENABLE_FALSE 0x00000000 +#define NVB197_SET_CONSERVATIVE_RASTER_ENABLE_TRUE 0x00000001 + #define NVB197_SET_VERTEX_ATTRIBUTE_A(i) (0x1160+(i)*4) #define NVB197_SET_VERTEX_ATTRIBUTE_A_STREAM 4:0 #define NVB197_SET_VERTEX_ATTRIBUTE_A_SOURCE 6:6 diff --git a/src/nouveau/headers/nvidia/classes/clc097.h b/src/nouveau/headers/nvidia/classes/clc097.h index 129056b4c43..aee6ca3f460 100644 --- a/src/nouveau/headers/nvidia/classes/clc097.h +++ b/src/nouveau/headers/nvidia/classes/clc097.h @@ -1833,6 +1833,11 @@ #define NVC097_FLUSH_PENDING_WRITES 0x1144 #define NVC097_FLUSH_PENDING_WRITES_SM_DOES_GLOBAL_STORE 0:0 +#define NVC097_SET_CONSERVATIVE_RASTER 0x1148 +#define NVC097_SET_CONSERVATIVE_RASTER_ENABLE 0:0 +#define NVC097_SET_CONSERVATIVE_RASTER_ENABLE_FALSE 0x00000000 +#define NVC097_SET_CONSERVATIVE_RASTER_ENABLE_TRUE 0x00000001 + #define NVC097_SET_VERTEX_ATTRIBUTE_A(i) (0x1160+(i)*4) #define NVC097_SET_VERTEX_ATTRIBUTE_A_STREAM 4:0 #define NVC097_SET_VERTEX_ATTRIBUTE_A_SOURCE 6:6 diff --git a/src/nouveau/headers/nvidia/classes/clc197.h b/src/nouveau/headers/nvidia/classes/clc197.h index b03d7352500..2d4a9598f3e 100644 --- a/src/nouveau/headers/nvidia/classes/clc197.h +++ b/src/nouveau/headers/nvidia/classes/clc197.h @@ -1879,6 +1879,11 @@ #define NVC197_FLUSH_PENDING_WRITES 0x1144 #define NVC197_FLUSH_PENDING_WRITES_SM_DOES_GLOBAL_STORE 0:0 +#define NVC197_SET_CONSERVATIVE_RASTER 0x1148 +#define NVC197_SET_CONSERVATIVE_RASTER_ENABLE 0:0 +#define NVC197_SET_CONSERVATIVE_RASTER_ENABLE_FALSE 0x00000000 +#define NVC197_SET_CONSERVATIVE_RASTER_ENABLE_TRUE 0x00000001 + #define NVC197_SET_VERTEX_ATTRIBUTE_A(i) (0x1160+(i)*4) #define NVC197_SET_VERTEX_ATTRIBUTE_A_STREAM 4:0 #define NVC197_SET_VERTEX_ATTRIBUTE_A_SOURCE 6:6 diff --git a/src/nouveau/headers/nvidia/classes/clc397.h b/src/nouveau/headers/nvidia/classes/clc397.h index 2122c75ca75..ec69b957087 100644 --- a/src/nouveau/headers/nvidia/classes/clc397.h +++ b/src/nouveau/headers/nvidia/classes/clc397.h @@ -303,6 +303,30 @@ #define NVC397_SET_GO_IDLE_TIMEOUT 0x022c #define NVC397_SET_GO_IDLE_TIMEOUT_V 31:0 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL 0x0230 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT 3:0 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_0 0x00000000 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_25 0x00000001 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_50 0x00000002 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_75 0x00000003 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_PRI 0x00000004 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER 4:4 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_FALSE 0x00000000 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_TRUE 0x00000001 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE 10:8 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRI 0x00000002 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE 14:12 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRI 0x00000002 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE 19:16 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_64 0x00000000 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_128 0x00000001 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_256 0x00000002 +#define NVC397_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_512 0x00000003 + #define NVC397_SET_MME_VERSION 0x0234 #define NVC397_SET_MME_VERSION_MAJOR 7:0 @@ -1848,6 +1872,11 @@ #define NVC397_FLUSH_PENDING_WRITES 0x1144 #define NVC397_FLUSH_PENDING_WRITES_SM_DOES_GLOBAL_STORE 0:0 +#define NVC397_SET_CONSERVATIVE_RASTER 0x1148 +#define NVC397_SET_CONSERVATIVE_RASTER_ENABLE 0:0 +#define NVC397_SET_CONSERVATIVE_RASTER_ENABLE_FALSE 0x00000000 +#define NVC397_SET_CONSERVATIVE_RASTER_ENABLE_TRUE 0x00000001 + #define NVC397_SET_VERTEX_ATTRIBUTE_A(i) (0x1160+(i)*4) #define NVC397_SET_VERTEX_ATTRIBUTE_A_STREAM 4:0 #define NVC397_SET_VERTEX_ATTRIBUTE_A_SOURCE 6:6 diff --git a/src/nouveau/headers/nvidia/classes/clc597.h b/src/nouveau/headers/nvidia/classes/clc597.h index 711dae10119..83a4ed36caa 100644 --- a/src/nouveau/headers/nvidia/classes/clc597.h +++ b/src/nouveau/headers/nvidia/classes/clc597.h @@ -303,6 +303,30 @@ #define NVC597_SET_GO_IDLE_TIMEOUT 0x022c #define NVC597_SET_GO_IDLE_TIMEOUT_V 31:0 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL 0x0230 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT 3:0 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_0 0x00000000 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_25 0x00000001 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_50 0x00000002 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_75 0x00000003 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_PRI 0x00000004 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER 4:4 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_FALSE 0x00000000 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_TRUE 0x00000001 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE 10:8 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRI 0x00000002 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE 14:12 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRI 0x00000002 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE 19:16 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_64 0x00000000 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_128 0x00000001 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_256 0x00000002 +#define NVC597_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_512 0x00000003 + #define NVC597_SET_MME_VERSION 0x0234 #define NVC597_SET_MME_VERSION_MAJOR 7:0 @@ -1996,6 +2020,11 @@ #define NVC597_FLUSH_PENDING_WRITES 0x1144 #define NVC597_FLUSH_PENDING_WRITES_SM_DOES_GLOBAL_STORE 0:0 +#define NVC597_SET_CONSERVATIVE_RASTER 0x1148 +#define NVC597_SET_CONSERVATIVE_RASTER_ENABLE 0:0 +#define NVC597_SET_CONSERVATIVE_RASTER_ENABLE_FALSE 0x00000000 +#define NVC597_SET_CONSERVATIVE_RASTER_ENABLE_TRUE 0x00000001 + #define NVC597_SET_VERTEX_ATTRIBUTE_A(i) (0x1160+(i)*4) #define NVC597_SET_VERTEX_ATTRIBUTE_A_STREAM 4:0 #define NVC597_SET_VERTEX_ATTRIBUTE_A_SOURCE 6:6 diff --git a/src/nouveau/headers/nvidia/classes/clc697.h b/src/nouveau/headers/nvidia/classes/clc697.h index a8b447e657e..03b434a2c73 100644 --- a/src/nouveau/headers/nvidia/classes/clc697.h +++ b/src/nouveau/headers/nvidia/classes/clc697.h @@ -303,6 +303,30 @@ #define NVC697_SET_GO_IDLE_TIMEOUT 0x022c #define NVC697_SET_GO_IDLE_TIMEOUT_V 31:0 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL 0x0230 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT 3:0 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_0 0x00000000 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_25 0x00000001 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_50 0x00000002 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_75 0x00000003 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_PRI 0x00000004 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER 4:4 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_FALSE 0x00000000 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_TRUE 0x00000001 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE 10:8 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRI 0x00000002 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE 14:12 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRI 0x00000002 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE 19:16 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_64 0x00000000 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_128 0x00000001 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_256 0x00000002 +#define NVC697_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_512 0x00000003 + #define NVC697_SET_MME_VERSION 0x0234 #define NVC697_SET_MME_VERSION_MAJOR 7:0 @@ -1996,6 +2020,11 @@ #define NVC697_FLUSH_PENDING_WRITES 0x1144 #define NVC697_FLUSH_PENDING_WRITES_SM_DOES_GLOBAL_STORE 0:0 +#define NVC697_SET_CONSERVATIVE_RASTER 0x1148 +#define NVC697_SET_CONSERVATIVE_RASTER_ENABLE 0:0 +#define NVC697_SET_CONSERVATIVE_RASTER_ENABLE_FALSE 0x00000000 +#define NVC697_SET_CONSERVATIVE_RASTER_ENABLE_TRUE 0x00000001 + #define NVC697_SET_VERTEX_ATTRIBUTE_A(i) (0x1160+(i)*4) #define NVC697_SET_VERTEX_ATTRIBUTE_A_STREAM 4:0 #define NVC697_SET_VERTEX_ATTRIBUTE_A_SOURCE 6:6 diff --git a/src/nouveau/headers/nvidia/classes/clc797.h b/src/nouveau/headers/nvidia/classes/clc797.h index dc4b6001cef..88a8b78343e 100644 --- a/src/nouveau/headers/nvidia/classes/clc797.h +++ b/src/nouveau/headers/nvidia/classes/clc797.h @@ -411,6 +411,30 @@ #define NVC797_SET_GO_IDLE_TIMEOUT 0x022c #define NVC797_SET_GO_IDLE_TIMEOUT_V 31:0 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL 0x0230 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT 3:0 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_0 0x00000000 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_25 0x00000001 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_50 0x00000002 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_75 0x00000003 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_PRI 0x00000004 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER 4:4 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_FALSE 0x00000000 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_TRUE 0x00000001 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE 10:8 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRI 0x00000002 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE 14:12 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRI 0x00000002 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE 19:16 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_64 0x00000000 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_128 0x00000001 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_256 0x00000002 +#define NVC797_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_512 0x00000003 + #define NVC797_SET_MME_VERSION 0x0234 #define NVC797_SET_MME_VERSION_MAJOR 7:0 @@ -2124,6 +2148,11 @@ #define NVC797_FLUSH_PENDING_WRITES 0x1144 #define NVC797_FLUSH_PENDING_WRITES_SM_DOES_GLOBAL_STORE 0:0 +#define NVC797_SET_CONSERVATIVE_RASTER 0x1148 +#define NVC797_SET_CONSERVATIVE_RASTER_ENABLE 0:0 +#define NVC797_SET_CONSERVATIVE_RASTER_ENABLE_FALSE 0x00000000 +#define NVC797_SET_CONSERVATIVE_RASTER_ENABLE_TRUE 0x00000001 + #define NVC797_SET_VERTEX_ATTRIBUTE_A(i) (0x1160+(i)*4) #define NVC797_SET_VERTEX_ATTRIBUTE_A_STREAM 4:0 #define NVC797_SET_VERTEX_ATTRIBUTE_A_SOURCE 6:6 diff --git a/src/nouveau/headers/nvidia/classes/clc997.h b/src/nouveau/headers/nvidia/classes/clc997.h index 81607be8dc4..373211004f1 100644 --- a/src/nouveau/headers/nvidia/classes/clc997.h +++ b/src/nouveau/headers/nvidia/classes/clc997.h @@ -411,6 +411,30 @@ #define NVC997_SET_GO_IDLE_TIMEOUT 0x022c #define NVC997_SET_GO_IDLE_TIMEOUT_V 31:0 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL 0x0230 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT 3:0 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_0 0x00000000 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_25 0x00000001 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_50 0x00000002 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_75 0x00000003 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_PRI 0x00000004 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER 4:4 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_FALSE 0x00000000 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_TRUE 0x00000001 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE 10:8 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRI 0x00000002 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE 14:12 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRI 0x00000002 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE 19:16 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_64 0x00000000 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_128 0x00000001 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_256 0x00000002 +#define NVC997_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_512 0x00000003 + #define NVC997_SET_MME_VERSION 0x0234 #define NVC997_SET_MME_VERSION_MAJOR 7:0 @@ -2124,6 +2148,11 @@ #define NVC997_FLUSH_PENDING_WRITES 0x1144 #define NVC997_FLUSH_PENDING_WRITES_SM_DOES_GLOBAL_STORE 0:0 +#define NVC997_SET_CONSERVATIVE_RASTER 0x1148 +#define NVC997_SET_CONSERVATIVE_RASTER_ENABLE 0:0 +#define NVC997_SET_CONSERVATIVE_RASTER_ENABLE_FALSE 0x00000000 +#define NVC997_SET_CONSERVATIVE_RASTER_ENABLE_TRUE 0x00000001 + #define NVC997_SET_VERTEX_ATTRIBUTE_A(i) (0x1160+(i)*4) #define NVC997_SET_VERTEX_ATTRIBUTE_A_STREAM 4:0 #define NVC997_SET_VERTEX_ATTRIBUTE_A_SOURCE 6:6 diff --git a/src/nouveau/headers/nvidia/classes/clcb97.h b/src/nouveau/headers/nvidia/classes/clcb97.h index 7528a2d8e6d..916f2d0146d 100644 --- a/src/nouveau/headers/nvidia/classes/clcb97.h +++ b/src/nouveau/headers/nvidia/classes/clcb97.h @@ -411,6 +411,30 @@ #define NVCB97_SET_GO_IDLE_TIMEOUT 0x022c #define NVCB97_SET_GO_IDLE_TIMEOUT_V 31:0 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL 0x0230 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT 3:0 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_0 0x00000000 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_25 0x00000001 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_50 0x00000002 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_75 0x00000003 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_EXTRA_PRIM_BLOAT_BLOAT_PRI 0x00000004 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER 4:4 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_FALSE 0x00000000 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_COPY_INNER_TO_OUTER_TRUE 0x00000001 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE 10:8 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_TRIANGLE_SNAP_MODE_MODE_PRI 0x00000002 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE 14:12 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_POST_SNAP 0x00000000 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRE_SNAP 0x00000001 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_LINE_AND_POINT_SNAP_MODE_MODE_PRI 0x00000002 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE 19:16 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_64 0x00000000 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_128 0x00000001 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_256 0x00000002 +#define NVCB97_SET_CONSERVATIVE_RASTER_CONTROL_UNCERTAINTY_REGION_SIZE_SIZE_512 0x00000003 + #define NVCB97_SET_MME_VERSION 0x0234 #define NVCB97_SET_MME_VERSION_MAJOR 7:0 @@ -2123,6 +2147,11 @@ #define NVCB97_FLUSH_PENDING_WRITES 0x1144 #define NVCB97_FLUSH_PENDING_WRITES_SM_DOES_GLOBAL_STORE 0:0 +#define NVCB97_SET_CONSERVATIVE_RASTER 0x1148 +#define NVCB97_SET_CONSERVATIVE_RASTER_ENABLE 0:0 +#define NVCB97_SET_CONSERVATIVE_RASTER_ENABLE_FALSE 0x00000000 +#define NVCB97_SET_CONSERVATIVE_RASTER_ENABLE_TRUE 0x00000001 + #define NVCB97_SET_VERTEX_ATTRIBUTE_A(i) (0x1160+(i)*4) #define NVCB97_SET_VERTEX_ATTRIBUTE_A_STREAM 4:0 #define NVCB97_SET_VERTEX_ATTRIBUTE_A_SOURCE 6:6