drm/i915/dp: Fix colorimetry detection
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 18 Sep 2024 19:04:39 +0000 (22:04 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 19 Sep 2024 11:54:21 +0000 (14:54 +0300)
intel_dp_init_connector() is no place for detecting stuff via
DPCD (except perhaps for eDP). Move the colorimetry stuff into
a more appropriate place.

Cc: Jouni Högander <jouni.hogander@intel.com>
Fixes: 00076671a648 ("drm/i915/display: Move colorimetry_support from intel_psr to intel_dp")
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240918190441.29071-1-ville.syrjala@linux.intel.com
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
drivers/gpu/drm/i915/display/intel_dp.c

index 9859a7d..7008d36 100644 (file)
@@ -4082,6 +4082,9 @@ intel_edp_init_dpcd(struct intel_dp *intel_dp, struct intel_connector *connector
                         drm_dp_is_branch(intel_dp->dpcd));
        intel_init_dpcd_quirks(intel_dp, &intel_dp->desc.ident);
 
+       intel_dp->colorimetry_support =
+               intel_dp_get_colorimetry_status(intel_dp);
+
        /*
         * Read the eDP display control registers.
         *
@@ -4195,6 +4198,9 @@ intel_dp_get_dpcd(struct intel_dp *intel_dp)
 
                intel_init_dpcd_quirks(intel_dp, &intel_dp->desc.ident);
 
+               intel_dp->colorimetry_support =
+                       intel_dp_get_colorimetry_status(intel_dp);
+
                intel_dp_update_sink_caps(intel_dp);
        }
 
@@ -6932,9 +6938,6 @@ intel_dp_init_connector(struct intel_digital_port *dig_port,
                                    "HDCP init failed, skipping.\n");
        }
 
-       intel_dp->colorimetry_support =
-               intel_dp_get_colorimetry_status(intel_dp);
-
        intel_dp->frl.is_trained = false;
        intel_dp->frl.trained_rate_gbps = 0;