diff options
| author | Dave Airlie <airlied@redhat.com> | 2013-02-08 12:10:18 +1000 | 
|---|---|---|
| committer | Dave Airlie <airlied@redhat.com> | 2013-02-08 12:10:18 +1000 | 
| commit | 6dc1c49da6dd3bf020a66b2a135b9625ac01c2c7 (patch) | |
| tree | 38a6c5d4896de01449e9d224088ae223161fcd3c /drivers/gpu/drm/i915/i915_irq.c | |
| parent | cd17ef4114ad5c514b17e6a0bb02a309ab90b692 (diff) | |
| parent | 5845b81bdad374f98f809a658ec747d92c9595c4 (diff) | |
| download | olio-linux-3.10-6dc1c49da6dd3bf020a66b2a135b9625ac01c2c7.tar.xz olio-linux-3.10-6dc1c49da6dd3bf020a66b2a135b9625ac01c2c7.zip  | |
Merge branch 'fbcon-locking-fixes' of ssh://people.freedesktop.org/~airlied/linux into drm-next
This pulls in most of Linus tree up to -rc6, this fixes the worst lockdep
reported issues and re-enables fbcon lockdep.
(not the fbcon maintainer)
* 'fbcon-locking-fixes' of ssh://people.freedesktop.org/~airlied/linux: (529 commits)
  Revert "Revert "console: implement lockdep support for console_lock""
  fbcon: fix locking harder
  fb: Yet another band-aid for fixing lockdep mess
  fb: rework locking to fix lock ordering on takeover
Diffstat (limited to 'drivers/gpu/drm/i915/i915_irq.c')
| -rw-r--r-- | drivers/gpu/drm/i915/i915_irq.c | 11 | 
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 5648d846cdb..13bb8d3f2a7 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c @@ -1228,6 +1228,7 @@ static void i915_record_ring_state(struct drm_device *dev,  	error->acthd[ring->id] = intel_ring_get_active_head(ring);  	error->head[ring->id] = I915_READ_HEAD(ring);  	error->tail[ring->id] = I915_READ_TAIL(ring); +	error->ctl[ring->id] = I915_READ_CTL(ring);  	error->cpu_ring_head[ring->id] = ring->head;  	error->cpu_ring_tail[ring->id] = ring->tail; @@ -1323,6 +1324,16 @@ static void i915_capture_error_state(struct drm_device *dev)  	else  		error->ier = I915_READ(IER); +	if (INTEL_INFO(dev)->gen >= 6) +		error->derrmr = I915_READ(DERRMR); + +	if (IS_VALLEYVIEW(dev)) +		error->forcewake = I915_READ(FORCEWAKE_VLV); +	else if (INTEL_INFO(dev)->gen >= 7) +		error->forcewake = I915_READ(FORCEWAKE_MT); +	else if (INTEL_INFO(dev)->gen == 6) +		error->forcewake = I915_READ(FORCEWAKE); +  	for_each_pipe(pipe)  		error->pipestat[pipe] = I915_READ(PIPESTAT(pipe));  |