From: Jani Nikula <jani.nikula@linux.intel.com>
To: ville.syrjala@linux.intel.com, intel-gfx@lists.freedesktop.org
Cc: stable@vger.kernel.org
Subject: Re: [Intel-gfx] [PATCH] drm/i915: Allow user modes to exceed DVI 165MHz limit
Date: Fri, 11 Apr 2014 17:28:25 +0300 [thread overview]
Message-ID: <87sipklz3q.fsf@intel.com> (raw)
In-Reply-To: <1395911325-4981-1-git-send-email-ville.syrjala@linux.intel.com>
Pushed to -fixes, thanks for the patch and Daniel's r-b on IRC.
BR,
Jani.
On Thu, 27 Mar 2014, ville.syrjala@linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> In commit
> commit 6375b768a9850b6154478993e5fb566fa4614a9c
> Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Date: Mon Mar 3 11:33:36 2014 +0200
>
> drm/i915: Reject >165MHz modes w/ DVI monitors
>
> the driver started to filter out display modes which exceed the
> single-link DVI 165Mz dotclock limits when the monitor doesn't report
> itself as being HDMI compliant. The intent was to filter out all
> EDID derived modes that require dual-link DVI to operate since we
> don't support dual-link.
>
> However the patch went a bit too far and also causes the driver to reject
> such modes even when specified by the user. Normally we don't check the
> sink limitations when setting a mode from the user. This allows the user
> to specify any mode whether the sink reports to support it or not. This
> can be useful since often the sinks support more modes than they report
> in the EDID.
>
> So relax the checks a bit, and apply the single-link DVI dotclock limit
> only when filtering the mode list, and ignore the limit when setting
> a user specified mode.
>
> Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=72961
> Tested-by: Nicholas Vinson <nvinson@comcast.net>
> Cc: stable@vger.kernel.org
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_hdmi.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
> index ee3181e..ca5d23d 100644
> --- a/drivers/gpu/drm/i915/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/intel_hdmi.c
> @@ -841,11 +841,11 @@ static void intel_disable_hdmi(struct intel_encoder *encoder)
> }
> }
>
> -static int hdmi_portclock_limit(struct intel_hdmi *hdmi)
> +static int hdmi_portclock_limit(struct intel_hdmi *hdmi, bool respect_dvi_limit)
> {
> struct drm_device *dev = intel_hdmi_to_dev(hdmi);
>
> - if (!hdmi->has_hdmi_sink || IS_G4X(dev))
> + if ((respect_dvi_limit && !hdmi->has_hdmi_sink) || IS_G4X(dev))
> return 165000;
> else if (IS_HASWELL(dev) || INTEL_INFO(dev)->gen >= 8)
> return 300000;
> @@ -857,7 +857,8 @@ static enum drm_mode_status
> intel_hdmi_mode_valid(struct drm_connector *connector,
> struct drm_display_mode *mode)
> {
> - if (mode->clock > hdmi_portclock_limit(intel_attached_hdmi(connector)))
> + if (mode->clock > hdmi_portclock_limit(intel_attached_hdmi(connector),
> + true))
> return MODE_CLOCK_HIGH;
> if (mode->clock < 20000)
> return MODE_CLOCK_LOW;
> @@ -875,7 +876,7 @@ bool intel_hdmi_compute_config(struct intel_encoder *encoder,
> struct drm_device *dev = encoder->base.dev;
> struct drm_display_mode *adjusted_mode = &pipe_config->adjusted_mode;
> int clock_12bpc = pipe_config->adjusted_mode.crtc_clock * 3 / 2;
> - int portclock_limit = hdmi_portclock_limit(intel_hdmi);
> + int portclock_limit = hdmi_portclock_limit(intel_hdmi, false);
> int desired_bpp;
>
> if (intel_hdmi->color_range_auto) {
> --
> 1.8.3.2
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Jani Nikula, Intel Open Source Technology Center
prev parent reply other threads:[~2014-04-11 14:28 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-27 9:08 [PATCH] drm/i915: Allow user modes to exceed DVI 165MHz limit ville.syrjala
2014-03-27 9:37 ` [Intel-gfx] " Chris Wilson
2014-03-27 11:03 ` Ville Syrjälä
2014-03-27 13:57 ` [Intel-gfx] " Daniel Vetter
2014-04-11 14:28 ` Jani Nikula [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87sipklz3q.fsf@intel.com \
--to=jani.nikula@linux.intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=stable@vger.kernel.org \
--cc=ville.syrjala@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.