intel-xe.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/31] Reconcile i915's and xe's display power mgt sequences
@ 2024-09-24 20:35 Rodrigo Vivi
  2024-09-24 20:35 ` [PATCH 01/31] drm/i915: Remove vga and gmbus seq out of i915_restore_display Rodrigo Vivi
                   ` (35 more replies)
  0 siblings, 36 replies; 81+ messages in thread
From: Rodrigo Vivi @ 2024-09-24 20:35 UTC (permalink / raw)
  To: intel-gfx, intel-xe; +Cc: imre.deak, Rodrigo Vivi

Reconcile i915's and xe's display power management sequences.

The main goal of this series is to ensure that the display
power management sequences from both drivers are fully aligned.
So, it needs to live under i915/display/ and xe_display_pm
can only be a wrapper to check for the xe's module
parameter before jumping in the i915/display functions.

During this process, it was clear that the Xe's runtime pm
sequences for integrated gfx (non d3cold capable) was totally
misaligned with i915 and prune to more bugs. So, this series ends
up fixing this and bringing a full alignment there as well.

The one new thing under i915 is the d3cold sequences. Apparently
that can be reduced, but for now this is what is validated and
stable on both DG2 and BMG. So, let's move that to the
i915/display side as well and continue on the improvements with
the code in the right place.

When I started this work I was hoping that I could run more
conversions to intel_display struct before moving things from
i915_driver.c to intel_display_driver, however that was a deeper
task and this series is already deep enough.

Cc: Imre Deak <imre.deak@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>


Rodrigo Vivi (31):
  drm/i915: Remove vga and gmbus seq out of i915_restore_display
  drm/i915/display: Convert i915_suspend into i9xx_display_sr
  drm/i915/display: Move regfile registers intel_display.restore
  drm/i915/display: Move shutdown sequences under display driver
  drm/xe: At shutdown disable commit helpers instead of flushing
  drm/xe: Use i915-display shutdown sequence directly
  drm/{i915,xe}/display: Move DP MST calls to display_driver
  drm/i915/display: Move suspend sequences to intel_display_driver
  drm/xe/display: Delay hpd_init resume
  drm/xe/display: Spin-off xe_display runtime/d3cold sequences
  drm/{i915,xe}: Consolidate display resume functions
  drm/i915: Remove lingering pci_save_state
  drm/{i915,xe}: Consolidate display suspend functions
  drm/i915/display: Move resume sequences to intel_display_driver
  drm/xe/display: Delay dsm handler registration
  drm/{i915,xe}: Move power_domains suspend/resume to display_power
  drm/{i915,xe}: Move remaining intel_power_domains to intel_display
  drm/i915/display: Split resume_noirq calls for now
  drm/xe/display: Align display resume sequence with i915
  drm/xe/display: Align suspend sequence with i915
  drm/{i915,xe}/display: Move dsm registration under intel_driver
  drm/i915/display: Move runtime pm related calls under
    intel_display_driver
  drm/xe/display: Prepare runtime pm functions
  drm/xe/display: Call intel_hpd_init on every runtime resume
  drm/xe/display: Move hpd_poll calls to later runtime stages
  drm/xe/display: Add missing watermark ipc update at runtime resume
  drm/xe/display: Notify opregion upon runtime suspend/resume non-d3cold
  drm/xe/display: Move display runtime suspend to a later point
  drm/xe/display: Kill crtc commit flush
  drm/xe/display: Add missing power display handling on non-d3cold rpm
  drm/{i915,xe}/display: Consolidade entire runtime pm sequence

 drivers/gpu/drm/i915/Makefile                 |   2 +-
 .../gpu/drm/i915/display/i9xx_display_sr.c    |  99 +++++++
 .../gpu/drm/i915/display/i9xx_display_sr.h    |  14 +
 .../gpu/drm/i915/display/intel_display_core.h |   5 +
 .../drm/i915/display/intel_display_driver.c   | 247 ++++++++++++++++++
 .../drm/i915/display/intel_display_driver.h   |  18 ++
 .../drm/i915/display/intel_display_power.c    |   6 +-
 .../drm/i915/display/intel_display_power.h    |   2 +-
 drivers/gpu/drm/i915/i915_driver.c            | 161 ++----------
 drivers/gpu/drm/i915/i915_drv.h               |   9 -
 drivers/gpu/drm/i915/i915_suspend.c           | 141 ----------
 drivers/gpu/drm/i915/i915_suspend.h           |  14 -
 drivers/gpu/drm/xe/display/xe_display.c       | 185 ++++---------
 drivers/gpu/drm/xe/display/xe_display.h       |  11 +-
 drivers/gpu/drm/xe/display/xe_fb_pin.c        |   8 +
 drivers/gpu/drm/xe/xe_device.c                |   4 +-
 drivers/gpu/drm/xe/xe_pm.c                    |  16 +-
 17 files changed, 498 insertions(+), 444 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/display/i9xx_display_sr.c
 create mode 100644 drivers/gpu/drm/i915/display/i9xx_display_sr.h
 delete mode 100644 drivers/gpu/drm/i915/i915_suspend.c
 delete mode 100644 drivers/gpu/drm/i915/i915_suspend.h

-- 
2.46.0


^ permalink raw reply	[flat|nested] 81+ messages in thread

end of thread, other threads:[~2024-11-15  6:39 UTC | newest]

