mbox series

[GIT,PULL] : tools/power/x86/intel-speed-select pull request for 6.4-rc1

Message ID c05d53c61c4b491e4ffe3ac159031aae31b1e98b.camel@intel.com (mailing list archive)
State Accepted, archived
Headers show
Series [GIT,PULL] : tools/power/x86/intel-speed-select pull request for 6.4-rc1 | expand

Pull-request

https://github.com/spandruvada/linux-kernel.git intel-sst

Message

Pandruvada, Srinivas March 22, 2023, 11:22 p.m. UTC
Hi Hans,

Pull request for Intel Speed Select version v1.15:

Summary of changes:

Till the commit:
"tools/power/x86/intel-speed-select: Get punit core mapping
information"

All patches just lays foundation for adding new hardware interface
in addition to existing MSR/MMIO interface.

All patches prefixed with "Abstract" just adds individual hardware
callback for functions called from the core processing.

The mailbox processing is abstracted to a new file with callbacks.

In addition some changes to reduce duplicated code for display
of TRL level.

Patch "Introduce Punit ID concept and add related API" add further
abstraction in addition to existing package and die scope.

-----------
tools/power/x86/intel-speed-select: Get punit core mapping information
-Adds a new way to get package/die/punit information for each CPU.
-----------

Introduce TPMI interface support
- Implement all abstracted callbacks above to use TPMI IOCTL interface.
-----------

tools/power/x86/intel-speed-select: Display punit info
- With TPMI the granularity is per punit, which can be multiple in a
package/die.
----------

tools/power/x86/intel-speed-select: Remove cpu mask display for non-cpu
power domain
tools/power/x86/intel-speed-select: Display fact info for non-cpu power
domain
-There are some power domains with no CPUs, the above patches adds CPU
as invalid
for these domains
----------

tools/power/x86/intel-speed-select: Use cgroup v2 isolation
- Adds new option to use Cgroup CPU isolation instead of offline of
CPUs
----------

tools/power/x86/intel-speed-select: Change TRL display for Emerald
Rapids
- Emerald Rapid has multiple TRL levels and moves away from TRL level
based on instruction type

--------------------------------------

The base branch for these changes 
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
branch: review-hans

 
The following changes since commit
6f561677c2f234bcf215350b76f2a2fea95fbebf:

  platform/x86/intel: vsec: Use intel_vsec_dev_release() to simplify
init() error cleanup (2023-03-20 15:20:05 +0100)

are available in the Git repository at:

  https://github.com/spandruvada/linux-kernel.git intel-sst

for you to fetch changes up to
19799d3ae2edec99435b792cfe76b1cba74665fe:

  tools/power/x86/intel-speed-select: Update version (2023-03-22
13:41:17 -0700)

----------------------------------------------------------------
Srinivas Pandruvada (6):
      tools/power/x86/intel-speed-select: Get punit core mapping
information
      tools/power/x86/intel-speed-select: Add missing free cpuset
      tools/power/x86/intel-speed-select: Use cgroup v2 isolation
      tools/power/x86/intel-speed-select: Display AMX base frequency
      tools/power/x86/intel-speed-select: Identify Emerald Rapids
      tools/power/x86/intel-speed-select: Change TRL display for
Emerald Rapids

Zhang Rui (55):
      tools/power/x86/intel-speed-select: Unify TRL levels
      tools/power/x86/intel-speed-select: Follow TRL nameing for FACT
info
      tools/power/x86/intel-speed-select: Introduce punit to isst_id
      tools/power/x86/intel-speed-select: Introduce
isst_is_punit_valid()
      tools/power/x86/intel-speed-select: Introduce support for multi-
punit
      tools/power/x86/intel-speed-select: Rename
for_each_online_package_in_set
      tools/power/x86/intel-speed-select: Improve
isst_print_extended_platform_info
      tools/power/x86/intel-speed-select: Move mbox functions to isst-
core.c
      tools/power/x86/intel-speed-select: Introduce
isst_get_disp_freq_multiplier
      tools/power/x86/intel-speed-select: Always invoke
isst_fill_platform_info
      tools/power/x86/intel-speed-select: Introduce isst-core-mbox.c
      tools/power/x86/intel-speed-select: Abstract is_punit_valid
      tools/power/x86/intel-speed-select: Abstract get_config_levels
      tools/power/x86/intel-speed-select: Abstract get_ctdp_control
      tools/power/x86/intel-speed-select: Abstract get_tdp_info
      tools/power/x86/intel-speed-select: Abstract get_pwr_info
      tools/power/x86/intel-speed-select: Move code right before its
caller
      tools/power/x86/intel-speed-select: Abstract get_tjmax_info
      tools/power/x86/intel-speed-select: Abstract get_coremask_info
      tools/power/x86/intel-speed-select: Abstract get_get_trl
      tools/power/x86/intel-speed-select: Abstract get_trl_bucket_info
      tools/power/x86/intel-speed-select: Abstract set_tdp_level
      tools/power/x86/intel-speed-select: Abstract get_pbf_info
      tools/power/x86/intel-speed-select: Remove
isst_get_pbf_info_complete
      tools/power/x86/intel-speed-select: Abstract set_pbf_fact_status
      tools/power/x86/intel-speed-select: Abstract get_fact_info
      tools/power/x86/intel-speed-select: Abstract
get_uncore_p0_p1_info
      tools/power/x86/intel-speed-select: Enhance get_tdp_info
      tools/power/x86/intel-speed-select: Abstract get_get_trls
      tools/power/x86/intel-speed-select: Abstract get_clos_information
      tools/power/x86/intel-speed-select: Abstract pm_qos_config
      tools/power/x86/intel-speed-select: Abstract pm_get_clos
      tools/power/x86/intel-speed-select: Abstract set_clos
      tools/power/x86/intel-speed-select: Abstract
clos_get_assoc_status
      tools/power/x86/intel-speed-select: Abstract clos_associate
      tools/power/x86/intel-speed-select: Abstract read_pm_config
      tools/power/x86/intel-speed-select: Abstract adjust_uncore_freq
      tools/power/x86/intel-speed-select: Move send_mbox_cmd to isst-
core-mbox.c
      tools/power/x86/intel-speed-select: Allow api_version based
platform callbacks
      tools/power/x86/intel-speed-select: Introduce is_debug_enabled()
      tools/power/x86/intel-speed-select: Support large clos_min/max
      tools/power/x86/intel-speed-select: Introduce api_version helper
      tools/power/x86/intel-speed-select: Introduce TPMI interface
support
      tools/power/x86/intel-speed-select: Display punit info
      tools/power/x86/intel-speed-select: Display amx_p1 and
cooling_type
      tools/power/x86/intel-speed-select: Allow display non-cpu power
domain info
      tools/power/x86/intel-speed-select: Prevent cpu clos config for
non-cpu power domain
      tools/power/x86/intel-speed-select: Show level 0 name for new
api_version
      tools/power/x86/intel-speed-select: Display fact info for non-cpu
power domain
      tools/power/x86/intel-speed-select: Hide invalid TRL level
      tools/power/x86/intel-speed-select: Remove cpu mask display for
non-cpu power domain
      tools/power/x86/intel-speed-select: Avoid setting duplicate tdp
level
      tools/power/x86/intel-speed-select: Add cpu id check
      tools/power/x86/intel-speed-select: Fix clos-max display with
TPMI I/F
      tools/power/x86/intel-speed-select: Update version

 tools/power/x86/intel-speed-select/Build            |    2 +-
 tools/power/x86/intel-speed-select/isst-config.c    |  769
+++++++++++++++++--------------
 tools/power/x86/intel-speed-select/isst-core-mbox.c | 1066
+++++++++++++++++++++++++++++++++++++++++++
 tools/power/x86/intel-speed-select/isst-core-tpmi.c |  787
++++++++++++++++++++++++++++++++
 tools/power/x86/intel-speed-select/isst-core.c      |  846 ++++++-----
-----------------------
 tools/power/x86/intel-speed-select/isst-daemon.c    |   38 +-
 tools/power/x86/intel-speed-select/isst-display.c   |  245 +++++-----
 tools/power/x86/intel-speed-select/isst.h           |   96 ++--
 8 files changed, 2617 insertions(+), 1232 deletions(-)
 create mode 100644 tools/power/x86/intel-speed-select/isst-core-mbox.c
 create mode 100644 tools/power/x86/intel-speed-select/isst-core-tpmi.c

Thanks,
Srinivas

Comments

Hans de Goede March 27, 2023, 1:09 p.m. UTC | #1
Hi,

On 3/23/23 00:22, Pandruvada, Srinivas wrote:
> Hi Hans,
> 
> Pull request for Intel Speed Select version v1.15:

Thanks.

