aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_reg.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_reg.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_reg.h')
-rw-r--r--drivers/gpu/drm/i915/i915_reg.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index f39ac3a0fa93..289adaa9c928 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -3386,7 +3386,7 @@
3386#define GEN6_PMINTRMSK 0xA168 3386#define GEN6_PMINTRMSK 0xA168
3387 3387
3388#define GEN6_PMISR 0x44020 3388#define GEN6_PMISR 0x44020
3389#define GEN6_PMIMR 0x44024 3389#define GEN6_PMIMR 0x44024 /* rps_lock */
3390#define GEN6_PMIIR 0x44028 3390#define GEN6_PMIIR 0x44028
3391#define GEN6_PMIER 0x4402C 3391#define GEN6_PMIER 0x4402C
3392#define GEN6_PM_MBOX_EVENT (1<<25) 3392#define GEN6_PM_MBOX_EVENT (1<<25)
@@ -3396,6 +3396,9 @@
3396#define GEN6_PM_RP_DOWN_THRESHOLD (1<<4) 3396#define GEN6_PM_RP_DOWN_THRESHOLD (1<<4)
3397#define GEN6_PM_RP_UP_EI_EXPIRED (1<<2) 3397#define GEN6_PM_RP_UP_EI_EXPIRED (1<<2)
3398#define GEN6_PM_RP_DOWN_EI_EXPIRED (1<<1) 3398#define GEN6_PM_RP_DOWN_EI_EXPIRED (1<<1)
3399#define GEN6_PM_DEFERRED_EVENTS (GEN6_PM_RP_UP_THRESHOLD | \
3400 GEN6_PM_RP_DOWN_THRESHOLD | \
3401 GEN6_PM_RP_DOWN_TIMEOUT)
3399 3402
3400#define GEN6_PCODE_MAILBOX 0x138124 3403#define GEN6_PCODE_MAILBOX 0x138124
3401#define GEN6_PCODE_READY (1<<31) 3404#define GEN6_PCODE_READY (1<<31)