Thread overview: 81+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-24 20:35 [PATCH 00/31] Reconcile i915's and xe's display power mgt sequences Rodrigo Vivi
2024-09-24 20:35 ` [PATCH 01/31] drm/i915: Remove vga and gmbus seq out of i915_restore_display Rodrigo Vivi
2024-09-25 10:20   ` Jani Nikula
2024-09-25 20:59     ` Rodrigo Vivi
2024-10-07 19:15   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 02/31] drm/i915/display: Convert i915_suspend into i9xx_display_sr Rodrigo Vivi
2024-10-01 13:21   ` Jani Nikula
2024-10-07 19:15   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 03/31] drm/i915/display: Move regfile registers intel_display.restore Rodrigo Vivi
2024-10-07 19:17   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 04/31] drm/i915/display: Move shutdown sequences under display driver Rodrigo Vivi
2024-10-07 19:18   ` Cavitt, Jonathan
2024-10-08 15:57   ` Imre Deak
2024-09-24 20:35 ` [PATCH 05/31] drm/xe: At shutdown disable commit helpers instead of flushing Rodrigo Vivi
2024-10-07 19:42   ` Cavitt, Jonathan
2024-11-14 20:20     ` Rodrigo Vivi
2024-09-24 20:35 ` [PATCH 06/31] drm/xe: Use i915-display shutdown sequence directly Rodrigo Vivi
2024-10-07 19:44   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 07/31] drm/{i915, xe}/display: Move DP MST calls to display_driver Rodrigo Vivi
2024-10-07 19:46   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 08/31] drm/i915/display: Move suspend sequences to intel_display_driver Rodrigo Vivi
2024-10-07 20:28   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 09/31] drm/xe/display: Delay hpd_init resume Rodrigo Vivi
2024-10-07 20:29   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 10/31] drm/xe/display: Spin-off xe_display runtime/d3cold sequences Rodrigo Vivi
2024-10-07 20:43   ` Cavitt, Jonathan
2024-10-08 16:27   ` Imre Deak
2024-09-24 20:35 ` [PATCH 11/31] drm/{i915,xe}: Consolidate display resume functions Rodrigo Vivi
2024-10-07 21:02   ` [PATCH 11/31] drm/{i915, xe}: " Cavitt, Jonathan
2024-11-14 22:15     ` Rodrigo Vivi
2024-09-24 20:35 ` [PATCH 12/31] drm/i915: Remove lingering pci_save_state Rodrigo Vivi
2024-09-27  8:45   ` Gupta, Anshuman
2024-10-07 21:10   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 13/31] drm/{i915,xe}: Consolidate display suspend functions Rodrigo Vivi
2024-10-07 21:14   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 14/31] drm/i915/display: Move resume sequences to intel_display_driver Rodrigo Vivi
2024-10-07 21:16   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 15/31] drm/xe/display: Delay dsm handler registration Rodrigo Vivi
2024-10-07 21:17   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 16/31] drm/{i915, xe}: Move power_domains suspend/resume to display_power Rodrigo Vivi
2024-10-07 21:25   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 17/31] drm/{i915, xe}: Move remaining intel_power_domains to intel_display Rodrigo Vivi
2024-10-07 21:27   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 18/31] drm/i915/display: Split resume_noirq calls for now Rodrigo Vivi
2024-10-07 21:29   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 19/31] drm/xe/display: Align display resume sequence with i915 Rodrigo Vivi
2024-10-07 21:37   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 20/31] drm/xe/display: Align suspend " Rodrigo Vivi
2024-10-07 21:40   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 21/31] drm/{i915, xe}/display: Move dsm registration under intel_driver Rodrigo Vivi
2024-10-08 14:04   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 22/31] drm/i915/display: Move runtime pm related calls under intel_display_driver Rodrigo Vivi
2024-10-08 14:10   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 23/31] drm/xe/display: Prepare runtime pm functions Rodrigo Vivi
2024-10-08 14:31   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 24/31] drm/xe/display: Call intel_hpd_init on every runtime resume Rodrigo Vivi
2024-10-03  6:32   ` Govindapillai, Vinod
2024-10-03 12:24     ` Govindapillai, Vinod
2024-10-08 14:32   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 25/31] drm/xe/display: Move hpd_poll calls to later runtime stages Rodrigo Vivi
2024-10-03 12:22   ` Govindapillai, Vinod
2024-10-08 14:33   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 26/31] drm/xe/display: Add missing watermark ipc update at runtime resume Rodrigo Vivi
2024-10-08 14:35   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 27/31] drm/xe/display: Notify opregion upon runtime suspend/resume non-d3cold Rodrigo Vivi
2024-10-08 14:37   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 28/31] drm/xe/display: Move display runtime suspend to a later point Rodrigo Vivi
2024-10-08 14:37   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 29/31] drm/xe/display: Kill crtc commit flush Rodrigo Vivi
2024-10-08 14:50   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 30/31] drm/xe/display: Add missing power display handling on non-d3cold rpm Rodrigo Vivi
2024-10-08 14:51   ` Cavitt, Jonathan
2024-09-24 20:35 ` [PATCH 31/31] drm/{i915, xe}/display: Consolidade entire runtime pm sequence Rodrigo Vivi
2024-10-08 14:57   ` Cavitt, Jonathan
2024-09-25 10:32 ` [PATCH 00/31] Reconcile i915's and xe's display power mgt sequences Jani Nikula
2024-09-25 21:00   ` Rodrigo Vivi
2024-09-26  5:29 ` ✓ CI.Patch_applied: success for " Patchwork
2024-09-26  5:30 ` ✗ CI.checkpatch: warning " Patchwork
2024-09-26  5:31 ` ✗ CI.KUnit: failure " Patchwork
2024-10-08 15:24 ` [PATCH 00/31] " Cavitt, Jonathan
2024-11-11 19:23   ` Rodrigo Vivi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).