[Nouveau] [PATCH] drm/nv50/disp: ignore encoder initialization failures

Marcin Slusarz marcin.slusarz at gmail.com
Tue Mar 5 10:57:13 PST 2013


Nouveau does not support all encoder types, so failure to handle one should
not stop module initialization. And because of other bug, it lead to oops
in nv50_crtc_destroy (nv50_display_destroy sets nouveau_display->priv to NULL,
which is used by nv50_crtc_destroy).

Fixes regression from eb6313add6dddf07ea3e50c4caa33a9c3b2379f1
("drm/nv50: initial kms support for off-chip TMDS/DP encoders").

Reported-by: Richard Yao <ryao at gentoo.org>
Tested-by: Richard Yao <ryao at gentoo.org>
Signed-off-by: Marcin Slusarz <marcin.slusarz at gmail.com>
---
 drivers/gpu/drm/nouveau/nv50_display.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/nouveau/nv50_display.c b/drivers/gpu/drm/nouveau/nv50_display.c
index 87a5a56..2db5799 100644
--- a/drivers/gpu/drm/nouveau/nv50_display.c
+++ b/drivers/gpu/drm/nouveau/nv50_display.c
@@ -2276,6 +2276,7 @@ nv50_display_create(struct drm_device *dev)
 			NV_WARN(drm, "failed to create encoder %d/%d/%d: %d\n",
 				     dcbe->location, dcbe->type,
 				     ffs(dcbe->or) - 1, ret);
+			ret = 0;
 		}
 	}
 
-- 
1.8.1.4



More information about the Nouveau mailing list