All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/21] Add support for GuC-based SLPC
@ 2016-04-28  1:10 tom.orourke
  2016-04-28  1:10 ` [PATCH 01/21] drm/i915/slpc: Expose guc functions for use with SLPC tom.orourke
                   ` (22 more replies)
  0 siblings, 23 replies; 41+ messages in thread
From: tom.orourke @ 2016-04-28  1:10 UTC (permalink / raw)
  To: intel-gfx; +Cc: Tom O'Rourke, radoslaw.szwichtenberg, paulo.r.zanoni

From: Tom O'Rourke <Tom.O'Rourke@intel.com>

SLPC (Single Loop Power Controller) is a replacement for
some host-based power management features.  The SLPC
implemenation runs in firmware on GuC.

This series has been tested with SKL guc firmware
version 6.1.

The graphics power management features in SLPC in those
versions are called GTPERF, BALANCER, and DCC.

GTPERF is a combination of DFPS (Dynamic FPS) and Turbo.
DFPS adjusts requested graphics frequency to maintain
target framerate.  Turbo adjusts requested graphics
frequency to maintain target GT busyness; this includes
an adaptive boost turbo method.

BALANCER adjusts balance between power budgets for IA
and GT in power limited scenarios.  BALANCER is only
active when all display pipes are in "game" mode.

DCC (Duty Cycle Control) adjusts requested graphics
frequency and stalls guc-scheduler to maintain actual
graphics frequency in efficient range.

The v3 series can be found in the archive at
"[Intel-gfx] [PATCH v3 00/25] Add support for GuC-based SLPC"
https://lists.freedesktop.org/archives/intel-gfx/2016-April/091771.html

This v4 series incorporates feedback from internal code 
reviews for Android and Yocto projects.  This series also 
drops the Broxton patches; the Broxton firmware has not 
been published yet.  Broxton support can be added later 
when the Broxton firmware is available. 

Also, the "DO NOT MERGE" patches to enable SLPC and guc 
submission by default have been dropped.  These can be 
added later after SLPC has been shown to outperform 
host-based power management; this may require a newer 
version of the GuC firmware.

With SLPC disabled by default, this series should be 
safe to merge now. 

VIZ-6773, VIZ-6889

Sagar Arun Kamble (4):
  drm/i915/slpc: Add Display mode event related data structures
  drm/i915/slpc: Notification of Display mode change
  drm/i915/slpc: Notification of Refresh Rate change
  drm/i915/slpc: Fail intel_runtime_suspend if SLPC or RPS not active

Tom O'Rourke (17):
  drm/i915/slpc: Expose guc functions for use with SLPC
  drm/i915/slpc: Add has_slpc capability flag
  drm/i915/slpc: Add slpc_version_check
  drm/i915/slpc: Add enable_slpc module parameter
  drm/i915/slpc: Use intel_slpc_* functions if supported
  drm/i915/slpc: Enable SLPC in guc if supported
  drm/i915/slpc: If using SLPC, do not set frequency
  drm/i915/slpc: Allocate/Release/Initialize SLPC shared data
  drm/i915/slpc: Setup rps frequency values during SLPC init
  drm/i915/slpc: Update current requested frequency
  drm/i915/slpc: Send reset event
  drm/i915/slpc: Send shutdown event
  drm/i915/slpc: Add slpc_status enum values
  drm/i915/slpc: Add parameter unset/set/get functions
  drm/i915/slpc: Add slpc support for max/min freq
  drm/i915/slpc: Add enable/disable debugfs for slpc
  drm/i915/slpc: Add i915_slpc_info to debugfs

 drivers/gpu/drm/i915/Makefile              |   5 +-
 drivers/gpu/drm/i915/i915_debugfs.c        | 456 +++++++++++++++++++++++++
 drivers/gpu/drm/i915/i915_drv.c            |   4 +-
 drivers/gpu/drm/i915/i915_drv.h            |   7 +
 drivers/gpu/drm/i915/i915_guc_submission.c |   6 +-
 drivers/gpu/drm/i915/i915_params.c         |   6 +
 drivers/gpu/drm/i915/i915_params.h         |   1 +
 drivers/gpu/drm/i915/i915_reg.h            |   1 +
 drivers/gpu/drm/i915/i915_sysfs.c          |  21 ++
 drivers/gpu/drm/i915/intel_display.c       |   2 +
 drivers/gpu/drm/i915/intel_dp.c            |   2 +
 drivers/gpu/drm/i915/intel_drv.h           |  11 +
 drivers/gpu/drm/i915/intel_guc.h           |  13 +
 drivers/gpu/drm/i915/intel_guc_loader.c    |  36 ++
 drivers/gpu/drm/i915/intel_pm.c            |  42 ++-
 drivers/gpu/drm/i915/intel_slpc.c          | 516 +++++++++++++++++++++++++++++
 drivers/gpu/drm/i915/intel_slpc.h          | 217 ++++++++++++
 17 files changed, 1329 insertions(+), 17 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/intel_slpc.c
 create mode 100644 drivers/gpu/drm/i915/intel_slpc.h

-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2016-04-29  9:34 UTC | newest]

Thread overview: 41+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-04-28  1:10 [PATCH v4 00/21] Add support for GuC-based SLPC tom.orourke
2016-04-28  1:10 ` [PATCH 01/21] drm/i915/slpc: Expose guc functions for use with SLPC tom.orourke
2016-04-28  7:00   ` Chris Wilson
2016-04-28  1:10 ` [PATCH 02/21] drm/i915/slpc: Add has_slpc capability flag tom.orourke
2016-04-28  1:10 ` [PATCH 03/21] drm/i915/slpc: Add slpc_version_check tom.orourke
2016-04-28  6:46   ` Chris Wilson
2016-04-28  1:10 ` [PATCH 04/21] drm/i915/slpc: Add enable_slpc module parameter tom.orourke
2016-04-28  7:02   ` Chris Wilson
2016-04-28  1:10 ` [PATCH 05/21] drm/i915/slpc: Use intel_slpc_* functions if supported tom.orourke
2016-04-28  1:10 ` [PATCH 06/21] drm/i915/slpc: Enable SLPC in guc " tom.orourke
2016-04-28  1:10 ` [PATCH 07/21] drm/i915/slpc: If using SLPC, do not set frequency tom.orourke
2016-04-28  6:34   ` Chris Wilson
2016-04-28  1:10 ` [PATCH 08/21] drm/i915/slpc: Allocate/Release/Initialize SLPC shared data tom.orourke
2016-04-28  7:15   ` Chris Wilson
2016-04-28  1:10 ` [PATCH 09/21] drm/i915/slpc: Setup rps frequency values during SLPC init tom.orourke
2016-04-28  6:41   ` Chris Wilson
2016-04-28  1:10 ` [PATCH 10/21] drm/i915/slpc: Update current requested frequency tom.orourke
2016-04-28  6:25   ` Chris Wilson
2016-04-28  1:10 ` [PATCH 11/21] drm/i915/slpc: Send reset event tom.orourke
2016-04-28  1:10 ` [PATCH 12/21] drm/i915/slpc: Send shutdown event tom.orourke
2016-04-28  7:07   ` Chris Wilson
2016-04-28  1:10 ` [PATCH 13/21] drm/i915/slpc: Add Display mode event related data structures tom.orourke
2016-04-28  1:10 ` [PATCH 14/21] drm/i915/slpc: Notification of Display mode change tom.orourke
2016-04-28  1:10 ` [PATCH 15/21] drm/i915/slpc: Notification of Refresh Rate change tom.orourke
2016-04-28  8:38   ` Daniel Vetter
2016-04-28  8:41     ` Daniel Vetter
2016-04-29  9:09   ` Ville Syrjälä
2016-04-28  1:11 ` [PATCH 16/21] drm/i915/slpc: Add slpc_status enum values tom.orourke
2016-04-28  1:11 ` [PATCH 17/21] drm/i915/slpc: Add parameter unset/set/get functions tom.orourke
2016-04-28  1:11 ` [PATCH 18/21] drm/i915/slpc: Add slpc support for max/min freq tom.orourke
2016-04-28  1:11 ` [PATCH 19/21] drm/i915/slpc: Add enable/disable debugfs for slpc tom.orourke
2016-04-28  7:28   ` Chris Wilson
2016-04-28  1:11 ` [PATCH 20/21] drm/i915/slpc: Add i915_slpc_info to debugfs tom.orourke
2016-04-28  1:11 ` [PATCH 21/21] drm/i915/slpc: Fail intel_runtime_suspend if SLPC or RPS not active tom.orourke
2016-04-28  6:56   ` Chris Wilson
2016-04-28  7:57     ` Imre Deak
2016-04-28  8:00       ` Chris Wilson
2016-04-29  9:34         ` Imre Deak
2016-04-28  7:16 ` ✓ Fi.CI.BAT: success for Add support for GuC-based SLPC (rev4) Patchwork
2016-04-28 23:01 ` [PATCH v4 00/21] Add support for GuC-based SLPC O'Rourke, Tom
2016-04-29  8:47   ` Chris Wilson

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.