From: Ville Syrj?l? <ville.syrjala at linux.intel.com> When passing the DP/HDMI/SDVO registers to the encoder init functions, include the VLV specific offset in the value. Signed-off-by: Ville Syrj?l? <ville.syrjala at linux.intel.com> --- drivers/gpu/drm/i915/intel_display.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 26df9e3..60b5112 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -8230,20 +8230,20 @@ static void intel_setup_outputs(struct drm_device *dev) int found; /* Check for built-in panel first. Shares lanes with HDMI on SDVOC */ - if (I915_READ(DP_C) & DP_DETECTED) - intel_dp_init(dev, DP_C, PORT_C); + if (I915_READ(VLV_DISPLAY_BASE + DP_C) & DP_DETECTED) + intel_dp_init(dev, VLV_DISPLAY_BASE + DP_C, PORT_C); - if (I915_READ(SDVOB) & PORT_DETECTED) { + if (I915_READ(VLV_DISPLAY_BASE + SDVOB) & PORT_DETECTED) { /* SDVOB multiplex with HDMIB */ - found = intel_sdvo_init(dev, SDVOB, true); + found = intel_sdvo_init(dev, VLV_DISPLAY_BASE + SDVOB, true); if (!found) - intel_hdmi_init(dev, SDVOB, PORT_B); - if (!found && (I915_READ(DP_B) & DP_DETECTED)) - intel_dp_init(dev, DP_B, PORT_B); + intel_hdmi_init(dev, VLV_DISPLAY_BASE + SDVOB, PORT_B); + if (!found && (I915_READ(VLV_DISPLAY_BASE + DP_B) & DP_DETECTED)) + intel_dp_init(dev, VLV_DISPLAY_BASE + DP_B, PORT_B); } - if (I915_READ(SDVOC) & PORT_DETECTED) - intel_hdmi_init(dev, SDVOC, PORT_C); + if (I915_READ(VLV_DISPLAY_BASE + SDVOC) & PORT_DETECTED) + intel_hdmi_init(dev, VLV_DISPLAY_BASE + SDVOC, PORT_C); } else if (SUPPORTS_DIGITAL_OUTPUTS(dev)) { bool found = false; -- 1.7.12.4