From: Jani Nikula <jani.nikula@linux.intel.com>
To: Vinod Govindapillai <vinod.govindapillai@intel.com>,
intel-xe@lists.freedesktop.org, intel-gfx@lists.freedesktop.org
Cc: vinod.govindapillai@intel.com, imre.deak@intel.com,
jouni.hogander@intel.com
Subject: Re: [PATCH v5 06/10] drm/i915/hotplug: add helpers to track HPDs can generate PME
Date: Fri, 11 Sep 2026 16:00:49 +0300 [thread overview]
Message-ID: <8005a243080166f9f328f7a58af857858626f027@intel.com> (raw)
In-Reply-To: <20260911080448.778316-7-vinod.govindapillai@intel.com>
On Fri, 11 Sep 2026, Vinod Govindapillai <vinod.govindapillai@intel.com> wrote:
> As NVL+ devices can generate PME from HPDs, introduce a flag to
> keep track of such a capability and helper functions to access
> this flag. The plan is, this flag will be set to true from pm runtime
> suspend if PME is enabled and this flag will cleared on early runtime
> resume unconditionally. This is a place holder for the flag and later
> on this flag will be used for conditional IRQ resets and to decide
> whether to do HPD polling.
What's the rationale for duplicating the state in a flag? Why can't you
use intel_display_rpm_pme_enabled() and have a single point of truth?
This would dodge the extra error path clearing too.
I don't understand.
BR,
Jani.
>
> Bspec: 52979, 52980, 68857, 68867, 68970
> Assisted-by: GitHub_Copilot:claude-opus-5
> Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_display_core.h | 2 ++
> drivers/gpu/drm/i915/display/intel_hotplug.c | 10 ++++++++++
> drivers/gpu/drm/i915/display/intel_hotplug.h | 3 +++
> 3 files changed, 15 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display_core.h b/drivers/gpu/drm/i915/display/intel_display_core.h
> index c80b4a2f74f9..b3a396800798 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_core.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_core.h
> @@ -220,6 +220,8 @@ struct intel_hotplug {
> * cue to ignore the long HPDs and can be set / unset using debugfs.
> */
> bool ignore_long_hpd;
> +
> + bool can_generate_pme;
> };
>
> struct intel_vbt_data {
> diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.c b/drivers/gpu/drm/i915/display/intel_hotplug.c
> index 970aa95ee344..b24c9f360e24 100644
> --- a/drivers/gpu/drm/i915/display/intel_hotplug.c
> +++ b/drivers/gpu/drm/i915/display/intel_hotplug.c
> @@ -846,6 +846,16 @@ static void i915_hpd_poll_init_work(struct work_struct *work)
> }
> }
>
> +void intel_hpd_set_pme_capable(struct intel_display *display, bool can_generate_pme)
> +{
> + display->hotplug.can_generate_pme = can_generate_pme;
> +}
> +
> +bool intel_hpd_can_generate_pme(struct intel_display *display)
> +{
> + return display->hotplug.can_generate_pme;
> +}
> +
> /**
> * intel_hpd_poll_enable - enable polling for connectors with hpd
> * @display: display device instance
> diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.h b/drivers/gpu/drm/i915/display/intel_hotplug.h
> index edc41c9d3d65..c57e30f8366b 100644
> --- a/drivers/gpu/drm/i915/display/intel_hotplug.h
> +++ b/drivers/gpu/drm/i915/display/intel_hotplug.h
> @@ -35,4 +35,7 @@ void intel_hpd_enable_detection_work(struct intel_display *display);
> void intel_hpd_disable_detection_work(struct intel_display *display);
> bool intel_hpd_schedule_detection(struct intel_display *display);
>
> +void intel_hpd_set_pme_capable(struct intel_display *display, bool can_generate_pme);
> +bool intel_hpd_can_generate_pme(struct intel_display *display);
> +
> #endif /* __INTEL_HOTPLUG_H__ */
--
Jani Nikula, Intel
next prev parent reply other threads:[~2026-09-11 13:00 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-11 8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
2026-09-11 8:04 ` [PATCH v5 01/10] drm/xe/pm: initialize the device's system wakeup capabilities Vinod Govindapillai
2026-09-11 8:04 ` [PATCH v5 02/10] drm/xe/pm: introduce PM PME support Vinod Govindapillai
2026-09-11 8:04 ` [PATCH v5 03/10] drm/xe/pm: avoid reclaim when arming PME wakeup Vinod Govindapillai
2026-09-11 8:22 ` sashiko-bot
2026-09-11 8:04 ` [PATCH v5 04/10] drm/i915: add pme_enabled() to the parent interface Vinod Govindapillai
2026-09-11 8:04 ` [PATCH v5 05/10] drm/i915/xe: plug the pme_enabed implementation for xe Vinod Govindapillai
2026-09-11 8:04 ` [PATCH v5 06/10] drm/i915/hotplug: add helpers to track HPDs can generate PME Vinod Govindapillai
2026-09-11 13:00 ` Jani Nikula [this message]
2026-09-11 15:36 ` Govindapillai, Vinod
2026-09-11 8:04 ` [PATCH v5 07/10] drm/i915: plug the pm runtime handlers with PME HPD handling Vinod Govindapillai
2026-09-11 8:04 ` [PATCH v5 08/10] drm/xe/pm: clear PME HPD flag on runtime suspend error handler Vinod Govindapillai
2026-09-11 8:20 ` sashiko-bot
2026-09-11 8:04 ` [PATCH v5 09/10] drm/i915/irq: conditional HPD IRQ resets based on PME capability Vinod Govindapillai
2026-09-11 8:27 ` sashiko-bot
2026-09-11 8:04 ` [PATCH v5 10/10] drm/i915/hotplug: avoid HPD polling if the device is PME capable Vinod Govindapillai
2026-09-11 8:34 ` sashiko-bot
2026-09-11 8:17 ` ✓ CI.KUnit: success for pm_pme support on display hotplug (rev5) Patchwork
2026-09-11 9:06 ` ✓ Xe.CI.BAT: " Patchwork
2026-09-11 9:19 ` ✓ i915.CI.BAT: " Patchwork
2026-09-11 15:39 ` ✓ Xe.CI.FULL: " Patchwork
2026-09-12 5:04 ` ✗ 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=8005a243080166f9f328f7a58af857858626f027@intel.com \
--to=jani.nikula@linux.intel.com \
--cc=imre.deak@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=jouni.hogander@intel.com \
--cc=vinod.govindapillai@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.