From: Jani Nikula <jani.nikula@intel.com>
To: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH v4 1/2] drm/i915/dp: abstract intel_dp_lane_max_vswing_reached()
Date: Thu, 07 Oct 2021 17:27:53 +0300 [thread overview]
Message-ID: <8735pczz86.fsf@intel.com> (raw)
In-Reply-To: <YV8BdPhTVg1rQR48@intel.com>
On Thu, 07 Oct 2021, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> On Thu, Oct 07, 2021 at 04:39:07PM +0300, Jani Nikula wrote:
>> Add per-lane abstraction for max vswing reached to make follow-up
>> cleaner, as this one reverses the conditions.
>>
>> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>> ---
>> .../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..d239d72bfcf2 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)
>> + return true;
>> +
>> + if (v + p == 3)
>> + return true;
>
> We want both to be true at the same time.
D'oh! See, that's why I split it up from the other patch, but fumbled it
anyway.
Thanks.
BR,
Jani.
>
>> +
>> + return false;
>> +}
>> +
>> 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;
>> }
>>
>> --
>> 2.30.2
--
Jani Nikula, Intel Open Source Graphics Center
next prev parent reply other threads:[~2021-10-07 14:28 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-07 13:39 [Intel-gfx] [PATCH v4 1/2] drm/i915/dp: abstract intel_dp_lane_max_vswing_reached() Jani Nikula
2021-10-07 13:39 ` [Intel-gfx] [PATCH v4 2/2] drm/i915/dg2: update link training for 128b/132b Jani Nikula
2021-10-07 14:19 ` Ville Syrjälä
2021-10-07 14:17 ` [Intel-gfx] [PATCH v4 1/2] drm/i915/dp: abstract intel_dp_lane_max_vswing_reached() Ville Syrjälä
2021-10-07 14:27 ` Jani Nikula [this message]
2021-10-07 14:37 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [v4,1/2] " Patchwork
2021-10-07 15:10 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2021-10-07 16:58 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " 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=8735pczz86.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.