drm/i915: sanitize RPS resetting during GPU reset
authorImre Deak <imre.deak@intel.com>
Mon, 15 Dec 2014 16:59:28 +0000 (18:59 +0200)
committerJani Nikula <jani.nikula@intel.com>
Mon, 15 Dec 2014 17:14:04 +0000 (19:14 +0200)
commitdbea3cea69508e9d548ed4a6be13de35492e5d15
tree8674ef15b99649e468ccdeb0882364d0ee71ffd4
parent78e68d36dab31c1f41885f757195fdfb29fc3075
drm/i915: sanitize RPS resetting during GPU reset

Atm, we don't disable RPS interrupts and related work items before
resetting the GPU. This may interfere with the following GPU
initialization and cause RPS interrupts to show up in PM_IIR too early
before calling gen6_enable_rps_interrupts() (triggering a WARN there).

Solve this by disabling RPS interrupts and flushing any related work
items before resetting the GPU.

v2:
- split out the common parts of the gt suspend and the new gt reset
  functions (Paulo)
v3:
- remove the check for UMS, it's a NOP nowadays (Daniel)

Reported-by: He, Shuang <shuang.he@intel.com>
Testcase: igt/gem_reset_stats/ban-render
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=86644
Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/i915_drv.c
drivers/gpu/drm/i915/intel_pm.c