Add a reset interface

Chris Wilson chris at chris-wilson.co.uk
Mon Jan 24 07:55:27 PST 2011


For i915 there is a need to invalidate some cached state after resuming or
reseting the GPU. This is not quite the same as simply restoring saved
state (i.e. the standard suspend resume method), so do not seem to merit
reusing the save|restore vfuncs.  Instead I propose a

   drm_mode_config_reset(struct drm_device *);

routine to iterate over all the attached CRTCs, encoders and connectors
and call any supplied reset vfunc.

This is required to fix some modesetting regressions across resume in
2.6.38:
https://bugzilla.kernel.org/show_bug.cgi?id=26952
https://bugzilla.kernel.org/show_bug.cgi?id=27272

Please review,
-Chris

 drivers/gpu/drm/drm_crtc.c           |   19 +++++++++++++++++++
 drivers/gpu/drm/i915/i915_drv.c      |    2 ++
 drivers/gpu/drm/i915/intel_crt.c     |   10 ++++++++++
 drivers/gpu/drm/i915/intel_display.c |   17 ++++++++++++++---
 include/drm/drm_crtc.h               |    7 +++++++
 5 files changed, 52 insertions(+), 3 deletions(-)



More information about the dri-devel mailing list