On Tue, 25 Feb 2025, Jani Nikula <jani.nikula@xxxxxxxxx> wrote: > Add a helper for checking if we want to test display reset regardless of > whether it's strictly necessary. This will come in handy in follow-up > work where we want to check this from gt reset side. > > Cc: Matt Roper <matthew.d.roper@xxxxxxxxx> > Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_display_reset.c | 8 ++++++-- > drivers/gpu/drm/i915/display/intel_display_reset.h | 3 +++ > 2 files changed, 9 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display_reset.c b/drivers/gpu/drm/i915/display/intel_display_reset.c > index cef9536c461c..b7962f90c21c 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_reset.c > +++ b/drivers/gpu/drm/i915/display/intel_display_reset.c > @@ -22,6 +22,11 @@ static bool gpu_reset_clobbers_display(struct intel_display *display) > intel_has_gpu_reset(to_gt(i915))); > } > > +bool intel_display_reset_test(struct intel_display *display) > +{ > + return display->params.force_reset_modeset_test; > +} > + > void intel_display_reset_prepare(struct intel_display *display) > { > struct drm_i915_private *dev_priv = to_i915(display->drm); > @@ -33,7 +38,7 @@ void intel_display_reset_prepare(struct intel_display *display) > return; > > /* reset doesn't touch the display */ > - if (!display->params.force_reset_modeset_test && > + if (!intel_display_reset_test(display) && > !gpu_reset_clobbers_display(display)) > return; > > @@ -41,7 +46,6 @@ void intel_display_reset_prepare(struct intel_display *display) > set_bit(I915_RESET_MODESET, &to_gt(dev_priv)->reset.flags); > smp_mb__after_atomic(); > wake_up_bit(&to_gt(dev_priv)->reset.flags, I915_RESET_MODESET); > - Gah, a rebase fail. > if (atomic_read(&display->restore.pending_fb_pin)) { > drm_dbg_kms(display->drm, > "Modeset potentially stuck, unbreaking through wedging\n"); > diff --git a/drivers/gpu/drm/i915/display/intel_display_reset.h b/drivers/gpu/drm/i915/display/intel_display_reset.h > index 9a1fe99bfcd4..c1dd2e8d0914 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_reset.h > +++ b/drivers/gpu/drm/i915/display/intel_display_reset.h > @@ -6,8 +6,11 @@ > #ifndef __INTEL_RESET_H__ > #define __INTEL_RESET_H__ > > +#include <linux/types.h> > + > struct intel_display; > > +bool intel_display_reset_test(struct intel_display *display); > void intel_display_reset_prepare(struct intel_display *display); > void intel_display_reset_finish(struct intel_display *display); -- Jani Nikula, Intel