Re: [PATCH 0/7] Add TPMI support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On 2/2/23 02:07, Srinivas Pandruvada wrote:
> The TPMI (Topology Aware Register and PM Capsule Interface) provides a
> flexible, extendable and PCIe enumerable MMIO interface for PM features.
> 
> For example Intel Speed Select Technology (Intel SST) can replace all
> mailbox commands with direct MMIO access. This reduces latency for
> SST commands and also defines an architectural interface which will
> persist for several next generations.
> 
> Also Intel RAPL (Running Average Power Limit) provides a MMIO
> interface using TPMI. This has advantage over traditional MSR
> (Model Specific Register) interface, where a thread needs to be scheduled
> on the target CPU to read or write. Also the RAPL features vary between
> CPU models, and hence lot of model specific code. Here TPMI provides an
> architectural interface by providing hierarchical tables and fields,
> which will not need any model specific implementation.
> 
> Same value is for Intel Uncore frequency where MSR interface can't
> be used because of multiple domains.
> 
> The TPMI interface uses a PCI VSEC structure to expose the location of
> MMIO region, which is handled by Intel VSEC driver. Intel VSEC driver is
> already present in upstream kernel.
> 
> This series contains the base driver, which parses TPMI MMIO region
> and creates device nodes for supported features. The current set of
> PM feature support includes, Intel Speed Select, RAPL, Uncore frequency
> scaling.
> 
> The first there patches updates Intel VSEC driver to add TPMI VSEC ID
> and enhance to reuse the code.
> The next three patches adds TPMI base driver support.
> The last patch adds MAINTAINERS entry.
> 
> The TPMI documentation can be downloaded from:
> https://github.com/intel/tpmi_power_management
> 
> This series cleanly applies on 6.2-rc1.

Thank you for your patch-series, I've applied the series to my
review-hans branch:
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans

Note it will show up in my review-hans branch once I've pushed my
local branch there, which might take a while.

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




> Srinivas Pandruvada (7):
>   platform/x86/intel/vsec: Add TPMI ID
>   platform/x86/intel/vsec: Enhance and Export intel_vsec_add_aux()
>   platform/x86/intel/vsec: Support private data
>   platform/x86/intel: Intel TPMI enumeration driver
>   platform/x86/intel/tpmi: Process CPU package mapping
>   platform/x86/intel/tpmi: ADD tpmi external interface for tpmi feature
>     drivers
>   MAINTAINERS: Add entry for TPMI driver
> 
>  MAINTAINERS                         |   6 +
>  drivers/platform/x86/intel/Kconfig  |  13 +
>  drivers/platform/x86/intel/Makefile |   4 +
>  drivers/platform/x86/intel/tpmi.c   | 415 ++++++++++++++++++++++++++++
>  drivers/platform/x86/intel/vsec.c   |  21 +-
>  drivers/platform/x86/intel/vsec.h   |   6 +
>  include/linux/intel_tpmi.h          |  30 ++
>  7 files changed, 490 insertions(+), 5 deletions(-)
>  create mode 100644 drivers/platform/x86/intel/tpmi.c
>  create mode 100644 include/linux/intel_tpmi.h
> 




[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux