Message ID | 1431354318-11995-7-git-send-email-maarten.lankhorst@linux.intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, May 11, 2015 at 04:24:42PM +0200, Maarten Lankhorst wrote: > Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Same comment about the terse commit message as in the previous patch. > --- > drivers/gpu/drm/i915/intel_display.c | 15 ++++----------- > drivers/gpu/drm/i915/intel_drv.h | 5 ----- > 2 files changed, 4 insertions(+), 16 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c > index 00b1552a1f91..a9ce827601d8 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -9795,7 +9795,6 @@ retry: > ret = drm_modeset_lock(&crtc->primary->mutex, ctx); > if (ret) > goto fail_unlock; > - intel_encoder->new_crtc = to_intel_crtc(crtc); > > intel_crtc = to_intel_crtc(crtc); > intel_crtc->new_enabled = true; > @@ -9914,7 +9913,6 @@ void intel_release_load_detect_pipe(struct drm_connector *connector, > if (IS_ERR(crtc_state)) > goto fail; > > - intel_encoder->new_crtc = NULL; > intel_crtc->new_enabled = false; > > connector_state->best_encoder = NULL; > @@ -11063,12 +11061,6 @@ static const struct drm_crtc_helper_funcs intel_helper_funcs = { > static void intel_modeset_update_staged_output_state(struct drm_device *dev) > { > struct intel_crtc *crtc; > - struct intel_encoder *encoder; > - > - for_each_intel_encoder(dev, encoder) { > - encoder->new_crtc = > - to_intel_crtc(encoder->base.crtc); > - } > > for_each_intel_crtc(dev, crtc) { > crtc->new_enabled = crtc->base.state->enable; > @@ -11905,8 +11897,6 @@ check_encoder_state(struct drm_device *dev) > encoder->base.base.id, > encoder->base.name); > > - I915_STATE_WARN(&encoder->new_crtc->base != encoder->base.crtc, > - "encoder's stage crtc doesn't match current crtc\n"); > I915_STATE_WARN(encoder->connectors_active && !encoder->base.crtc, > "encoder's active_connectors set, but no crtc\n"); > > @@ -11916,6 +11906,9 @@ check_encoder_state(struct drm_device *dev) > enabled = true; > if (connector->base.dpms != DRM_MODE_DPMS_OFF) > active = true; > + > + I915_STATE_WARN(connector->base.state->crtc != encoder->base.crtc, > + "encoder's stage crtc doesn't match current crtc\n"); Hm the error message doesn't make that much sense any more. What about "encoder's legacy crtc pointer doesn't match up with connector state"? -Daniel > } > /* > * for MST connectors if we unplug the connector is gone > @@ -12401,7 +12394,7 @@ void intel_crtc_restore_mode(struct drm_crtc *crtc) > * need to copy the staged config to the atomic state, otherwise the > * mode set will just reapply the state the HW is already in. */ > for_each_intel_encoder(dev, encoder) { > - if (&encoder->new_crtc->base != crtc) > + if (encoder->base.crtc != crtc) > continue; > > for_each_intel_connector(dev, connector) { > diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h > index 44d1de9ee2db..f85761494dd1 100644 > --- a/drivers/gpu/drm/i915/intel_drv.h > +++ b/drivers/gpu/drm/i915/intel_drv.h > @@ -130,11 +130,6 @@ struct intel_fbdev { > > struct intel_encoder { > struct drm_encoder base; > - /* > - * The new crtc this encoder will be driven from. Only differs from > - * base->crtc while a modeset is in progress. > - */ > - struct intel_crtc *new_crtc; > > enum intel_output_type type; > unsigned int cloneable; > -- > 2.1.0 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Op 11-05-15 om 19:28 schreef Daniel Vetter: > On Mon, May 11, 2015 at 04:24:42PM +0200, Maarten Lankhorst wrote: >> Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > Same comment about the terse commit message as in the previous patch. > >> --- >> drivers/gpu/drm/i915/intel_display.c | 15 ++++----------- >> drivers/gpu/drm/i915/intel_drv.h | 5 ----- >> 2 files changed, 4 insertions(+), 16 deletions(-) >> >> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c >> index 00b1552a1f91..a9ce827601d8 100644 >> --- a/drivers/gpu/drm/i915/intel_display.c >> +++ b/drivers/gpu/drm/i915/intel_display.c >> @@ -9795,7 +9795,6 @@ retry: >> ret = drm_modeset_lock(&crtc->primary->mutex, ctx); >> if (ret) >> goto fail_unlock; >> - intel_encoder->new_crtc = to_intel_crtc(crtc); >> >> intel_crtc = to_intel_crtc(crtc); >> intel_crtc->new_enabled = true; >> @@ -9914,7 +9913,6 @@ void intel_release_load_detect_pipe(struct drm_connector *connector, >> if (IS_ERR(crtc_state)) >> goto fail; >> >> - intel_encoder->new_crtc = NULL; >> intel_crtc->new_enabled = false; >> >> connector_state->best_encoder = NULL; >> @@ -11063,12 +11061,6 @@ static const struct drm_crtc_helper_funcs intel_helper_funcs = { >> static void intel_modeset_update_staged_output_state(struct drm_device *dev) >> { >> struct intel_crtc *crtc; >> - struct intel_encoder *encoder; >> - >> - for_each_intel_encoder(dev, encoder) { >> - encoder->new_crtc = >> - to_intel_crtc(encoder->base.crtc); >> - } >> >> for_each_intel_crtc(dev, crtc) { >> crtc->new_enabled = crtc->base.state->enable; >> @@ -11905,8 +11897,6 @@ check_encoder_state(struct drm_device *dev) >> encoder->base.base.id, >> encoder->base.name); >> >> - I915_STATE_WARN(&encoder->new_crtc->base != encoder->base.crtc, >> - "encoder's stage crtc doesn't match current crtc\n"); >> I915_STATE_WARN(encoder->connectors_active && !encoder->base.crtc, >> "encoder's active_connectors set, but no crtc\n"); >> >> @@ -11916,6 +11906,9 @@ check_encoder_state(struct drm_device *dev) >> enabled = true; >> if (connector->base.dpms != DRM_MODE_DPMS_OFF) >> active = true; >> + >> + I915_STATE_WARN(connector->base.state->crtc != encoder->base.crtc, >> + "encoder's stage crtc doesn't match current crtc\n"); > Hm the error message doesn't make that much sense any more. What about > "encoder's legacy crtc pointer doesn't match up with connector state"? > Sounds good!
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 00b1552a1f91..a9ce827601d8 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -9795,7 +9795,6 @@ retry: ret = drm_modeset_lock(&crtc->primary->mutex, ctx); if (ret) goto fail_unlock; - intel_encoder->new_crtc = to_intel_crtc(crtc); intel_crtc = to_intel_crtc(crtc); intel_crtc->new_enabled = true; @@ -9914,7 +9913,6 @@ void intel_release_load_detect_pipe(struct drm_connector *connector, if (IS_ERR(crtc_state)) goto fail; - intel_encoder->new_crtc = NULL; intel_crtc->new_enabled = false; connector_state->best_encoder = NULL; @@ -11063,12 +11061,6 @@ static const struct drm_crtc_helper_funcs intel_helper_funcs = { static void intel_modeset_update_staged_output_state(struct drm_device *dev) { struct intel_crtc *crtc; - struct intel_encoder *encoder; - - for_each_intel_encoder(dev, encoder) { - encoder->new_crtc = - to_intel_crtc(encoder->base.crtc); - } for_each_intel_crtc(dev, crtc) { crtc->new_enabled = crtc->base.state->enable; @@ -11905,8 +11897,6 @@ check_encoder_state(struct drm_device *dev) encoder->base.base.id, encoder->base.name); - I915_STATE_WARN(&encoder->new_crtc->base != encoder->base.crtc, - "encoder's stage crtc doesn't match current crtc\n"); I915_STATE_WARN(encoder->connectors_active && !encoder->base.crtc, "encoder's active_connectors set, but no crtc\n"); @@ -11916,6 +11906,9 @@ check_encoder_state(struct drm_device *dev) enabled = true; if (connector->base.dpms != DRM_MODE_DPMS_OFF) active = true; + + I915_STATE_WARN(connector->base.state->crtc != encoder->base.crtc, + "encoder's stage crtc doesn't match current crtc\n"); } /* * for MST connectors if we unplug the connector is gone @@ -12401,7 +12394,7 @@ void intel_crtc_restore_mode(struct drm_crtc *crtc) * need to copy the staged config to the atomic state, otherwise the * mode set will just reapply the state the HW is already in. */ for_each_intel_encoder(dev, encoder) { - if (&encoder->new_crtc->base != crtc) + if (encoder->base.crtc != crtc) continue; for_each_intel_connector(dev, connector) { diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h index 44d1de9ee2db..f85761494dd1 100644 --- a/drivers/gpu/drm/i915/intel_drv.h +++ b/drivers/gpu/drm/i915/intel_drv.h @@ -130,11 +130,6 @@ struct intel_fbdev { struct intel_encoder { struct drm_encoder base; - /* - * The new crtc this encoder will be driven from. Only differs from - * base->crtc while a modeset is in progress. - */ - struct intel_crtc *new_crtc; enum intel_output_type type; unsigned int cloneable;
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> --- drivers/gpu/drm/i915/intel_display.c | 15 ++++----------- drivers/gpu/drm/i915/intel_drv.h | 5 ----- 2 files changed, 4 insertions(+), 16 deletions(-)