Intel-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Suraj Kandpal" <suraj.kandpal@intel.com>
Cc: intel-xe@lists.freedesktop.org, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH v2] drm/i915/dp: Disable DC5/6 before AUX programming
Date: Fri, 18 Sep 2026 06:46:54 +0000	[thread overview]
Message-ID: <20260918064655.464C71F000FF@smtp.kernel.org> (raw)
In-Reply-To: <20260918063829.1321703-1-suraj.kandpal@intel.com>

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] drm/i915/dp: incorrect power sequencing for DC_OFF and AUX domains
--

commit f07687ba1d41d832937531ae2d822e56d80de373
Author: Suraj Kandpal <suraj.kandpal@intel.com>

drm/i915/dp: Disable DC5/6 before AUX programming

This commit introduces explicit disabling of DC5/6 states during the
AUX programming sequence on Xe3p and later platforms with LT PHY. The
change aims to honor the hardware Bspec which requires the PHY to be
powered down before AUX programming.

> diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux.c b/drivers/gpu/drm/i915/display/intel_dp_aux.c
> index 3cb07b0a901cf..879b203f92585 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp_aux.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp_aux.c
[ ... ]
> @@ -286,6 +287,9 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp,
>  
>  	aux_wakeref = intel_display_power_get(display, aux_domain);
>  
> +	if (HAS_LT_PHY(display))
> +		dc_off_wakeref = intel_display_power_get(display, POWER_DOMAIN_DC_OFF);
> +

[Severity: High]
The commit message states we need to make sure DC5/6 is disabled before
the AUX programming sequence. However, does this sequence actually power
on the AUX domain before disabling the DC states?

By calling intel_display_power_get() for aux_domain before grabbing the
POWER_DOMAIN_DC_OFF wakeref, we seem to be violating the hardware
requirement to disable DC5/6 first. Could this regression cause AUX
programming failures or display bring-up issues on platforms with LT PHY?

[ ... ]
> @@ -459,6 +463,9 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp,
>  	if (pps_wakeref)
>  		intel_pps_unlock(intel_dp, pps_wakeref);
>  
> +	if (dc_off_wakeref)
> +		intel_display_power_put(display, POWER_DOMAIN_DC_OFF, dc_off_wakeref);
> +
>  	intel_display_power_put_async(display, aux_domain, aux_wakeref);
>  out_unlock:
>  	intel_digital_port_unlock(encoder);

[Severity: High]
Does this regression cause rapid hardware toggling during back-to-back
AUX transactions?

The aux_domain wakeref is released asynchronously right after this via
intel_display_power_put_async(), which usually prevents rapid toggling
between transfers. But because dc_off_wakeref is released synchronously
first, it appears we allow DC states to re-enable while the AUX domain
is still powered. 

Should the POWER_DOMAIN_DC_OFF wakeref also be released asynchronously,
or at least released after the AUX domain is fully powered down?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260918063829.1321703-1-suraj.kandpal@intel.com?part=1

  reply	other threads:[~2026-09-18  6:46 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-18  6:04 [PATCH] drm/i915/dp: Disable DC5/6 before AUX programming Suraj Kandpal
2026-09-18  6:10 ` sashiko-bot
2026-09-18  6:22 ` Murthy, Arun R
2026-09-18  6:35   ` Murthy, Arun R
2026-09-18  6:38 ` [PATCH v2] " Suraj Kandpal
2026-09-18  6:46   ` sashiko-bot [this message]
2026-09-18  7:59   ` Murthy, Arun R
2026-09-18 10:08   ` Jani Nikula
2026-09-18 16:40     ` Kandpal, Suraj
2026-09-18 15:09   ` Imre Deak
2026-09-18 16:40     ` Kandpal, Suraj
2026-09-18  7:34 ` ✓ i915.CI.BAT: success for drm/i915/dp: Disable DC5/6 before AUX programming (rev2) Patchwork
2026-09-18 14:16 ` ✗ i915.CI.Full: failure " Patchwork
2026-09-21  2:20 ` [PATCH] drm/i915/xe3plpd: Map AUX power domains to DC_off Suraj Kandpal
2026-09-21  7:25   ` Kandpal, Suraj
2026-09-21  8:14     ` Jani Nikula
2026-09-22  3:39   ` Murthy, Arun R
2026-09-21  3:18 ` ✓ i915.CI.BAT: success for drm/i915/dp: Disable DC5/6 before AUX programming (rev3) Patchwork
2026-09-21  5:15 ` ✗ i915.CI.Full: 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=20260918064655.464C71F000FF@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=sashiko-reviews@lists.linux.dev \
    --cc=suraj.kandpal@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox