summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnkit Nautiyal <ankit.k.nautiyal@intel.com>2026-04-30 16:12:16 +0300
committerAnkit Nautiyal <ankit.k.nautiyal@intel.com>2026-05-11 07:20:53 +0300
commitdae483da59657eba80efa0437b72f14d221e1f03 (patch)
tree8706a6d4446503b0e9a06a7dc6bf693cfba63e48
parent0161e2c2016337a2f22ef79dff0aee43c0841bce (diff)
downloadlinux-dae483da59657eba80efa0437b72f14d221e1f03.tar.xz
drm/i915/intel_sdvo: Check fixed_mode->clock against max_dotclock in mode_valid
For LVDS SDVO, mode validation checks the requested mode against the pipe max dotclock, but does not validate the selected fixed mode clock. After intel_panel_mode_valid(), get the fixed mode and validate its clock against the max dotclock. Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com> Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com> Link: https://patch.msgid.link/20260430131220.3891497-2-ankit.k.nautiyal@intel.com
-rw-r--r--drivers/gpu/drm/i915/display/intel_sdvo.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_sdvo.c b/drivers/gpu/drm/i915/display/intel_sdvo.c
index 2e1af9e869de..e7aaa5b203fd 100644
--- a/drivers/gpu/drm/i915/display/intel_sdvo.c
+++ b/drivers/gpu/drm/i915/display/intel_sdvo.c
@@ -1967,10 +1967,16 @@ intel_sdvo_mode_valid(struct drm_connector *connector,
if (IS_LVDS(intel_sdvo_connector)) {
enum drm_mode_status status;
+ const struct drm_display_mode *fixed_mode;
status = intel_panel_mode_valid(&intel_sdvo_connector->base, mode);
if (status != MODE_OK)
return status;
+
+ fixed_mode = intel_panel_fixed_mode(&intel_sdvo_connector->base, mode);
+
+ if (fixed_mode && fixed_mode->clock > max_dotclk)
+ return MODE_CLOCK_HIGH;
}
return MODE_OK;