On Mon, May 11, 2015 at 04:24:41PM +0200, Maarten Lankhorst wrote: Too terse commit message, especially explaining why the changes in restore_mode are what we want seems appropriate. And mentioning the general replacement is connector->new_encoder -> free_standing_state->best_encoder would be good too, to make restore_mode stand out more. -Daniel > Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/i915/intel_display.c | 16 +++++----------- > drivers/gpu/drm/i915/intel_drv.h | 6 ------ > 2 files changed, 5 insertions(+), 17 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c > index 70269da6a6b8..00b1552a1f91 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -9796,7 +9796,6 @@ retry: > if (ret) > goto fail_unlock; > intel_encoder->new_crtc = to_intel_crtc(crtc); > - to_intel_connector(connector)->new_encoder = intel_encoder; > > intel_crtc = to_intel_crtc(crtc); > intel_crtc->new_enabled = true; > @@ -9915,7 +9914,6 @@ void intel_release_load_detect_pipe(struct drm_connector *connector, > if (IS_ERR(crtc_state)) > goto fail; > > - to_intel_connector(connector)->new_encoder = NULL; > intel_encoder->new_crtc = NULL; > intel_crtc->new_enabled = false; > > @@ -11066,12 +11064,6 @@ static void intel_modeset_update_staged_output_state(struct drm_device *dev) > { > struct intel_crtc *crtc; > struct intel_encoder *encoder; > - struct intel_connector *connector; > - > - for_each_intel_connector(dev, connector) { > - connector->new_encoder = > - to_intel_encoder(connector->base.encoder); > - } > > for_each_intel_encoder(dev, encoder) { > encoder->new_crtc = > @@ -11886,11 +11878,14 @@ check_connector_state(struct drm_device *dev) > struct intel_connector *connector; > > for_each_intel_connector(dev, connector) { > + struct drm_encoder *encoder = connector->base.encoder; > + struct drm_connector_state *state = connector->base.state; > + > /* This also checks the encoder/connector hw state with the > * ->get_hw_state callbacks. */ > intel_connector_check_state(connector); > > - I915_STATE_WARN(&connector->new_encoder->base != connector->base.encoder, > + I915_STATE_WARN(state->best_encoder != encoder, > "connector's staged encoder doesn't match current encoder\n"); > } > } > @@ -12410,7 +12405,7 @@ void intel_crtc_restore_mode(struct drm_crtc *crtc) > continue; > > for_each_intel_connector(dev, connector) { > - if (connector->new_encoder != encoder) > + if (connector->base.state->best_encoder != &encoder->base) > continue; > > connector_state = drm_atomic_get_connector_state(state, &connector->base); > @@ -12423,7 +12418,6 @@ void intel_crtc_restore_mode(struct drm_crtc *crtc) > } > > connector_state->crtc = crtc; > - connector_state->best_encoder = &encoder->base; > } > } > > diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h > index 7390fe9ba97d..44d1de9ee2db 100644 > --- a/drivers/gpu/drm/i915/intel_drv.h > +++ b/drivers/gpu/drm/i915/intel_drv.h > @@ -195,12 +195,6 @@ struct intel_connector { > */ > struct intel_encoder *encoder; > > - /* > - * The new encoder this connector will be driven. Only differs from > - * encoder while a modeset is in progress. > - */ > - struct intel_encoder *new_encoder; > - > /* Reads out the current hw, returning true if the connector is enabled > * and active (i.e. dpms ON state). */ > bool (*get_hw_state)(struct intel_connector *); > -- > 2.1.0 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx