All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@intel.com>
To: intel-gfx@lists.freedesktop.org
Cc: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
Subject: Re: [Intel-gfx] [PATCH 1/2] drm/i915/dp: abstract intel_dp_lane_max_vswing_reached()
Date: Tue, 12 Oct 2021 12:13:29 +0300	[thread overview]
Message-ID: <87r1cqzjuu.fsf@intel.com> (raw)
In-Reply-To: <20211011182144.22074-1-jani.nikula@intel.com>

On Mon, 11 Oct 2021, Jani Nikula <jani.nikula@intel.com> wrote:
> Add per-lane abstraction for max vswing reached to make follow-up
> cleaner, as this one reverses the conditions.
>
> v2: both conditions need to be true, reverse (Ville)
>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>

Pushed both with Ville's IRC r-b, thanks for the review.

BR,
Jani.

> ---
>  .../drm/i915/display/intel_dp_link_training.c | 42 +++++++++++--------
>  1 file changed, 25 insertions(+), 17 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dp_link_training.c b/drivers/gpu/drm/i915/display/intel_dp_link_training.c
> index 1a943ae38a6b..1d4bcb91cd3b 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp_link_training.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp_link_training.c
> @@ -515,29 +515,37 @@ intel_dp_update_link_train(struct intel_dp *intel_dp,
>  	return ret == crtc_state->lane_count;
>  }
>  
> +/*
> + * FIXME: The DP spec is very confusing here, also the Link CTS spec seems to
> + * have self contradicting tests around this area.
> + *
> + * In lieu of better ideas let's just stop when we've reached the max supported
> + * vswing with its max pre-emphasis, which is either 2+1 or 3+0 depending on
> + * whether vswing level 3 is supported or not.
> + */
> +static bool intel_dp_lane_max_vswing_reached(u8 train_set_lane)
> +{
> +	u8 v = (train_set_lane & DP_TRAIN_VOLTAGE_SWING_MASK) >>
> +		DP_TRAIN_VOLTAGE_SWING_SHIFT;
> +	u8 p = (train_set_lane & DP_TRAIN_PRE_EMPHASIS_MASK) >>
> +		DP_TRAIN_PRE_EMPHASIS_SHIFT;
> +
> +	if ((train_set_lane & DP_TRAIN_MAX_SWING_REACHED) == 0)
> +		return false;
> +
> +	if (v + p != 3)
> +		return false;
> +
> +	return true;
> +}
> +
>  static bool intel_dp_link_max_vswing_reached(struct intel_dp *intel_dp,
>  					     const struct intel_crtc_state *crtc_state)
>  {
>  	int lane;
>  
> -	/*
> -	 * FIXME: The DP spec is very confusing here, also the Link CTS
> -	 * spec seems to have self contradicting tests around this area.
> -	 *
> -	 * In lieu of better ideas let's just stop when we've reached the
> -	 * max supported vswing with its max pre-emphasis, which is either
> -	 * 2+1 or 3+0 depending on whether vswing level 3 is supported or not.
> -	 */
>  	for (lane = 0; lane < crtc_state->lane_count; lane++) {
> -		u8 v = (intel_dp->train_set[lane] & DP_TRAIN_VOLTAGE_SWING_MASK) >>
> -			DP_TRAIN_VOLTAGE_SWING_SHIFT;
> -		u8 p = (intel_dp->train_set[lane] & DP_TRAIN_PRE_EMPHASIS_MASK) >>
> -			DP_TRAIN_PRE_EMPHASIS_SHIFT;
> -
> -		if ((intel_dp->train_set[lane] & DP_TRAIN_MAX_SWING_REACHED) == 0)
> -			return false;
> -
> -		if (v + p != 3)
> +		if (!intel_dp_lane_max_vswing_reached(intel_dp->train_set[lane]))
>  			return false;
>  	}

-- 
Jani Nikula, Intel Open Source Graphics Center

      parent reply	other threads:[~2021-10-12  9:13 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-11 18:21 [Intel-gfx] [PATCH 1/2] drm/i915/dp: abstract intel_dp_lane_max_vswing_reached() Jani Nikula
2021-10-11 18:21 ` [Intel-gfx] [PATCH 2/2] drm/i915/dg2: update link training for 128b/132b Jani Nikula
2021-10-11 19:14 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915/dp: abstract intel_dp_lane_max_vswing_reached() Patchwork
2021-10-11 19:43 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2021-10-11 22:47 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2021-10-12  9:13 ` 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=87r1cqzjuu.fsf@intel.com \
    --to=jani.nikula@intel.com \
    --cc=intel-gfx@lists.freedesktop.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.