From: "Nautiyal, Ankit K" <ankit.k.nautiyal@intel.com>
To: <sashiko-reviews@lists.linux.dev>
Cc: <intel-xe@lists.freedesktop.org>, <intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH v5 10/12] drm/i915/dp: Introduce helpers to enable/disable CMN SDP Transmission line
Date: Thu, 10 Sep 2026 08:18:51 +0530 [thread overview]
Message-ID: <ef61115c-0f8f-4267-b6ca-7b134216a79e@intel.com> (raw)
In-Reply-To: <20260908071204.661D91F00A3A@smtp.kernel.org>
On 9/8/2026 12:42 PM, sashiko-bot@kernel.org wrote:
> Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
> - [High] Using cmn_sdp_tl == 0 as a condition to skip hardware programming incorrectly disables valid configurations where the base transmission line is exactly 0.
> --
>
> commit add857e2d6bd573b97121b3d862f0f6816f3b50e
> Author: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
>
> drm/i915/dp: Introduce helpers to enable/disable CMN SDP Transmission line
>
> This commit introduces helper functions to enable and disable the Common SDP
> Transmission Line (CMN_SDP_TL) and its stagger registers based on the
> configuration stored in crtc_state.
>
>> diff --git a/drivers/gpu/drm/i915/display/intel_dip.c b/drivers/gpu/drm/i915/display/intel_dip.c
>> index d1acc7eb5a391..0c80d6305feca 100644
>> --- a/drivers/gpu/drm/i915/display/intel_dip.c
>> +++ b/drivers/gpu/drm/i915/display/intel_dip.c
> [ ... ]
>> @@ -61,3 +63,57 @@ void intel_dip_sdp_transmission_line_get_config(struct intel_crtc_state *crtc_st
>> +void intel_dip_cmn_sdp_transmission_line_enable(const struct intel_crtc_state *crtc_state)
>> +{
>> + struct intel_display *display = to_intel_display(crtc_state);
>> + enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
>> + int gmp_stagger;
>> + int pps_stagger;
>> + int vsc_ext_stagger;
>> +
>> + if (!crtc_state->dip.cmn_sdp_tl)
>> + return;
> [Severity: High]
> Does this incorrectly skip hardware programming for a valid configuration?
>
> Since the transmission line can be computed as crtc_state->vrr.guardband - 1,
> if guardband evaluates to 1, cmn_sdp_tl becomes 0. Since 0 is a
> mathematically valid 0-based register index, this early return will
> incorrectly treat a valid base transmission line of 0 as disabled, skipping
> the register programming entirely.
>
> [ ... ]
>> +void intel_dip_cmn_sdp_transmission_line_disable(const struct intel_crtc_state *old_crtc_state)
>> +{
>> + struct intel_display *display = to_intel_display(old_crtc_state);
>> + enum transcoder cpu_transcoder = old_crtc_state->cpu_transcoder;
>> +
>> + if (!old_crtc_state->dip.cmn_sdp_tl)
>> + return;
> [Severity: High]
> Similarly, does this skip disabling the transmission line if the valid
> configured base transmission line was exactly 0?
>
> If the base transmission line was initially programmed as 0, this early
> return prevents the register from being cleared on disable.
Thanks for pointing this out. Makes sense to gate on
HAS_COMMON_SDP_TL(display) instead of checking
crtc_state->dip.cmn_sdp_tl in both places, since 0 is a valid
transmission line value.
Will fix in next version.
Thanks & Regards,
Ankit
>
>> +
>> + intel_de_write(display, CMN_SDP_TL(display, cpu_transcoder), 0);
>> +}
next prev parent reply other threads:[~2026-09-10 2:49 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-08 6:22 [PATCH v5 00/12] Add support for Common SDP Transmission Line Ankit Nautiyal
2026-09-08 6:22 ` [PATCH v5 01/12] drm/i915/dip: Add new file to handle Data Island Packet hardware Ankit Nautiyal
2026-09-08 6:22 ` [PATCH v5 02/12] drm/i915/vrr: Use the helper to write EMP_AS_SDP_TL register Ankit Nautiyal
2026-09-08 6:22 ` [PATCH v5 03/12] drm/i915/intel_dip: Add check for DP encoder Ankit Nautiyal
2026-09-08 6:22 ` [PATCH v5 04/12] drm/i915/dip: Add helper to get AS SDP Transmission Line Ankit Nautiyal
2026-09-08 6:22 ` [PATCH v5 05/12] drm/i915/display: Add crtc state for DIP transmission lines Ankit Nautiyal
2026-09-08 6:22 ` [PATCH v5 06/12] drm/i915/dip: Store and use AS SDP transmission line from crtc state Ankit Nautiyal
2026-09-08 7:09 ` sashiko-bot
2026-09-10 2:47 ` Nautiyal, Ankit K
2026-09-08 6:22 ` [PATCH v5 07/12] drm/i915/dip_regs: Add register definitions for common SDP Transmission Line Ankit Nautiyal
2026-09-08 7:49 ` Kandpal, Suraj
2026-09-08 6:22 ` [PATCH v5 08/12] drm/i915/dip: Add HAS_COMMON_SDP_TL macro Ankit Nautiyal
2026-09-08 6:22 ` [PATCH v5 09/12] drm/i915/dip: Store SDP transmission lines in crtc_state Ankit Nautiyal
2026-09-08 7:50 ` Kandpal, Suraj
2026-09-08 6:22 ` [PATCH v5 10/12] drm/i915/dp: Introduce helpers to enable/disable CMN SDP Transmission line Ankit Nautiyal
2026-09-08 7:12 ` sashiko-bot
2026-09-10 2:48 ` Nautiyal, Ankit K [this message]
2026-09-08 6:22 ` [PATCH v5 11/12] drm/i915/dip: Enable Common " Ankit Nautiyal
2026-09-08 7:11 ` sashiko-bot
2026-09-10 4:49 ` Nautiyal, Ankit K
2026-09-08 8:10 ` Kandpal, Suraj
2026-09-10 4:54 ` Nautiyal, Ankit K
2026-09-08 6:22 ` [PATCH v5 12/12] drm/i915/display: Dump DIP Transmission lines Ankit Nautiyal
2026-09-08 8:03 ` Kandpal, Suraj
2026-09-08 9:52 ` ✗ i915.CI.BAT: failure for Add support for Common SDP Transmission Line (rev5) 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=ef61115c-0f8f-4267-b6ca-7b134216a79e@intel.com \
--to=ankit.k.nautiyal@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=sashiko-reviews@lists.linux.dev \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox