summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThierry Reding <treding@nvidia.com>2018-11-30 12:50:32 +0100
committerThierry Reding <treding@nvidia.com>2019-12-04 12:00:11 +0100
commit4b3e7db671883b74267cdf8a5e7034d08b658d81 (patch)
tree5446a802016d188f9eeb2cb7155536ed072b7e83
parent2555cd14055621b3915930ddaecd6421006f8f1b (diff)
nouveau: Add support for Volta
Signed-off-by: Thierry Reding <treding@nvidia.com>
-rw-r--r--src/gallium/drivers/nouveau/nv_object.xml.h1
-rw-r--r--src/gallium/drivers/nouveau/nvc0/nvc0_screen.c5
-rw-r--r--src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c1
3 files changed, 7 insertions, 0 deletions
diff --git a/src/gallium/drivers/nouveau/nv_object.xml.h b/src/gallium/drivers/nouveau/nv_object.xml.h
index 664bfae9f64..67c409122dd 100644
--- a/src/gallium/drivers/nouveau/nv_object.xml.h
+++ b/src/gallium/drivers/nouveau/nv_object.xml.h
@@ -195,6 +195,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#define GM200_3D_CLASS 0x0000b197
#define GP100_3D_CLASS 0x0000c097
#define GP102_3D_CLASS 0x0000c197
+#define GV100_3D_CLASS 0x0000c397
#define NV50_2D_CLASS 0x0000502d
#define NVC0_2D_CLASS 0x0000902d
#define NV50_COMPUTE_CLASS 0x000050c0
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
index 389b7531756..abc57e024af 100644
--- a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
+++ b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
@@ -1016,6 +1016,7 @@ nvc0_screen_create(struct nouveau_device *dev)
case 0x110:
case 0x120:
case 0x130:
+ case 0x150:
break;
default:
return NULL;
@@ -1092,6 +1093,7 @@ nvc0_screen_create(struct nouveau_device *dev)
PUSH_DATA (push, screen->nvsw->handle);
switch (dev->chipset & ~0xf) {
+ case 0x150:
case 0x130:
case 0x120:
case 0x110:
@@ -1145,6 +1147,9 @@ nvc0_screen_create(struct nouveau_device *dev)
PUSH_DATA (push, screen->fence.bo->offset + 16);
switch (dev->chipset & ~0xf) {
+ case 0x150:
+ obj_class = GV100_3D_CLASS;
+ break;
case 0x130:
switch (dev->chipset) {
case 0x130:
diff --git a/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c b/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c
index 3e790aa65d5..a2094794c3b 100644
--- a/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c
+++ b/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c
@@ -125,6 +125,7 @@ nouveau_drm_screen_create(int fd)
case 0x110:
case 0x120:
case 0x130:
+ case 0x150:
init = nvc0_screen_create;
break;
default: