Re: [Intel-gfx] [PATCH 4/5] drm/i915: Simplify the uncleared FIFO underrun detection

2014-05-21 Thread Thomas Wood
On 16 May 2014 17:40,  ville.syrj...@linux.intel.com wrote:
 From: Ville Syrjälä ville.syrj...@linux.intel.com

 Checking whether the error interrupt was enabled or not isn't really
 necessary when we check for uncleared FIFO underruns. If it was enabled
 we'll race with the interrupt handler a bit, but that seems OK as we
 still claim the interrupt.

 Signed-off-by: Ville Syrjälä ville.syrj...@linux.intel.com


checkpatch.pl complains that there are lines over 80 characters, but otherwise:

Reviewed-by: Thomas Wood thomas.w...@intel.com


 ---
  drivers/gpu/drm/i915/i915_irq.c | 13 ++---
  1 file changed, 2 insertions(+), 11 deletions(-)

 diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
 index 862964f..dd6e359 100644
 --- a/drivers/gpu/drm/i915/i915_irq.c
 +++ b/drivers/gpu/drm/i915/i915_irq.c
 @@ -337,13 +337,9 @@ static void ivybridge_set_fifo_underrun_reporting(struct 
 drm_device *dev,

 ironlake_enable_display_irq(dev_priv, DE_ERR_INT_IVB);
 } else {
 -   bool was_enabled = !(I915_READ(DEIMR)  DE_ERR_INT_IVB);
 -
 -   /* Change the state _after_ we've read out the current one. */
 ironlake_disable_display_irq(dev_priv, DE_ERR_INT_IVB);

 -   if (!was_enabled 
 -   (I915_READ(GEN7_ERR_INT)  ERR_INT_FIFO_UNDERRUN(pipe))) {
 +   if (I915_READ(GEN7_ERR_INT)  ERR_INT_FIFO_UNDERRUN(pipe)) {
 DRM_ERROR(uncleared fifo underrun on pipe %c\n,
   pipe_name(pipe));
 }
 @@ -421,14 +417,9 @@ static void cpt_set_fifo_underrun_reporting(struct 
 drm_device *dev,

 ibx_enable_display_interrupt(dev_priv, SDE_ERROR_CPT);
 } else {
 -   uint32_t tmp = I915_READ(SERR_INT);
 -   bool was_enabled = !(I915_READ(SDEIMR)  SDE_ERROR_CPT);
 -
 -   /* Change the state _after_ we've read out the current one. */
 ibx_disable_display_interrupt(dev_priv, SDE_ERROR_CPT);

 -   if (!was_enabled 
 -   (tmp  SERR_INT_TRANS_FIFO_UNDERRUN(pch_transcoder))) {
 +   if (I915_READ(SERR_INT)  
 SERR_INT_TRANS_FIFO_UNDERRUN(pch_transcoder)) {
 DRM_ERROR(uncleared pch fifo underrun on pch 
 transcoder %c\n,
   transcoder_name(pch_transcoder));
 }
 --
 1.8.5.5

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 4/5] drm/i915: Simplify the uncleared FIFO underrun detection

2014-05-16 Thread ville . syrjala
From: Ville Syrjälä ville.syrj...@linux.intel.com

Checking whether the error interrupt was enabled or not isn't really
necessary when we check for uncleared FIFO underruns. If it was enabled
we'll race with the interrupt handler a bit, but that seems OK as we
still claim the interrupt.

Signed-off-by: Ville Syrjälä ville.syrj...@linux.intel.com
---
 drivers/gpu/drm/i915/i915_irq.c | 13 ++---
 1 file changed, 2 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 862964f..dd6e359 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -337,13 +337,9 @@ static void ivybridge_set_fifo_underrun_reporting(struct 
drm_device *dev,
 
ironlake_enable_display_irq(dev_priv, DE_ERR_INT_IVB);
} else {
-   bool was_enabled = !(I915_READ(DEIMR)  DE_ERR_INT_IVB);
-
-   /* Change the state _after_ we've read out the current one. */
ironlake_disable_display_irq(dev_priv, DE_ERR_INT_IVB);
 
-   if (!was_enabled 
-   (I915_READ(GEN7_ERR_INT)  ERR_INT_FIFO_UNDERRUN(pipe))) {
+   if (I915_READ(GEN7_ERR_INT)  ERR_INT_FIFO_UNDERRUN(pipe)) {
DRM_ERROR(uncleared fifo underrun on pipe %c\n,
  pipe_name(pipe));
}
@@ -421,14 +417,9 @@ static void cpt_set_fifo_underrun_reporting(struct 
drm_device *dev,
 
ibx_enable_display_interrupt(dev_priv, SDE_ERROR_CPT);
} else {
-   uint32_t tmp = I915_READ(SERR_INT);
-   bool was_enabled = !(I915_READ(SDEIMR)  SDE_ERROR_CPT);
-
-   /* Change the state _after_ we've read out the current one. */
ibx_disable_display_interrupt(dev_priv, SDE_ERROR_CPT);
 
-   if (!was_enabled 
-   (tmp  SERR_INT_TRANS_FIFO_UNDERRUN(pch_transcoder))) {
+   if (I915_READ(SERR_INT)  
SERR_INT_TRANS_FIFO_UNDERRUN(pch_transcoder)) {
DRM_ERROR(uncleared pch fifo underrun on pch 
transcoder %c\n,
  transcoder_name(pch_transcoder));
}
-- 
1.8.5.5

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx