drm/i915/dvo: Introduce intel_dvo_connector_type()
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Fri, 18 Nov 2022 10:55:20 +0000 (12:55 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Sat, 19 Nov 2022 09:08:52 +0000 (11:08 +0200)
Introduce intel_dvo_connector_type() as a counterpart to
intel_dvo_encoder_type(), mainly to declutter intel_dvo_init()
a bit.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20221118105525.27254-5-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/display/intel_dvo.c

index fe61cb41d83bea7e152bfbe51653971cf8deb0d0..9ce3b4ec6a4d43afb4114cd0c02540fbdf05c54f 100644 (file)
@@ -401,6 +401,20 @@ static int intel_dvo_encoder_type(const struct intel_dvo_device *dvo)
        }
 }
 
+static int intel_dvo_connector_type(const struct intel_dvo_device *dvo)
+{
+       switch (dvo->type) {
+       case INTEL_DVO_CHIP_TMDS:
+               return DRM_MODE_CONNECTOR_DVII;
+       case INTEL_DVO_CHIP_LVDS_NO_FIXED:
+       case INTEL_DVO_CHIP_LVDS:
+               return DRM_MODE_CONNECTOR_LVDS;
+       default:
+               MISSING_CASE(dvo->type);
+               return DRM_MODE_CONNECTOR_Unknown;
+       }
+}
+
 void intel_dvo_init(struct drm_i915_private *dev_priv)
 {
        struct intel_encoder *intel_encoder;
@@ -507,21 +521,13 @@ void intel_dvo_init(struct drm_i915_private *dev_priv)
                        intel_encoder->cloneable = BIT(INTEL_OUTPUT_ANALOG) |
                                BIT(INTEL_OUTPUT_DVO);
 
-               switch (dvo->type) {
-               case INTEL_DVO_CHIP_TMDS:
+               if (dvo->type == INTEL_DVO_CHIP_TMDS)
                        intel_connector->polled = DRM_CONNECTOR_POLL_CONNECT |
                                DRM_CONNECTOR_POLL_DISCONNECT;
-                       drm_connector_init(&dev_priv->drm, connector,
-                                          &intel_dvo_connector_funcs,
-                                          DRM_MODE_CONNECTOR_DVII);
-                       break;
-               case INTEL_DVO_CHIP_LVDS_NO_FIXED:
-               case INTEL_DVO_CHIP_LVDS:
-                       drm_connector_init(&dev_priv->drm, connector,
-                                          &intel_dvo_connector_funcs,
-                                          DRM_MODE_CONNECTOR_LVDS);
-                       break;
-               }
+
+               drm_connector_init(&dev_priv->drm, connector,
+                                  &intel_dvo_connector_funcs,
+                                  intel_dvo_connector_type(dvo));
 
                drm_connector_helper_add(connector,
                                         &intel_dvo_connector_helper_funcs);