aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_crt.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/i915/intel_crt.c')
-rw-r--r--drivers/gpu/drm/i915/intel_crt.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/intel_crt.c b/drivers/gpu/drm/i915/intel_crt.c
index 1ce45a0a2d3e..1d8d63aff444 100644
--- a/drivers/gpu/drm/i915/intel_crt.c
+++ b/drivers/gpu/drm/i915/intel_crt.c
@@ -199,10 +199,14 @@ static int intel_crt_mode_valid(struct drm_connector *connector,
199 return MODE_OK; 199 return MODE_OK;
200} 200}
201 201
202static bool intel_crt_mode_fixup(struct drm_encoder *encoder, 202static bool intel_crt_compute_config(struct intel_encoder *encoder,
203 const struct drm_display_mode *mode, 203 struct intel_crtc_config *pipe_config)
204 struct drm_display_mode *adjusted_mode)
205{ 204{
205 struct drm_device *dev = encoder->base.dev;
206
207 if (HAS_PCH_SPLIT(dev))
208 pipe_config->has_pch_encoder = true;
209
206 return true; 210 return true;
207} 211}
208 212
@@ -676,7 +680,6 @@ static void intel_crt_reset(struct drm_connector *connector)
676 */ 680 */
677 681
678static const struct drm_encoder_helper_funcs crt_encoder_funcs = { 682static const struct drm_encoder_helper_funcs crt_encoder_funcs = {
679 .mode_fixup = intel_crt_mode_fixup,
680 .mode_set = intel_crt_mode_set, 683 .mode_set = intel_crt_mode_set,
681}; 684};
682 685
@@ -768,8 +771,11 @@ void intel_crt_init(struct drm_device *dev)
768 else 771 else
769 crt->adpa_reg = ADPA; 772 crt->adpa_reg = ADPA;
770 773
774 crt->base.compute_config = intel_crt_compute_config;
771 crt->base.disable = intel_disable_crt; 775 crt->base.disable = intel_disable_crt;
772 crt->base.enable = intel_enable_crt; 776 crt->base.enable = intel_enable_crt;
777 if (I915_HAS_HOTPLUG(dev))
778 crt->base.hpd_pin = HPD_CRT;
773 if (HAS_DDI(dev)) 779 if (HAS_DDI(dev))
774 crt->base.get_hw_state = intel_ddi_get_hw_state; 780 crt->base.get_hw_state = intel_ddi_get_hw_state;
775 else 781 else
@@ -791,8 +797,6 @@ void intel_crt_init(struct drm_device *dev)
791 */ 797 */
792 crt->force_hotplug_required = 0; 798 crt->force_hotplug_required = 0;
793 799
794 dev_priv->hotplug_supported_mask |= CRT_HOTPLUG_INT_STATUS;
795
796 /* 800 /*
797 * TODO: find a proper way to discover whether we need to set the the 801 * TODO: find a proper way to discover whether we need to set the the
798 * polarity and link reversal bits or not, instead of relying on the 802 * polarity and link reversal bits or not, instead of relying on the