]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm/i915/crt: clean up encoder hook assignment
authorJani Nikula <jani.nikula@intel.com>
Thu, 5 Oct 2017 10:52:14 +0000 (13:52 +0300)
committerJani Nikula <jani.nikula@intel.com>
Fri, 6 Oct 2017 08:30:54 +0000 (11:30 +0300)
Only assign the hooks once instead of overwriting for DDI.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/796b631d018fdd5aa2a3608c6a9b9fa196a50f76.1507200657.git.jani.nikula@intel.com
drivers/gpu/drm/i915/intel_crt.c

index 2abe556ccaf5e2331af83f9692b82629a95ad944..668e8c3e791dbf9afc925d84e258781a8422bf98 100644 (file)
@@ -955,16 +955,11 @@ void intel_crt_init(struct drm_i915_private *dev_priv)
 
        crt->base.power_domain = POWER_DOMAIN_PORT_CRT;
 
-       crt->base.compute_config = intel_crt_compute_config;
-       if (HAS_PCH_SPLIT(dev_priv)) {
-               crt->base.disable = pch_disable_crt;
-               crt->base.post_disable = pch_post_disable_crt;
-       } else {
-               crt->base.disable = intel_disable_crt;
-       }
        if (I915_HAS_HOTPLUG(dev_priv) &&
            !dmi_check_system(intel_spurious_crt_detect))
                crt->base.hpd_pin = HPD_CRT;
+
+       crt->base.compute_config = intel_crt_compute_config;
        if (HAS_DDI(dev_priv)) {
                crt->base.port = PORT_E;
                crt->base.get_config = hsw_crt_get_config;
@@ -975,6 +970,12 @@ void intel_crt_init(struct drm_i915_private *dev_priv)
                crt->base.disable = hsw_disable_crt;
                crt->base.post_disable = hsw_post_disable_crt;
        } else {
+               if (HAS_PCH_SPLIT(dev_priv)) {
+                       crt->base.disable = pch_disable_crt;
+                       crt->base.post_disable = pch_post_disable_crt;
+               } else {
+                       crt->base.disable = intel_disable_crt;
+               }
                crt->base.port = PORT_NONE;
                crt->base.get_config = intel_crt_get_config;
                crt->base.get_hw_state = intel_crt_get_hw_state;