summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/nouveau/dispnv50/disp.c
diff options
context:
space:
mode:
authorBen Skeggs2018-05-08 12:39:48 +0200
committerBen Skeggs2018-05-18 07:01:46 +0200
commitfacaed62b4cba3a6334fc1798fa8f51ea6a1962d (patch)
tree5c05fb78990e9a0b920312974c8d2ab61411b3bb /drivers/gpu/drm/nouveau/dispnv50/disp.c
parentdrm/nouveau/disp/gv100: initial support (diff)
downloadkernel-qcow2-linux-facaed62b4cba3a6334fc1798fa8f51ea6a1962d.tar.gz
kernel-qcow2-linux-facaed62b4cba3a6334fc1798fa8f51ea6a1962d.tar.xz
kernel-qcow2-linux-facaed62b4cba3a6334fc1798fa8f51ea6a1962d.zip
drm/nouveau/kms/gv100: initial support
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/dispnv50/disp.c')
-rw-r--r--drivers/gpu/drm/nouveau/dispnv50/disp.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/dispnv50/disp.c b/drivers/gpu/drm/nouveau/dispnv50/disp.c
index 6c860e8b1b16..b83465ae7c1b 100644
--- a/drivers/gpu/drm/nouveau/dispnv50/disp.c
+++ b/drivers/gpu/drm/nouveau/dispnv50/disp.c
@@ -154,6 +154,9 @@ nv50_dmac_create(struct nvif_device *device, struct nvif_object *disp,
if (ret)
return ret;
+ if (!syncbuf)
+ return 0;
+
ret = nvif_object_init(&dmac->base.user, 0xf0000000, NV_DMA_IN_MEMORY,
&(struct nv_dma_v0) {
.target = NV_DMA_V0_TARGET_VRAM,
@@ -2170,6 +2173,9 @@ nv50_display_create(struct drm_device *dev)
goto out;
/* create crtc objects to represent the hw heads */
+ if (disp->disp->object.oclass >= GV100_DISP)
+ crtcs = nvif_rd32(&device->object, 0x610060) & 0xff;
+ else
if (disp->disp->object.oclass >= GF110_DISP)
crtcs = nvif_rd32(&device->object, 0x612004) & 0xf;
else