From: Manasi Navare <manasi.d.navare@intel.com>
To: Jani Nikula <jani.nikula@intel.com>
Cc: intel-gfx@lists.freedesktop.org, dhinakaran.pandiyan@intel.com
Subject: Re: [PATCH v3 10/14] drm/i915/dp: add functions for max common link rate and lane count
Date: Tue, 28 Mar 2017 14:47:33 -0700 [thread overview]
Message-ID: <20170328214733.GF31477@intel.com> (raw)
In-Reply-To: <c7874054fabf06036d77187130978c2ffd770dd3.1490712890.git.jani.nikula@intel.com>
On Tue, Mar 28, 2017 at 05:59:10PM +0300, Jani Nikula wrote:
> These are the theoretical maximums common for source and sink. These are
> the maximums we should start with. They may be degraded in case of link
> training failures, and the dynamic link values are stored separately.
>
> Cc: Manasi Navare <manasi.d.navare@intel.com>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Manasi Navare <manasi.d.navare@intel.com>
> ---
> drivers/gpu/drm/i915/intel_dp.c | 29 +++++++++++++++++------------
> 1 file changed, 17 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index a0082a3784e8..b3df2082eac9 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -161,22 +161,27 @@ static void intel_dp_set_sink_rates(struct intel_dp *intel_dp)
> intel_dp->num_sink_rates = num_rates;
> }
>
> -static int intel_dp_max_sink_rate(struct intel_dp *intel_dp)
> +/* Theoretical max between source and sink */
> +static int intel_dp_max_common_rate(struct intel_dp *intel_dp)
> {
> - return intel_dp->sink_rates[intel_dp->num_sink_rates - 1];
> + return intel_dp->common_rates[intel_dp->num_common_rates - 1];
> }
>
> -static u8 intel_dp_max_lane_count(struct intel_dp *intel_dp)
> +/* Theoretical max between source and sink */
> +static int intel_dp_max_common_lane_count(struct intel_dp *intel_dp)
> {
> struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> - u8 source_max, sink_max;
> -
> - source_max = intel_dig_port->max_lanes;
> - sink_max = intel_dp->max_link_lane_count;
> + int source_max = intel_dig_port->max_lanes;
> + int sink_max = drm_dp_max_lane_count(intel_dp->dpcd);
>
> return min(source_max, sink_max);
> }
>
> +static int intel_dp_max_lane_count(struct intel_dp *intel_dp)
> +{
> + return intel_dp->max_link_lane_count;
> +}
> +
> int
> intel_dp_link_required(int pixel_clock, int bpp)
> {
> @@ -329,7 +334,7 @@ int intel_dp_get_link_train_fallback_values(struct intel_dp *intel_dp,
> intel_dp->max_link_rate = intel_dp->common_rates[index - 1];
> intel_dp->max_link_lane_count = lane_count;
> } else if (lane_count > 1) {
> - intel_dp->max_link_rate = intel_dp_max_sink_rate(intel_dp);
> + intel_dp->max_link_rate = intel_dp_max_common_rate(intel_dp);
> intel_dp->max_link_lane_count = lane_count >> 1;
> } else {
> DRM_ERROR("Link Training Unsuccessful\n");
> @@ -4636,11 +4641,11 @@ intel_dp_long_pulse(struct intel_connector *intel_connector)
> yesno(drm_dp_tps3_supported(intel_dp->dpcd)));
>
> if (intel_dp->reset_link_params) {
> - /* Set the max lane count for link */
> - intel_dp->max_link_lane_count = drm_dp_max_lane_count(intel_dp->dpcd);
> + /* Initial max link lane count */
> + intel_dp->max_link_lane_count = intel_dp_max_common_lane_count(intel_dp);
>
> - /* Set the max link rate for link */
> - intel_dp->max_link_rate = intel_dp_max_sink_rate(intel_dp);
> + /* Initial max link rate */
> + intel_dp->max_link_rate = intel_dp_max_common_rate(intel_dp);
>
> intel_dp->reset_link_params = false;
> }
> --
> 2.1.4
>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2017-03-28 21:43 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-28 14:59 [PATCH v3 00/14] drm/i915/dp: link rate and lane count refactoring Jani Nikula
2017-03-28 14:59 ` [PATCH v3 01/14] drm/i915/dp: use known correct array size in rate_to_index Jani Nikula
2017-04-04 19:16 ` Manasi Navare
2017-03-28 14:59 ` [PATCH v3 02/14] drm/i915/dp: return errors from rate_to_index() Jani Nikula
2017-03-28 19:16 ` Manasi Navare
2017-03-29 7:17 ` Jani Nikula
2017-04-04 19:17 ` Manasi Navare
2017-03-28 14:59 ` [PATCH v3 03/14] drm/i915/dp: rename rate_to_index() to intel_dp_rate_index() and reuse Jani Nikula
2017-04-04 19:19 ` Manasi Navare
2017-03-28 14:59 ` [PATCH v3 04/14] drm/i915/dp: cache source rates at init Jani Nikula
2017-04-05 1:17 ` Manasi Navare
2017-03-28 14:59 ` [PATCH v3 05/14] drm/i915/dp: generate and cache sink rate array for all DP, not just eDP 1.4 Jani Nikula
2017-04-05 1:20 ` Manasi Navare
2017-04-06 11:41 ` Jani Nikula
2017-03-28 14:59 ` [PATCH v3 06/14] drm/i915/dp: use the sink rates array for max sink rates Jani Nikula
2017-03-28 14:59 ` [PATCH v3 07/14] drm/i915/dp: cache common rates with " Jani Nikula
2017-04-05 1:21 ` Manasi Navare
2017-03-28 14:59 ` [PATCH v3 08/14] drm/i915/dp: do not limit rate seek when not needed Jani Nikula
2017-03-28 21:02 ` Manasi Navare
2017-03-29 9:23 ` [PATCH] " Jani Nikula
2017-04-05 1:24 ` Manasi Navare
2017-03-28 14:59 ` [PATCH v3 09/14] drm/i915/dp: don't call the link parameters sink parameters Jani Nikula
2017-03-28 21:11 ` Manasi Navare
2017-03-28 14:59 ` [PATCH v3 10/14] drm/i915/dp: add functions for max common link rate and lane count Jani Nikula
2017-03-28 21:47 ` Manasi Navare [this message]
2017-03-28 14:59 ` [PATCH v3 11/14] drm/i915/mst: use max link not sink " Jani Nikula
2017-03-28 21:51 ` Manasi Navare
2017-03-28 14:59 ` [PATCH v3 12/14] drm/i915/dp: localize link rate index variable more Jani Nikula
2017-03-28 22:00 ` Manasi Navare
2017-03-29 7:22 ` Jani Nikula
2017-04-05 1:26 ` Manasi Navare
2017-03-28 14:59 ` [PATCH v3 13/14] drm/i915/dp: use readb and writeb calls for single byte DPCD access Jani Nikula
2017-04-05 1:28 ` Manasi Navare
2017-03-28 14:59 ` [PATCH v3 14/14] drm/i915/dp: read sink count to a temporary variable first Jani Nikula
2017-03-28 16:50 ` ✓ Fi.CI.BAT: success for drm/i915/dp: link rate and lane count refactoring (rev3) Patchwork
2017-03-29 9:48 ` ✓ Fi.CI.BAT: success for drm/i915/dp: link rate and lane count refactoring (rev4) Patchwork
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=20170328214733.GF31477@intel.com \
--to=manasi.d.navare@intel.com \
--cc=dhinakaran.pandiyan@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jani.nikula@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.