aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_drv.h
diff options
context:
space:
mode:
authorBen Widawsky <ben@bwidawsk.net>2011-04-25 14:25:20 -0400
committerKeith Packard <keithp@keithp.com>2011-05-10 16:56:47 -0400
commit4912d04193733a825216b926ffd290fada88ab07 (patch)
tree28f299240c04955f9cca7a7fad794ece744da4bb /drivers/gpu/drm/i915/i915_drv.h
parentd1ebd816e6d7967c764f0cfa7d718f7c5cc7a8e4 (diff)
drm/i915: move gen6 rps handling to workqueue
The render P-state handling code requires reading from a GT register. This means that FORCEWAKE must be written to, a resource which is shared and should be protected by struct_mutex. Hence we can not manipulate that register from within the interrupt handling and so must delegate the task to a workqueue. Signed-off-by: Ben Widawsky <ben@bwidawsk.net> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_drv.h')
-rw-r--r--drivers/gpu/drm/i915/i915_drv.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index bafb387dd416..e9d824326a03 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -682,6 +682,10 @@ typedef struct drm_i915_private {
682 682
683 bool mchbar_need_disable; 683 bool mchbar_need_disable;
684 684
685 struct work_struct rps_work;
686 spinlock_t rps_lock;
687 u32 pm_iir;
688
685 u8 cur_delay; 689 u8 cur_delay;
686 u8 min_delay; 690 u8 min_delay;
687 u8 max_delay; 691 u8 max_delay;