aboutsummaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/intel_ringbuffer.h
diff options
context:
space:
mode:
authorMika Kuoppala <mika.kuoppala@linux.intel.com>2013-05-24 17:16:07 +0300
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-05-31 20:53:54 +0200
commit92cab7345131db7af18f630a799ce6b2e8e624c5 (patch)
treed61c1ac94941db3bdcbbae8753a2864557ed0b67 /drivers/gpu/drm/i915/intel_ringbuffer.h
parent79ee20dc85072b0edfb5e461799d192a9cc9d422 (diff)
drm/i915: track ring progression using seqnos
Instead of relying in acthd, track ring seqno progression to detect if ring has hung. v2: put hangcheck stuff inside struct (Chris Wilson) v3: initialize hangcheck.seqno (Ben Widawsky) Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com> Reviewed-by: Ben Widawsky <ben@bwidawsk.net> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_ringbuffer.h')
-rw-r--r--drivers/gpu/drm/i915/intel_ringbuffer.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
index dac1614a1bc..ef374a89210 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -37,6 +37,10 @@ struct intel_hw_status_page {
#define I915_READ_SYNC_0(ring) I915_READ(RING_SYNC_0((ring)->mmio_base))
#define I915_READ_SYNC_1(ring) I915_READ(RING_SYNC_1((ring)->mmio_base))
+struct intel_ring_hangcheck {
+ u32 seqno;
+};
+
struct intel_ring_buffer {
const char *name;
enum intel_ring_id {
@@ -137,6 +141,8 @@ struct intel_ring_buffer {
struct i915_hw_context *default_context;
struct i915_hw_context *last_context;
+ struct intel_ring_hangcheck hangcheck;
+
void *private;
};