diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2010-08-04 15:26:07 -0400 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2010-08-09 14:24:31 -0400 |
commit | 6ef3d4278034982c13df87c4a51e0445f762d316 (patch) | |
tree | bb67e30d7898a1024d68b5bce4e526b40a2807fd /drivers/gpu/drm/i915/i915_drv.h | |
parent | dbd7ac9661ba321fe9c1f1b7cb5f4471a6e59570 (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.h | 10 |
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 | ||
116 | struct intel_overlay; | ||
117 | struct intel_overlay_error_state; | ||
118 | |||
116 | struct drm_i915_master_private { | 119 | struct 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 | ||
171 | struct drm_i915_display_funcs { | 175 | struct 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 | ||
189 | struct intel_overlay; | ||
190 | |||
191 | struct intel_device_info { | 193 | struct 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); | |||
1069 | extern void intel_detect_pch (struct drm_device *dev); | 1071 | extern void intel_detect_pch (struct drm_device *dev); |
1070 | extern int intel_trans_dp_port_sel (struct drm_crtc *crtc); | 1072 | extern int intel_trans_dp_port_sel (struct drm_crtc *crtc); |
1071 | 1073 | ||
1074 | /* overlay */ | ||
1075 | extern struct intel_overlay_error_state *intel_overlay_capture_error_state(struct drm_device *dev); | ||
1076 | extern 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 | * |