aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_drv.h
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2010-08-04 15:26:07 -0400
committerEric Anholt <eric@anholt.net>2010-08-09 14:24:31 -0400
commit6ef3d4278034982c13df87c4a51e0445f762d316 (patch)
treebb67e30d7898a1024d68b5bce4e526b40a2807fd /drivers/gpu/drm/i915/i915_drv.h
parentdbd7ac9661ba321fe9c1f1b7cb5f4471a6e59570 (diff)
drm/i915: Capture the overlay status upon a GPU hang.
v2: Add the interrupt status and address. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_drv.h')
-rw-r--r--drivers/gpu/drm/i915/i915_drv.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 5cd593f826ef..151056501a5f 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -113,6 +113,9 @@ struct intel_opregion {
113 int enabled; 113 int enabled;
114}; 114};
115 115
116struct intel_overlay;
117struct intel_overlay_error_state;
118
116struct drm_i915_master_private { 119struct drm_i915_master_private {
117 drm_local_map_t *sarea; 120 drm_local_map_t *sarea;
118 struct _drm_i915_sarea *sarea_priv; 121 struct _drm_i915_sarea *sarea_priv;
@@ -166,6 +169,7 @@ struct drm_i915_error_state {
166 u32 purgeable:1; 169 u32 purgeable:1;
167 } *active_bo; 170 } *active_bo;
168 u32 active_bo_count; 171 u32 active_bo_count;
172 struct intel_overlay_error_state *overlay;
169}; 173};
170 174
171struct drm_i915_display_funcs { 175struct drm_i915_display_funcs {
@@ -186,8 +190,6 @@ struct drm_i915_display_funcs {
186 /* clock gating init */ 190 /* clock gating init */
187}; 191};
188 192
189struct intel_overlay;
190
191struct intel_device_info { 193struct intel_device_info {
192 u8 is_mobile : 1; 194 u8 is_mobile : 1;
193 u8 is_i8xx : 1; 195 u8 is_i8xx : 1;
@@ -1069,6 +1071,10 @@ extern bool ironlake_set_drps(struct drm_device *dev, u8 val);
1069extern void intel_detect_pch (struct drm_device *dev); 1071extern void intel_detect_pch (struct drm_device *dev);
1070extern int intel_trans_dp_port_sel (struct drm_crtc *crtc); 1072extern int intel_trans_dp_port_sel (struct drm_crtc *crtc);
1071 1073
1074/* overlay */
1075extern struct intel_overlay_error_state *intel_overlay_capture_error_state(struct drm_device *dev);
1076extern void intel_overlay_print_error_state(struct seq_file *m, struct intel_overlay_error_state *error);
1077
1072/** 1078/**
1073 * Lock test for when it's just for synchronization of ring access. 1079 * Lock test for when it's just for synchronization of ring access.
1074 * 1080 *