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 <r...@gentoo.org> Tested-by: Richard Yao <r...@gentoo.org> Signed-off-by: Marcin Slusarz <marcin.slus...@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 _______________________________________________ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau