summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/nouveau/core/engine/disp/nvf0.c
diff options
context:
space:
mode:
authorMaarten Lankhorst2013-06-27 09:35:53 +0200
committerBen Skeggs2013-07-01 05:50:50 +0200
commit791dc143ed2c441f5202d8721609d94dce9fcf88 (patch)
tree216e356ae9c18704f345ec7b464af3c0050c21f8 /drivers/gpu/drm/nouveau/core/engine/disp/nvf0.c
parentdrm/gr/nvc0-: merge nvc0/nve0 ucode, and use cpp instead of m4 (diff)
downloadkernel-qcow2-linux-791dc143ed2c441f5202d8721609d94dce9fcf88.tar.gz
kernel-qcow2-linux-791dc143ed2c441f5202d8721609d94dce9fcf88.tar.xz
kernel-qcow2-linux-791dc143ed2c441f5202d8721609d94dce9fcf88.zip
drm/nvd0-/disp: handle case where display engine is missing/disabled
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/core/engine/disp/nvf0.c')
-rw-r--r--drivers/gpu/drm/nouveau/core/engine/disp/nvf0.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/core/engine/disp/nvf0.c b/drivers/gpu/drm/nouveau/core/engine/disp/nvf0.c
index a488c36e40f9..42aa6b97dbea 100644
--- a/drivers/gpu/drm/nouveau/core/engine/disp/nvf0.c
+++ b/drivers/gpu/drm/nouveau/core/engine/disp/nvf0.c
@@ -54,6 +54,9 @@ nvf0_disp_ctor(struct nouveau_object *parent, struct nouveau_object *engine,
int heads = nv_rd32(parent, 0x022448);
int ret;
+ if (nv_rd32(parent, 0x022500) & 0x00000001)
+ return -ENODEV;
+
ret = nouveau_disp_create(parent, engine, oclass, heads,
"PDISP", "display", &priv);
*pobject = nv_object(priv);