platform-driver-x86.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 00/11] platform/x86/amd/pmf: Introduce AMD PMF Driver
@ 2022-08-02 15:11 Shyam Sundar S K
  2022-08-02 15:11 ` [PATCH v4 01/11] platform/x86/amd/pmf: Add support for PMF core layer Shyam Sundar S K
                   ` (11 more replies)
  0 siblings, 12 replies; 22+ messages in thread
From: Shyam Sundar S K @ 2022-08-02 15:11 UTC (permalink / raw)
  To: hdegoede, markgross; +Cc: platform-driver-x86, Patil.Reddy, Shyam Sundar S K

AMD PMF Driver (a.k.a Platform Management Framework) provides a
centralized framework based on sensor inputs, OS hints, platform state
and APU metrics to dynamically manage perf, power and system thermals.

The goal of the driver is to enhance end user experience by making AMD
PCs smarter, quieter, power efficient by adapting to user behavior and
environment.

The larger goals include:

- Enable easy customization of smart PC solutions by OEMs.
- Provide a framework for OEMs to add in custom algorithms and solutions
- Improve standby and dynamic platform power through active power
  management of platform devices.

In this series, support for following features has been added.
- "Static Power Slider" meant to manage the power budget based on the
  power modes or the slider position.
- "Auto Mode" tracks the moving power average of the APU and takes
  intelligent decisions to switch between different modes.

Signed-off-by: Shyam Sundar S K <Shyam-sundar.S-k@amd.com>

v4:
-----------
- Remove duplicate variables in auto_mode_mode_config() structure
- call apmf_event_handler() handler manually so that we don't miss out
  any notifies
- Misc. error handling.

v3:
-----------
- Cleanup ACPI code path
- Optimize metrics table collection mechanism
- Avoid races between the acpi handler and the metrics table worker
  thread.
- Remove redundant structures and functions.
- Improve the code handling the apmf handler routine.

v2 Resend:
-----------
- Patches from 9 to 11 were not sent due to wrong email address. Hence
  resending.

v1->v2:
-------
- optimize the ACPI path by having a common routine
  apmf_if_call_store_buffer()
- Simply Static slider interaction with platform_profile
- Remove CONFIG_DEBUG_FS stub code
- Drop changes introduced in platform_profile_get()
- Drop CnQF support. Will be sent as a patch-set later.
- Other code improvements

Shyam Sundar S K (11):
  platform/x86/amd/pmf: Add support for PMF core layer
  platform/x86/amd/pmf: Add support for PMF APCI layer
  platform/x86/amd/pmf: Add support SPS PMF feature
  platform/x86/amd/pmf: Add debugfs information
  platform/x86/amd/pmf: Add heartbeat signal support
  platform/x86/amd/pmf: Add fan control support
  platform/x86/amd/pmf: Get performance metrics from PMFW
  platform/x86/amd/pmf: Add support for Auto mode feature
  platform/x86/amd/pmf: Handle AMT and CQL events for Auto mode
  platform/x86/amd/pmf: Force load driver on older supported platforms
  MAINTAINERS: Add AMD PMF driver entry

 MAINTAINERS                              |   7 +
 drivers/platform/x86/amd/Kconfig         |   2 +
 drivers/platform/x86/amd/Makefile        |   1 +
 drivers/platform/x86/amd/pmf/Kconfig     |  15 +
 drivers/platform/x86/amd/pmf/Makefile    |   9 +
 drivers/platform/x86/amd/pmf/acpi.c      | 287 +++++++++++++++++
 drivers/platform/x86/amd/pmf/auto-mode.c | 301 ++++++++++++++++++
 drivers/platform/x86/amd/pmf/core.c      | 385 +++++++++++++++++++++++
 drivers/platform/x86/amd/pmf/pmf.h       | 329 +++++++++++++++++++
 drivers/platform/x86/amd/pmf/sps.c       | 149 +++++++++
 10 files changed, 1485 insertions(+)
 create mode 100644 drivers/platform/x86/amd/pmf/Kconfig
 create mode 100644 drivers/platform/x86/amd/pmf/Makefile
 create mode 100644 drivers/platform/x86/amd/pmf/acpi.c
 create mode 100644 drivers/platform/x86/amd/pmf/auto-mode.c
 create mode 100644 drivers/platform/x86/amd/pmf/core.c
 create mode 100644 drivers/platform/x86/amd/pmf/pmf.h
 create mode 100644 drivers/platform/x86/amd/pmf/sps.c

-- 
2.25.1


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

end of thread, other threads:[~2022-08-19  9:15 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-02 15:11 [PATCH v4 00/11] platform/x86/amd/pmf: Introduce AMD PMF Driver Shyam Sundar S K
2022-08-02 15:11 ` [PATCH v4 01/11] platform/x86/amd/pmf: Add support for PMF core layer Shyam Sundar S K
2022-08-05 10:20   ` Hans de Goede
2022-08-02 15:11 ` [PATCH v4 02/11] platform/x86/amd/pmf: Add support for PMF APCI layer Shyam Sundar S K
2022-08-02 15:11 ` [PATCH v4 03/11] platform/x86/amd/pmf: Add support SPS PMF feature Shyam Sundar S K
2022-08-05 10:39   ` Hans de Goede
2022-08-18 22:47   ` Nathan Chancellor
2022-08-19  8:58     ` Shyam Sundar S K
2022-08-19  9:14       ` Hans de Goede
2022-08-02 15:11 ` [PATCH v4 04/11] platform/x86/amd/pmf: Add debugfs information Shyam Sundar S K
2022-08-02 15:11 ` [PATCH v4 05/11] platform/x86/amd/pmf: Add heartbeat signal support Shyam Sundar S K
2022-08-02 15:11 ` [PATCH v4 06/11] platform/x86/amd/pmf: Add fan control support Shyam Sundar S K
2022-08-02 15:11 ` [PATCH v4 07/11] platform/x86/amd/pmf: Get performance metrics from PMFW Shyam Sundar S K
2022-08-02 15:11 ` [PATCH v4 08/11] platform/x86/amd/pmf: Add support for Auto mode feature Shyam Sundar S K
2022-08-05 10:52   ` Hans de Goede
2022-08-02 15:11 ` [PATCH v4 09/11] platform/x86/amd/pmf: Handle AMT and CQL events for Auto mode Shyam Sundar S K
2022-08-05 11:14   ` Hans de Goede
2022-08-02 15:11 ` [PATCH v4 10/11] platform/x86/amd/pmf: Force load driver on older supported platforms Shyam Sundar S K
2022-08-05 11:05   ` Hans de Goede
2022-08-02 15:11 ` [PATCH v4 11/11] MAINTAINERS: Add AMD PMF driver entry Shyam Sundar S K
2022-08-05 11:08   ` Hans de Goede
2022-08-05 11:16 ` [PATCH v4 00/11] platform/x86/amd/pmf: Introduce AMD PMF Driver Hans de Goede

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).