OSDN Git Service

drm/i915/tc: Check for TC PHY explicitly in intel_tc_port_fia_max_lane_count()
authorImre Deak <imre.deak@intel.com>
Thu, 23 Mar 2023 14:20:12 +0000 (16:20 +0200)
committerImre Deak <imre.deak@intel.com>
Mon, 3 Apr 2023 08:35:30 +0000 (11:35 +0300)
Check explicitly if the port passed to
intel_tc_port_fia_max_lane_count() has a TC PHY, instead of relying on
the default TC mode value set for non-TC PHY ports.

Reviewed-by: Mika Kahola <mika.kahola@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230323142035.1432621-7-imre.deak@intel.com
drivers/gpu/drm/i915/display/intel_tc.c

index d6fc9c5..4995c63 100644 (file)
@@ -188,10 +188,11 @@ int intel_tc_port_fia_max_lane_count(struct intel_digital_port *dig_port)
 {
        struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev);
        struct intel_tc_port *tc = to_tc_port(dig_port);
+       enum phy phy = intel_port_to_phy(i915, dig_port->base.port);
        intel_wakeref_t wakeref;
        u32 lane_mask;
 
-       if (tc->mode != TC_PORT_DP_ALT)
+       if (!intel_phy_is_tc(i915, phy) || tc->mode != TC_PORT_DP_ALT)
                return 4;
 
        assert_tc_cold_blocked(tc);