Message ID | 20220203183823.22890-2-ville.syrjala@linux.intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915: Use a bitmask for bigjoiner state tracking | expand |
On Thu, Feb 03, 2022 at 08:38:14PM +0200, Ville Syrjala wrote: > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > The core doesn't flag scaling_filter prop changes as needing > a modeset. That doesn't work for us since we only reprogram the > pipe scaler during full modesets and fastsets. So we need to > flag the prop change as a modeset ourselves. Assuming nothing else > has changed the operation will get promoted (demoted?) to a fastset > later. > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Makes sense, although not sure why this was sent as part of bigjoiner bitmask series Reviewed-by: Manasi Navare <manasi.d.navare@intel.com> Manasi > --- > drivers/gpu/drm/i915/display/intel_display.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > index df347329d90e..85dce8a093d4 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.c > +++ b/drivers/gpu/drm/i915/display/intel_display.c > @@ -7846,6 +7846,10 @@ static int intel_atomic_check(struct drm_device *dev, > new_crtc_state, i) { > if (new_crtc_state->inherited != old_crtc_state->inherited) > new_crtc_state->uapi.mode_changed = true; > + > + if (new_crtc_state->uapi.scaling_filter != > + old_crtc_state->uapi.scaling_filter) > + new_crtc_state->uapi.mode_changed = true; > } > > intel_vrr_check_modeset(state); > -- > 2.34.1 >
On Thu, Feb 03, 2022 at 01:58:01PM -0800, Navare, Manasi wrote: > On Thu, Feb 03, 2022 at 08:38:14PM +0200, Ville Syrjala wrote: > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > > > The core doesn't flag scaling_filter prop changes as needing > > a modeset. That doesn't work for us since we only reprogram the > > pipe scaler during full modesets and fastsets. So we need to > > flag the prop change as a modeset ourselves. Assuming nothing else > > has changed the operation will get promoted (demoted?) to a fastset > > later. > > > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Makes sense, although not sure why this was sent as part of bigjoiner bitmask series Because I noticed it while examining the bigjoiner state copy mess. > > Reviewed-by: Manasi Navare <manasi.d.navare@intel.com> Thanks. > > Manasi > > > --- > > drivers/gpu/drm/i915/display/intel_display.c | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > > index df347329d90e..85dce8a093d4 100644 > > --- a/drivers/gpu/drm/i915/display/intel_display.c > > +++ b/drivers/gpu/drm/i915/display/intel_display.c > > @@ -7846,6 +7846,10 @@ static int intel_atomic_check(struct drm_device *dev, > > new_crtc_state, i) { > > if (new_crtc_state->inherited != old_crtc_state->inherited) > > new_crtc_state->uapi.mode_changed = true; > > + > > + if (new_crtc_state->uapi.scaling_filter != > > + old_crtc_state->uapi.scaling_filter) > > + new_crtc_state->uapi.mode_changed = true; > > } > > > > intel_vrr_check_modeset(state); > > -- > > 2.34.1 > >
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index df347329d90e..85dce8a093d4 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -7846,6 +7846,10 @@ static int intel_atomic_check(struct drm_device *dev, new_crtc_state, i) { if (new_crtc_state->inherited != old_crtc_state->inherited) new_crtc_state->uapi.mode_changed = true; + + if (new_crtc_state->uapi.scaling_filter != + old_crtc_state->uapi.scaling_filter) + new_crtc_state->uapi.mode_changed = true; } intel_vrr_check_modeset(state);