drm/i915/bxt: Set DDI PHY lane latency optimization during modeset
authorImre Deak <imre.deak@intel.com>
Mon, 13 Jun 2016 13:44:35 +0000 (16:44 +0300)
committerImre Deak <imre.deak@intel.com>
Mon, 13 Jun 2016 15:46:09 +0000 (18:46 +0300)
commit95a7a2ae46652f4c46f956c4d1700ccadf07bed6
treebfe1a521095dca044087b63cc2318461ed3cfaeb
parent9c8d0b8e53b902daeb3622c722b9337a78db724a
drm/i915/bxt: Set DDI PHY lane latency optimization during modeset

So far we configured a static lane latency optimization during driver
loading/resuming. The specification changed at one point and now this
configuration depends on the lane count, so move the configuration
to modeset time accordingly.

It's not clear when this lane configuration takes effect. The
specification only requires that the programming is done before enabling
the port. On CHV OTOH the lanes start to power up already right after
enabling the PLL. To be safe preserve the current order and set things
up already before enabling the PLL.

v2: (Ander)
- Simplify the optimization mask calculation.
- Use the correct pipe_config always during the calculation instead
  of the bogus intel_crtc->config.

CC: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95476
Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
drivers/gpu/drm/i915/intel_ddi.c
drivers/gpu/drm/i915/intel_display.c
drivers/gpu/drm/i915/intel_drv.h