Re: [Intel-gfx] [PATCH] drm/i915: Move intel_ddi_set_vc_payload_alloc(false) to haswell_crtc_disable()

2014-08-26 Thread Jani Nikula
On Mon, 18 Aug 2014, ville.syrj...@linux.intel.com wrote:
 From: Ville Syrjälä ville.syrj...@linux.intel.com

 Somehow the intel_ddi_set_vc_payload_alloc(false) call has ended up
 in ironlake_crtc_disable() rather than haswell_crtc_disable(). Move it
 to the correct place.

 intel_ddi_disable_transcoder_func() already disables the vc payload
 allocation so this doesn't actually do anything more. The spec
 says we should wait for some kind of ack after frobbing the bit. We
 don't appear to do that currently, but if and when someone decides
 that we should do it, intel_ddi_set_vc_payload_alloc() would appear
 to be be the right place for it. So having the function call in
 haswell_crtc_disable() seems like the right thing for the future
 even if it does nothing currently.

 Cc: Dave Airlie airl...@redhat.com
 Signed-off-by: Ville Syrjälä ville.syrj...@linux.intel.com

Pushed to drm-intel-fixes, thanks for the patch.

BR,
Jani.

 ---
  drivers/gpu/drm/i915/intel_display.c | 7 +++
  1 file changed, 3 insertions(+), 4 deletions(-)

 diff --git a/drivers/gpu/drm/i915/intel_display.c 
 b/drivers/gpu/drm/i915/intel_display.c
 index 09c7298..121024e 100644
 --- a/drivers/gpu/drm/i915/intel_display.c
 +++ b/drivers/gpu/drm/i915/intel_display.c
 @@ -4169,10 +4169,6 @@ static void ironlake_crtc_disable(struct drm_crtc 
 *crtc)
   intel_set_pch_fifo_underrun_reporting(dev, pipe, false);
  
   intel_disable_pipe(dev_priv, pipe);
 -
 - if (intel_crtc-config.dp_encoder_is_mst)
 - intel_ddi_set_vc_payload_alloc(crtc, false);
 -
   ironlake_pfit_disable(intel_crtc);
  
   for_each_encoder_on_crtc(dev, crtc, encoder)
 @@ -4240,6 +4236,9 @@ static void haswell_crtc_disable(struct drm_crtc *crtc)
   intel_set_pch_fifo_underrun_reporting(dev, TRANSCODER_A, false);
   intel_disable_pipe(dev_priv, pipe);
  
 + if (intel_crtc-config.dp_encoder_is_mst)
 + intel_ddi_set_vc_payload_alloc(crtc, false);
 +
   intel_ddi_disable_transcoder_func(dev_priv, cpu_transcoder);
  
   ironlake_pfit_disable(intel_crtc);
 -- 
 1.8.5.5

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

-- 
Jani Nikula, Intel Open Source Technology Center
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH] drm/i915: Move intel_ddi_set_vc_payload_alloc(false) to haswell_crtc_disable()

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

Somehow the intel_ddi_set_vc_payload_alloc(false) call has ended up
in ironlake_crtc_disable() rather than haswell_crtc_disable(). Move it
to the correct place.

intel_ddi_disable_transcoder_func() already disables the vc payload
allocation so this doesn't actually do anything more. The spec
says we should wait for some kind of ack after frobbing the bit. We
don't appear to do that currently, but if and when someone decides
that we should do it, intel_ddi_set_vc_payload_alloc() would appear
to be be the right place for it. So having the function call in
haswell_crtc_disable() seems like the right thing for the future
even if it does nothing currently.

Cc: Dave Airlie airl...@redhat.com
Signed-off-by: Ville Syrjälä ville.syrj...@linux.intel.com
---
 drivers/gpu/drm/i915/intel_display.c | 7 +++
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c 
b/drivers/gpu/drm/i915/intel_display.c
index 09c7298..121024e 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -4169,10 +4169,6 @@ static void ironlake_crtc_disable(struct drm_crtc *crtc)
intel_set_pch_fifo_underrun_reporting(dev, pipe, false);
 
intel_disable_pipe(dev_priv, pipe);
-
-   if (intel_crtc-config.dp_encoder_is_mst)
-   intel_ddi_set_vc_payload_alloc(crtc, false);
-
ironlake_pfit_disable(intel_crtc);
 
for_each_encoder_on_crtc(dev, crtc, encoder)
@@ -4240,6 +4236,9 @@ static void haswell_crtc_disable(struct drm_crtc *crtc)
intel_set_pch_fifo_underrun_reporting(dev, TRANSCODER_A, false);
intel_disable_pipe(dev_priv, pipe);
 
+   if (intel_crtc-config.dp_encoder_is_mst)
+   intel_ddi_set_vc_payload_alloc(crtc, false);
+
intel_ddi_disable_transcoder_func(dev_priv, cpu_transcoder);
 
ironlake_pfit_disable(intel_crtc);
-- 
1.8.5.5

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