diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_dp.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_dp.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index 7235ffb58a18..37638f8e2265 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c | |||
@@ -1882,6 +1882,10 @@ static void chv_post_disable_dp(struct intel_encoder *encoder) | |||
1882 | mutex_lock(&dev_priv->dpio_lock); | 1882 | mutex_lock(&dev_priv->dpio_lock); |
1883 | 1883 | ||
1884 | /* Propagate soft reset to data lane reset */ | 1884 | /* Propagate soft reset to data lane reset */ |
1885 | val = vlv_dpio_read(dev_priv, pipe, VLV_PCS_DW1(ch)); | ||
1886 | val |= CHV_PCS_REQ_SOFTRESET_EN; | ||
1887 | vlv_dpio_write(dev_priv, pipe, VLV_PCS_DW1(ch), val); | ||
1888 | |||
1885 | val = vlv_dpio_read(dev_priv, pipe, VLV_PCS_DW0(ch)); | 1889 | val = vlv_dpio_read(dev_priv, pipe, VLV_PCS_DW0(ch)); |
1886 | val &= ~(DPIO_PCS_TX_LANE2_RESET | DPIO_PCS_TX_LANE1_RESET); | 1890 | val &= ~(DPIO_PCS_TX_LANE2_RESET | DPIO_PCS_TX_LANE1_RESET); |
1887 | vlv_dpio_write(dev_priv, pipe, VLV_PCS_DW0(ch), val); | 1891 | vlv_dpio_write(dev_priv, pipe, VLV_PCS_DW0(ch), val); |
@@ -2023,6 +2027,10 @@ static void chv_pre_enable_dp(struct intel_encoder *encoder) | |||
2023 | mutex_lock(&dev_priv->dpio_lock); | 2027 | mutex_lock(&dev_priv->dpio_lock); |
2024 | 2028 | ||
2025 | /* Deassert soft data lane reset*/ | 2029 | /* Deassert soft data lane reset*/ |
2030 | val = vlv_dpio_read(dev_priv, pipe, VLV_PCS_DW1(ch)); | ||
2031 | val |= CHV_PCS_REQ_SOFTRESET_EN; | ||
2032 | vlv_dpio_write(dev_priv, pipe, VLV_PCS_DW1(ch), val); | ||
2033 | |||
2026 | val = vlv_dpio_read(dev_priv, pipe, VLV_PCS_DW0(ch)); | 2034 | val = vlv_dpio_read(dev_priv, pipe, VLV_PCS_DW0(ch)); |
2027 | val |= (DPIO_PCS_TX_LANE2_RESET | DPIO_PCS_TX_LANE1_RESET); | 2035 | val |= (DPIO_PCS_TX_LANE2_RESET | DPIO_PCS_TX_LANE1_RESET); |
2028 | vlv_dpio_write(dev_priv, pipe, VLV_PCS_DW0(ch), val); | 2036 | vlv_dpio_write(dev_priv, pipe, VLV_PCS_DW0(ch), val); |