]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm/i915: Limit MST modes based on plane size too
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 1 Oct 2019 15:46:28 +0000 (18:46 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 2 Oct 2019 14:21:48 +0000 (17:21 +0300)
When adding the max plane size checks to the .mode_valid() hooks
I naturally forgot about MST. Take care of that one as well.

Cc: Manasi Navare <manasi.d.navare@intel.com>
Cc: Sean Paul <sean@poorly.run>
Cc: José Roberto de Souza <jose.souza@intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Fixes: 2d20411e25a3 ("drm/i915: Don't advertise modes that exceed the max plane size")
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191001154629.11063-1-ville.syrjala@linux.intel.com
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
drivers/gpu/drm/i915/display/intel_dp_mst.c

index df4f35c10a6937743991ede1529232c2a120570b..2203be28ea016b3af21560c77d66428c45708660 100644 (file)
@@ -424,6 +424,7 @@ static enum drm_mode_status
 intel_dp_mst_mode_valid(struct drm_connector *connector,
                        struct drm_display_mode *mode)
 {
+       struct drm_i915_private *dev_priv = to_i915(connector->dev);
        struct intel_connector *intel_connector = to_intel_connector(connector);
        struct intel_dp *intel_dp = intel_connector->mst_port;
        int max_dotclk = to_i915(connector->dev)->max_dotclk_freq;
@@ -451,7 +452,7 @@ intel_dp_mst_mode_valid(struct drm_connector *connector,
        if (mode_rate > max_rate || mode->clock > max_dotclk)
                return MODE_CLOCK_HIGH;
 
-       return MODE_OK;
+       return intel_mode_valid_max_plane_size(dev_priv, mode);
 }
 
 static struct drm_encoder *intel_mst_atomic_best_encoder(struct drm_connector *connector,