I've merged the current intel-sst branch / commit
19799d3ae2edec99435b792cfe76b1cba74665fe into review-hans
as is.

Once I've run some tests on this branch the patches there will be
added to the platform-drivers-x86/for-next branch and eventually
will be included in the pdx86 pull-request to Linus for the next
merge-window.

Regards,

Hans





> Summary of changes:
> 
> Till the commit:
> "tools/power/x86/intel-speed-select: Get punit core mapping
> information"
> 
> All patches just lays foundation for adding new hardware interface
> in addition to existing MSR/MMIO interface.
> 
> All patches prefixed with "Abstract" just adds individual hardware
> callback for functions called from the core processing.
> 
> The mailbox processing is abstracted to a new file with callbacks.
> 
> In addition some changes to reduce duplicated code for display
> of TRL level.
> 
> Patch "Introduce Punit ID concept and add related API" add further
> abstraction in addition to existing package and die scope.
> 
> -----------
> tools/power/x86/intel-speed-select: Get punit core mapping information
> -Adds a new way to get package/die/punit information for each CPU.
> -----------
> 
> Introduce TPMI interface support
> - Implement all abstracted callbacks above to use TPMI IOCTL interface.
> -----------
> 
> tools/power/x86/intel-speed-select: Display punit info
> - With TPMI the granularity is per punit, which can be multiple in a
> package/die.
> ----------
> 
> tools/power/x86/intel-speed-select: Remove cpu mask display for non-cpu
> power domain
> tools/power/x86/intel-speed-select: Display fact info for non-cpu power
> domain
> -There are some power domains with no CPUs, the above patches adds CPU
> as invalid
> for these domains
> ----------
> 
> tools/power/x86/intel-speed-select: Use cgroup v2 isolation
> - Adds new option to use Cgroup CPU isolation instead of offline of
> CPUs
> ----------
> 
> tools/power/x86/intel-speed-select: Change TRL display for Emerald
> Rapids
> - Emerald Rapid has multiple TRL levels and moves away from TRL level
> based on instruction type
> 
> --------------------------------------
> 
> The base branch for these changes 
> https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
> branch: review-hans
> 
>  
> The following changes since commit
> 6f561677c2f234bcf215350b76f2a2fea95fbebf:
> 
>   platform/x86/intel: vsec: Use intel_vsec_dev_release() to simplify
> init() error cleanup (2023-03-20 15:20:05 +0100)
> 
> are available in the Git repository at:
> 
>   https://github.com/spandruvada/linux-kernel.git intel-sst
> 
> for you to fetch changes up to
> 19799d3ae2edec99435b792cfe76b1cba74665fe:
> 
>   tools/power/x86/intel-speed-select: Update version (2023-03-22
> 13:41:17 -0700)
> 
> ----------------------------------------------------------------
> Srinivas Pandruvada (6):
>       tools/power/x86/intel-speed-select: Get punit core mapping
> information
>       tools/power/x86/intel-speed-select: Add missing free cpuset
>       tools/power/x86/intel-speed-select: Use cgroup v2 isolation
>       tools/power/x86/intel-speed-select: Display AMX base frequency
>       tools/power/x86/intel-speed-select: Identify Emerald Rapids
>       tools/power/x86/intel-speed-select: Change TRL display for
> Emerald Rapids
> 
> Zhang Rui (55):
>       tools/power/x86/intel-speed-select: Unify TRL levels
>       tools/power/x86/intel-speed-select: Follow TRL nameing for FACT
> info
>       tools/power/x86/intel-speed-select: Introduce punit to isst_id
>       tools/power/x86/intel-speed-select: Introduce
> isst_is_punit_valid()
>       tools/power/x86/intel-speed-select: Introduce support for multi-
> punit
>       tools/power/x86/intel-speed-select: Rename
> for_each_online_package_in_set
>       tools/power/x86/intel-speed-select: Improve
> isst_print_extended_platform_info
>       tools/power/x86/intel-speed-select: Move mbox functions to isst-
> core.c
>       tools/power/x86/intel-speed-select: Introduce
> isst_get_disp_freq_multiplier
>       tools/power/x86/intel-speed-select: Always invoke
> isst_fill_platform_info
>       tools/power/x86/intel-speed-select: Introduce isst-core-mbox.c
>       tools/power/x86/intel-speed-select: Abstract is_punit_valid
>       tools/power/x86/intel-speed-select: Abstract get_config_levels
>       tools/power/x86/intel-speed-select: Abstract get_ctdp_control
>       tools/power/x86/intel-speed-select: Abstract get_tdp_info
>       tools/power/x86/intel-speed-select: Abstract get_pwr_info
>       tools/power/x86/intel-speed-select: Move code right before its
> caller
>       tools/power/x86/intel-speed-select: Abstract get_tjmax_info
>       tools/power/x86/intel-speed-select: Abstract get_coremask_info
>       tools/power/x86/intel-speed-select: Abstract get_get_trl
>       tools/power/x86/intel-speed-select: Abstract get_trl_bucket_info
>       tools/power/x86/intel-speed-select: Abstract set_tdp_level
>       tools/power/x86/intel-speed-select: Abstract get_pbf_info
>       tools/power/x86/intel-speed-select: Remove
> isst_get_pbf_info_complete
>       tools/power/x86/intel-speed-select: Abstract set_pbf_fact_status
>       tools/power/x86/intel-speed-select: Abstract get_fact_info
>       tools/power/x86/intel-speed-select: Abstract
> get_uncore_p0_p1_info
>       tools/power/x86/intel-speed-select: Enhance get_tdp_info
>       tools/power/x86/intel-speed-select: Abstract get_get_trls
>       tools/power/x86/intel-speed-select: Abstract get_clos_information
>       tools/power/x86/intel-speed-select: Abstract pm_qos_config
>       tools/power/x86/intel-speed-select: Abstract pm_get_clos
>       tools/power/x86/intel-speed-select: Abstract set_clos
>       tools/power/x86/intel-speed-select: Abstract
> clos_get_assoc_status
>       tools/power/x86/intel-speed-select: Abstract clos_associate
>       tools/power/x86/intel-speed-select: Abstract read_pm_config
>       tools/power/x86/intel-speed-select: Abstract adjust_uncore_freq
>       tools/power/x86/intel-speed-select: Move send_mbox_cmd to isst-
> core-mbox.c
>       tools/power/x86/intel-speed-select: Allow api_version based
> platform callbacks
>       tools/power/x86/intel-speed-select: Introduce is_debug_enabled()
>       tools/power/x86/intel-speed-select: Support large clos_min/max
>       tools/power/x86/intel-speed-select: Introduce api_version helper
>       tools/power/x86/intel-speed-select: Introduce TPMI interface
> support
>       tools/power/x86/intel-speed-select: Display punit info
>       tools/power/x86/intel-speed-select: Display amx_p1 and
> cooling_type
>       tools/power/x86/intel-speed-select: Allow display non-cpu power
> domain info
>       tools/power/x86/intel-speed-select: Prevent cpu clos config for
> non-cpu power domain
>       tools/power/x86/intel-speed-select: Show level 0 name for new
> api_version
>       tools/power/x86/intel-speed-select: Display fact info for non-cpu
> power domain
>       tools/power/x86/intel-speed-select: Hide invalid TRL level
>       tools/power/x86/intel-speed-select: Remove cpu mask display for
> non-cpu power domain
>       tools/power/x86/intel-speed-select: Avoid setting duplicate tdp
> level
>       tools/power/x86/intel-speed-select: Add cpu id check
>       tools/power/x86/intel-speed-select: Fix clos-max display with
> TPMI I/F
>       tools/power/x86/intel-speed-select: Update version
> 
>  tools/power/x86/intel-speed-select/Build            |    2 +-
>  tools/power/x86/intel-speed-select/isst-config.c    |  769
> +++++++++++++++++--------------
>  tools/power/x86/intel-speed-select/isst-core-mbox.c | 1066
> +++++++++++++++++++++++++++++++++++++++++++
>  tools/power/x86/intel-speed-select/isst-core-tpmi.c |  787
> ++++++++++++++++++++++++++++++++
>  tools/power/x86/intel-speed-select/isst-core.c      |  846 ++++++-----
> -----------------------
>  tools/power/x86/intel-speed-select/isst-daemon.c    |   38 +-
>  tools/power/x86/intel-speed-select/isst-display.c   |  245 +++++-----
>  tools/power/x86/intel-speed-select/isst.h           |   96 ++--
>  8 files changed, 2617 insertions(+), 1232 deletions(-)
>  create mode 100644 tools/power/x86/intel-speed-select/isst-core-mbox.c
>  create mode 100644 tools/power/x86/intel-speed-select/isst-core-tpmi.c
> 
> Thanks,
> Srinivas