Commit 6375b768a9850b6154478993e5fb566fa4614a9c

Authored by Ville Syrjälä
Committed by Jani Nikula
1 parent d9d820810d

drm/i915: Reject >165MHz modes w/ DVI monitors

Single-link DVI max dotclock is 165MHz. Filter out modes with higher
dotclock when the monitor doesn't support HDMI.

Modes higher than 165 MHz were allowed in

commit 7d148ef51a657fd04036c3ed7803da600dd0d451
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date:   Mon Jul 22 18:02:39 2013 +0200

    drm/i915: fix hdmi portclock limits

Also don't attempt to use 12bpc mode with DVI monitors.

Cc: Adam Nielsen <a.nielsen@shikadi.net>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75345
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=70331
Tested-by: Ralf Jung <post+kernel@ralfj.de>
Cc: stable@vger.kernel.org
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>

Showing 1 changed file with 3 additions and 3 deletions Side-by-side Diff

drivers/gpu/drm/i915/intel_hdmi.c
... ... @@ -845,7 +845,7 @@
845 845 {
846 846 struct drm_device *dev = intel_hdmi_to_dev(hdmi);
847 847  
848   - if (IS_G4X(dev))
  848 + if (!hdmi->has_hdmi_sink || IS_G4X(dev))
849 849 return 165000;
850 850 else if (IS_HASWELL(dev) || INTEL_INFO(dev)->gen >= 8)
851 851 return 300000;
... ... @@ -899,8 +899,8 @@
899 899 * outputs. We also need to check that the higher clock still fits
900 900 * within limits.
901 901 */
902   - if (pipe_config->pipe_bpp > 8*3 && clock_12bpc <= portclock_limit
903   - && HAS_PCH_SPLIT(dev)) {
  902 + if (pipe_config->pipe_bpp > 8*3 && intel_hdmi->has_hdmi_sink &&
  903 + clock_12bpc <= portclock_limit && HAS_PCH_SPLIT(dev)) {
904 904 DRM_DEBUG_KMS("picking bpc to 12 for HDMI output\n");
905 905 desired_bpp = 12*3;
906 906