drm/i915: Allow ICL+ DSI on any pipe
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 2 Oct 2019 16:25:03 +0000 (19:25 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 31 Oct 2019 14:08:11 +0000 (16:08 +0200)
There are no longer any pipe<->DSI port limitations on icl+.
Populate the pipe_mask accordingly.

Cc: José Roberto de Souza <jose.souza@intel.com>
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191002162505.30716-4-ville.syrjala@linux.intel.com
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
drivers/gpu/drm/i915/display/icl_dsi.c

index 4cea8ed..99a75c6 100644 (file)
@@ -1552,6 +1552,7 @@ void icl_dsi_init(struct drm_i915_private *dev_priv)
        struct drm_connector *connector;
        struct drm_display_mode *fixed_mode;
        enum port port;
+       enum pipe pipe;
 
        if (!intel_bios_is_dsi_present(dev_priv, &port))
                return;
@@ -1584,7 +1585,8 @@ void icl_dsi_init(struct drm_i915_private *dev_priv)
        encoder->get_hw_state = gen11_dsi_get_hw_state;
        encoder->type = INTEL_OUTPUT_DSI;
        encoder->cloneable = 0;
-       encoder->pipe_mask = BIT(PIPE_A) | BIT(PIPE_B) | BIT(PIPE_C);
+       for_each_pipe(dev_priv, pipe)
+               encoder->pipe_mask |= BIT(pipe);
        encoder->power_domain = POWER_DOMAIN_PORT_DSI;
        encoder->get_power_domains = gen11_dsi_get_power_domains;