From: Jani Nikula <jani.nikula@linux.intel.com>
To: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>,
intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/i915: read bpp from vbt only for older panels
Date: Thu, 30 Jul 2015 12:57:13 +0300 [thread overview]
Message-ID: <87a8ue9ddy.fsf@intel.com> (raw)
In-Reply-To: <1438245248-7050-1-git-send-email-sivakumar.thulasimani@intel.com>
On Thu, 30 Jul 2015, Sivakumar Thulasimani <sivakumar.thulasimani@intel.com> wrote:
> From: "Thulasimani,Sivakumar" <sivakumar.thulasimani@intel.com>
>
> BPP bits defined in VBT should be used only on panels whose
> edid version is 1.3 or older. EDID version 1.4 introduced offsets
> where bpp is defined and hence should be preferred over any value
> programmed in VBT.
Should we actually look at the EDID bpp somewhere?
> Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
> ---
> drivers/gpu/drm/i915/intel_dp.c | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index 44f8a32..898dc74 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -132,6 +132,7 @@ static void edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync);
> static void vlv_init_panel_power_sequencer(struct intel_dp *intel_dp);
> static void vlv_steal_power_sequencer(struct drm_device *dev,
> enum pipe pipe);
> +static struct edid * intel_dp_get_edid(struct intel_dp *intel_dp);
>
> static int
> intel_dp_max_link_bw(struct intel_dp *intel_dp)
> @@ -1353,6 +1354,7 @@ intel_dp_compute_config(struct intel_encoder *encoder,
> enum port port = dp_to_dig_port(intel_dp)->port;
> struct intel_crtc *intel_crtc = to_intel_crtc(pipe_config->base.crtc);
> struct intel_connector *intel_connector = intel_dp->attached_connector;
> + struct edid *edid = NULL;
> int lane_count, clock;
> int min_lane_count = 1;
> int max_lane_count = intel_dp_max_lane_count(intel_dp);
> @@ -1409,12 +1411,19 @@ intel_dp_compute_config(struct intel_encoder *encoder,
> * bpc in between. */
> bpp = pipe_config->pipe_bpp;
> if (is_edp(intel_dp)) {
> - if (dev_priv->vbt.edp_bpp && dev_priv->vbt.edp_bpp < bpp) {
> + edid = intel_dp_get_edid(intel_dp);
> +
> + /* Get bpp from vbt only for panels with edid 1.3 or older */
> + if (edid && edid->version == 1 && edid->revision <= 3 &&
> + (dev_priv->vbt.edp_bpp && dev_priv->vbt.edp_bpp < bpp)) {
Now you require the panel to have an EDID in order to use the bpp in
VBT.
BR,
Jani.
> DRM_DEBUG_KMS("clamping bpp for eDP panel to BIOS-provided %i\n",
> dev_priv->vbt.edp_bpp);
> bpp = dev_priv->vbt.edp_bpp;
> }
>
> + if (edid)
> + kfree(edid);
> +
> /*
> * Use the maximum clock and number of lanes the eDP panel
> * advertizes being capable of. The panels are generally
> --
> 1.7.9.5
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2015-07-30 9:54 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-30 8:34 [PATCH] drm/i915: read bpp from vbt only for older panels Sivakumar Thulasimani
2015-07-30 9:57 ` Jani Nikula [this message]
2015-07-30 10:23 ` Sivakumar Thulasimani
-- strict thread matches above, loose matches on Subject: below --
2015-07-31 5:35 Sivakumar Thulasimani
2015-07-31 9:08 ` Jani Nikula
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=87a8ue9ddy.fsf@intel.com \
--to=jani.nikula@linux.intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=sivakumar.thulasimani@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.