aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorPaulo Zanoni <paulo.r.zanoni@intel.com>2012-11-20 10:27:37 -0500
committerDaniel Vetter <daniel.vetter@ffwll.ch>2012-11-21 11:47:06 -0500
commitcc391bbbddd16c36dabcb9f4a26500a2973a7108 (patch)
tree605d30eed7c3789489e31982c65b47dff56bf66a /drivers
parentd63fa0dc1a3636816260bc507e59e168e423f150 (diff)
drm/i915: use cpu/pch transcoder on intel_enable_pipe
This function runs on Haswell, so set the correct pch_transcoder and cpu_transcoder variables. This fixes an assertion failure on Haswell VGA. Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com> Reviewed-by: Damien Lespiau <damien.lespiau@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/i915/intel_display.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 82ab55af52fe..4e303cf7ead6 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -1812,9 +1812,15 @@ static void intel_enable_pipe(struct drm_i915_private *dev_priv, enum pipe pipe,
1812{ 1812{
1813 enum transcoder cpu_transcoder = intel_pipe_to_cpu_transcoder(dev_priv, 1813 enum transcoder cpu_transcoder = intel_pipe_to_cpu_transcoder(dev_priv,
1814 pipe); 1814 pipe);
1815 enum transcoder pch_transcoder;
1815 int reg; 1816 int reg;
1816 u32 val; 1817 u32 val;
1817 1818
1819 if (IS_HASWELL(dev_priv->dev))
1820 pch_transcoder = TRANSCODER_A;
1821 else
1822 pch_transcoder = pipe;
1823
1818 /* 1824 /*
1819 * A pipe without a PLL won't actually be able to drive bits from 1825 * A pipe without a PLL won't actually be able to drive bits from
1820 * a plane. On ILK+ the pipe PLLs are integrated, so we don't 1826 * a plane. On ILK+ the pipe PLLs are integrated, so we don't
@@ -1825,8 +1831,8 @@ static void intel_enable_pipe(struct drm_i915_private *dev_priv, enum pipe pipe,
1825 else { 1831 else {
1826 if (pch_port) { 1832 if (pch_port) {
1827 /* if driving the PCH, we need FDI enabled */ 1833 /* if driving the PCH, we need FDI enabled */
1828 assert_fdi_rx_pll_enabled(dev_priv, pipe); 1834 assert_fdi_rx_pll_enabled(dev_priv, pch_transcoder);
1829 assert_fdi_tx_pll_enabled(dev_priv, pipe); 1835 assert_fdi_tx_pll_enabled(dev_priv, cpu_transcoder);
1830 } 1836 }
1831 /* FIXME: assert CPU port conditions for SNB+ */ 1837 /* FIXME: assert CPU port conditions for SNB+ */
1832 } 1838 }