From: Ben Skeggs Date: Fri, 14 Oct 2011 04:43:20 +0000 (+1000) Subject: drm/nv50/disp: disconnect encoders before reprogramming them X-Git-Tag: v3.3-rc1~121^2~51^2~74 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=7ae494e80c8bbad71a968a816d06cf83da4e9b93;p=karo-tx-linux.git drm/nv50/disp: disconnect encoders before reprogramming them Fixes a case where we don't get separate supervisor interrupt sequences for disconnect and modeset events. Signed-off-by: Ben Skeggs --- diff --git a/drivers/gpu/drm/nouveau/nv50_dac.c b/drivers/gpu/drm/nouveau/nv50_dac.c index 808f3ec8f827..a0f2bebf49e3 100644 --- a/drivers/gpu/drm/nouveau/nv50_dac.c +++ b/drivers/gpu/drm/nouveau/nv50_dac.c @@ -199,11 +199,6 @@ nv50_dac_mode_fixup(struct drm_encoder *encoder, struct drm_display_mode *mode, return true; } -static void -nv50_dac_prepare(struct drm_encoder *encoder) -{ -} - static void nv50_dac_commit(struct drm_encoder *encoder) { @@ -266,7 +261,7 @@ static const struct drm_encoder_helper_funcs nv50_dac_helper_funcs = { .save = nv50_dac_save, .restore = nv50_dac_restore, .mode_fixup = nv50_dac_mode_fixup, - .prepare = nv50_dac_prepare, + .prepare = nv50_dac_disconnect, .commit = nv50_dac_commit, .mode_set = nv50_dac_mode_set, .get_crtc = nv50_dac_crtc_get, diff --git a/drivers/gpu/drm/nouveau/nv50_sor.c b/drivers/gpu/drm/nouveau/nv50_sor.c index da603b1d8e3f..3fab98a2f959 100644 --- a/drivers/gpu/drm/nouveau/nv50_sor.c +++ b/drivers/gpu/drm/nouveau/nv50_sor.c @@ -174,6 +174,7 @@ nv50_sor_mode_fixup(struct drm_encoder *encoder, struct drm_display_mode *mode, static void nv50_sor_prepare(struct drm_encoder *encoder) { + nv50_sor_disconnect(encoder); } static void