summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThierry Reding <treding@nvidia.com>2018-11-30 12:50:32 +0100
committerThierry Reding <treding@nvidia.com>2019-08-23 18:14:49 +0200
commitaecfc014722b88607d8d852f8c110231b83f9d86 (patch)
tree343bcb81e0734031bd13a4caa2f51672ab8c4cb8
parentaec543c25ca9fe88b875eb4b7db98455c2a2253f (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 664bfae9f64b..67c409122dd8 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 fa03b3e950d3..9c35c936942f 100644
--- a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
+++ b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
@@ -1012,6 +1012,7 @@ nvc0_screen_create(struct nouveau_device *dev)
case 0x110:
case 0x120:
case 0x130:
+ case 0x150:
break;
default:
return NULL;
@@ -1088,6 +1089,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:
@@ -1141,6 +1143,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 4ca2d35ea33a..0a012bbb9b10 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: