aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915
diff options
context:
space:
mode:
authorShobhit Kumar <shobhit.kumar@intel.com>2014-04-09 04:29:34 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2014-04-09 15:54:30 -0400
commit339023ec342a63f885d8100eafe84dac515a0c8f (patch)
treea9ef4c63549d2b97c970faf6ba5658dbcc0917aa /drivers/gpu/drm/i915
parentf1c79f16d76f4698174a85921c5afb2c06ac614f (diff)
drm/i915: Panel commands can be sent only when clock is in LP11
Signed-off-by: Shobhit Kumar <shobhit.kumar@intel.com> Reviewed-by: Jani Nikula <jani.nikula@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915')
-rw-r--r--drivers/gpu/drm/i915/intel_dsi.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_dsi.c b/drivers/gpu/drm/i915/intel_dsi.c
index dfcdb1068495..d8eccda04767 100644
--- a/drivers/gpu/drm/i915/intel_dsi.c
+++ b/drivers/gpu/drm/i915/intel_dsi.c
@@ -229,6 +229,23 @@ static void intel_dsi_disable(struct intel_encoder *encoder)
229 msleep(2); 229 msleep(2);
230 } 230 }
231 231
232 /* Panel commands can be sent when clock is in LP11 */
233 I915_WRITE(MIPI_DEVICE_READY(pipe), 0x0);
234
235 temp = I915_READ(MIPI_CTRL(pipe));
236 temp &= ~ESCAPE_CLOCK_DIVIDER_MASK;
237 I915_WRITE(MIPI_CTRL(pipe), temp |
238 intel_dsi->escape_clk_div <<
239 ESCAPE_CLOCK_DIVIDER_SHIFT);
240
241 I915_WRITE(MIPI_EOT_DISABLE(pipe), CLOCKSTOP);
242
243 temp = I915_READ(MIPI_DSI_FUNC_PRG(pipe));
244 temp &= ~VID_MODE_FORMAT_MASK;
245 I915_WRITE(MIPI_DSI_FUNC_PRG(pipe), temp);
246
247 I915_WRITE(MIPI_DEVICE_READY(pipe), 0x1);
248
232 /* if disable packets are sent before sending shutdown packet then in 249 /* if disable packets are sent before sending shutdown packet then in
233 * some next enable sequence send turn on packet error is observed */ 250 * some next enable sequence send turn on packet error is observed */
234 if (intel_dsi->dev.dev_ops->disable) 251 if (intel_dsi->dev.dev_ops->disable)