mbox

[v6,0/4] Add APIs for configurable power options

Message ID 20220602151339.86968-1-kevin.laatz@intel.com (mailing list archive)
Headers

Message

Kevin Laatz June 2, 2022, 3:13 p.m. UTC
  The power library contains some variables which are currently set by
defines, hard-coded values or set using sysfs values. In order to
configure these, code changes and recompiles are required, making
configuring these variables tedious.

This patchset introduces some new get/set APIs which allow users and
applications to configure there settings to suit their use-cases.
In addition, CLI options have been added to l3fwd_power to demonstrate
how an application could use these APIs to expose the options to users
without needing code changes to configure them.

---
v6:
* fix units in doc API descriptions

v5:
* add doc updates for new APIs

v4:
* fix return value when scaling_freq_max is not set
* fix mismatching comments

v3:
* move setters from arg parse function to init
* consider 0 as 'not set' for scaling_freq_max
* other minor fixes

v2:
* add doc update for l3fwd-power
* order version.map additions alphabetically

Kevin Laatz (4):
  lib/power: add get and set API for emptypoll max
  lib/power: add get and set API for pause duration
  lib/power: add get and set API for scaling freq min and max with
    pstate mode
  examples/l3fwd_power: add cli for configurable options

 doc/guides/prog_guide/power_man.rst           |  24 +++
 .../sample_app_ug/l3_forward_power_man.rst    |   8 +
 examples/l3fwd-power/main.c                   |  86 ++++++++++-
 lib/power/power_pstate_cpufreq.c              |  24 ++-
 lib/power/rte_power_pmd_mgmt.c                | 123 +++++++++++++++-
 lib/power/rte_power_pmd_mgmt.h                | 139 ++++++++++++++++++
 lib/power/version.map                         |  10 ++
 7 files changed, 403 insertions(+), 11 deletions(-)