]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
drm/i915: Fix the DDI encoder names
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 17 Nov 2020 15:40:28 +0000 (17:40 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 18 Nov 2020 13:35:07 +0000 (15:35 +0200)
I totally fumbled the ?: usage when generating the DDI encoder
names. Reverse the things that need reversing, and to make it
a bit less messy add a few macros to hide the arithmetic on the
port enums.

Cc: Jani Nikula <jani.nikula@linux.intel.com>
Fixes: 2d709a5a624c ("drm/i915: Give DDI encoders even better names")
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20201117154028.8516-1-ville.syrjala@linux.intel.com
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
drivers/gpu/drm/i915/display/intel_ddi.c

index 9d80e47e955840271d688550c85d35357d13e91d..2de2c69db7f265f4fa570ff552da05b1a5359e97 100644 (file)
@@ -5295,6 +5295,9 @@ static enum hpd_pin cnl_hpd_pin(struct drm_i915_private *dev_priv,
        return HPD_PORT_A + port - PORT_A;
 }
 
+#define port_tc_name(port) ((port) - PORT_TC1 + '1')
+#define tc_port_name(tc_port) ((tc_port) - TC_PORT_1 + '1')
+
 void intel_ddi_init(struct drm_i915_private *dev_priv, enum port port)
 {
        struct intel_digital_port *dig_port;
@@ -5350,9 +5353,9 @@ void intel_ddi_init(struct drm_i915_private *dev_priv, enum port port)
                                 DRM_MODE_ENCODER_TMDS,
                                 "DDI %s%c/PHY %s%c",
                                 port >= PORT_TC1 ? "TC" : "",
-                                port >= PORT_TC1 ? port_name(port) : port - PORT_TC1 + '1',
+                                port >= PORT_TC1 ? port_tc_name(port) : port_name(port),
                                 tc_port != TC_PORT_NONE ? "TC" : "",
-                                tc_port != TC_PORT_NONE ? phy_name(phy) : tc_port - TC_PORT_1 + '1');
+                                tc_port != TC_PORT_NONE ? tc_port_name(tc_port) : phy_name(phy));
        } else if (INTEL_GEN(dev_priv) >= 11) {
                enum tc_port tc_port = intel_port_to_tc(dev_priv, port);
 
@@ -5362,7 +5365,7 @@ void intel_ddi_init(struct drm_i915_private *dev_priv, enum port port)
                                 port_name(port),
                                 port >= PORT_C ? " (TC)" : "",
                                 tc_port != TC_PORT_NONE ? "TC" : "",
-                                tc_port != TC_PORT_NONE ? phy_name(phy) : tc_port - TC_PORT_1 + '1');
+                                tc_port != TC_PORT_NONE ? tc_port_name(tc_port) : phy_name(phy));
        } else {
                drm_encoder_init(&dev_priv->drm, &encoder->base, &intel_ddi_funcs,
                                 DRM_MODE_ENCODER_TMDS,