[00/11] Intel pmc_core: Enable telemetry

Message ID 20230315183405.2465630-1-david.e.box@linux.intel.com
Headers
Series Intel pmc_core: Enable telemetry |

Message

David E. Box March 15, 2023, 6:33 p.m. UTC
  On Intel SoCs, registers for the Power Management Controller are available
in the PCI BAR of the SSRAM device, 0000:14.2. On Meteor Lake, these
registers are structured in Intel PMT Telemetry regions which could be
handled by the pmt_telemetry driver. This series adds APIs to the
intel_vsec and pmt_telemetry drivers so that pmc_core driver can both
create the telemetry instance from the SSRAM device and register for a
handle to read the telemetry which contains the low power mode requirements
for the S0ix states supported by Meteor Lake. The series also adds some
fixes.

David E. Box (6):
  platform/x86/intel/vsec: Explicitly enable capabilities
  platform/x86/intel/vsec: Add base address field
  platform/x86/intel/pmt: Add INTEL_PMT module namespace
  platform/x86/intel/pmt: telemetry: Add telemetry read functions
  platform/x86/intel/pmt/telemetry: Add driver version
  platform/x86/intel/pmc: Add Intel PMT support for MTL PMC

Gayatri Kammela (1):
  platform/x86/intel/vsec: Add intel_vsec_register

Rajvi Jingar (1):
  platform/x86/intel/pmc: Alder Lake slp_s0_residency fix

Xi Pardee (3):
  platform/x86:intel/pmc: Combine core_init and core_configure function
  platform/x86:intel/pmc: Move get_low_power_modes function
  platform/x86/intel/pmc/mtl: get LPM information using Intel PMT

 drivers/platform/x86/intel/pmc/Kconfig     |   1 +
 drivers/platform/x86/intel/pmc/adl.c       |  17 +-
 drivers/platform/x86/intel/pmc/cnp.c       |  17 +-
 drivers/platform/x86/intel/pmc/core.c      |  71 +++++---
 drivers/platform/x86/intel/pmc/core.h      |  24 +--
 drivers/platform/x86/intel/pmc/icl.c       |  11 +-
 drivers/platform/x86/intel/pmc/mtl.c       | 187 ++++++++++++++++++-
 drivers/platform/x86/intel/pmc/spt.c       |  11 +-
 drivers/platform/x86/intel/pmc/tgl.c       |  17 +-
 drivers/platform/x86/intel/pmt/class.c     |  48 +++--
 drivers/platform/x86/intel/pmt/class.h     |  35 ++--
 drivers/platform/x86/intel/pmt/crashlog.c  |   3 +-
 drivers/platform/x86/intel/pmt/telemetry.c | 199 ++++++++++++++++++++-
 drivers/platform/x86/intel/pmt/telemetry.h | 120 +++++++++++++
 drivers/platform/x86/intel/vsec.c          | 131 ++++++--------
 drivers/platform/x86/intel/vsec.h          |  64 ++++++-
 16 files changed, 790 insertions(+), 166 deletions(-)
 create mode 100644 drivers/platform/x86/intel/pmt/telemetry.h


base-commit: 02c464b73645404654359ad21f368a13735e2850
  

Comments

Hans de Goede March 16, 2023, 2:51 p.m. UTC | #1
Hi David,

On 3/15/23 19:33, David E. Box wrote:
> On Intel SoCs, registers for the Power Management Controller are available
> in the PCI BAR of the SSRAM device, 0000:14.2. On Meteor Lake, these
> registers are structured in Intel PMT Telemetry regions which could be
> handled by the pmt_telemetry driver. This series adds APIs to the
> intel_vsec and pmt_telemetry drivers so that pmc_core driver can both
> create the telemetry instance from the SSRAM device and register for a
> handle to read the telemetry which contains the low power mode requirements
> for the S0ix states supported by Meteor Lake. The series also adds some
> fixes.

Thank you for the series. I notice that none of these patches have a Reviewed-by nor a Tested-by from some other Intel developers.

It really helps if you can get someone other Intel kernel people to review and test your patches and then add their tags before posting a large(ish) series like this upstream.

Regards,

Hans





> 
> David E. Box (6):
>   platform/x86/intel/vsec: Explicitly enable capabilities
>   platform/x86/intel/vsec: Add base address field
>   platform/x86/intel/pmt: Add INTEL_PMT module namespace
>   platform/x86/intel/pmt: telemetry: Add telemetry read functions
>   platform/x86/intel/pmt/telemetry: Add driver version
>   platform/x86/intel/pmc: Add Intel PMT support for MTL PMC
> 
> Gayatri Kammela (1):
>   platform/x86/intel/vsec: Add intel_vsec_register
> 
> Rajvi Jingar (1):
>   platform/x86/intel/pmc: Alder Lake slp_s0_residency fix
> 
> Xi Pardee (3):
>   platform/x86:intel/pmc: Combine core_init and core_configure function
>   platform/x86:intel/pmc: Move get_low_power_modes function
>   platform/x86/intel/pmc/mtl: get LPM information using Intel PMT
> 
>  drivers/platform/x86/intel/pmc/Kconfig     |   1 +
>  drivers/platform/x86/intel/pmc/adl.c       |  17 +-
>  drivers/platform/x86/intel/pmc/cnp.c       |  17 +-
>  drivers/platform/x86/intel/pmc/core.c      |  71 +++++---
>  drivers/platform/x86/intel/pmc/core.h      |  24 +--
>  drivers/platform/x86/intel/pmc/icl.c       |  11 +-
>  drivers/platform/x86/intel/pmc/mtl.c       | 187 ++++++++++++++++++-
>  drivers/platform/x86/intel/pmc/spt.c       |  11 +-
>  drivers/platform/x86/intel/pmc/tgl.c       |  17 +-
>  drivers/platform/x86/intel/pmt/class.c     |  48 +++--
>  drivers/platform/x86/intel/pmt/class.h     |  35 ++--
>  drivers/platform/x86/intel/pmt/crashlog.c  |   3 +-
>  drivers/platform/x86/intel/pmt/telemetry.c | 199 ++++++++++++++++++++-
>  drivers/platform/x86/intel/pmt/telemetry.h | 120 +++++++++++++
>  drivers/platform/x86/intel/vsec.c          | 131 ++++++--------
>  drivers/platform/x86/intel/vsec.h          |  64 ++++++-
>  16 files changed, 790 insertions(+), 166 deletions(-)
>  create mode 100644 drivers/platform/x86/intel/pmt/telemetry.h
> 
> 
> base-commit: 02c464b73645404654359ad21f368a13735e2850
  
David E. Box March 16, 2023, 3:36 p.m. UTC | #2
Hi Hans,

On Thu, 2023-03-16 at 15:51 +0100, Hans de Goede wrote:
> Hi David,
> 
> On 3/15/23 19:33, David E. Box wrote:
> > On Intel SoCs, registers for the Power Management Controller are available
> > in the PCI BAR of the SSRAM device, 0000:14.2. On Meteor Lake, these
> > registers are structured in Intel PMT Telemetry regions which could be
> > handled by the pmt_telemetry driver. This series adds APIs to the
> > intel_vsec and pmt_telemetry drivers so that pmc_core driver can both
> > create the telemetry instance from the SSRAM device and register for a
> > handle to read the telemetry which contains the low power mode requirements
> > for the S0ix states supported by Meteor Lake. The series also adds some
> > fixes.
> 
> Thank you for the series. I notice that none of these patches have a Reviewed-
> by nor a Tested-by from some other Intel developers.
> 
> It really helps if you can get someone other Intel kernel people to review and
> test your patches and then add their tags before posting a large(ish) series
> like this upstream.

Sure. About 5 of these, though related, are small and can be sent separately.
I'll send those first and get Intel review for the others. Since this smaller
batch won't be enabling telemetry, as in the cover letter title, I'll send as a
new series.

David

> 
> Regards,
> 
> Hans
> 
> 
> 
> 
> 
> > 
> > David E. Box (6):
> >   platform/x86/intel/vsec: Explicitly enable capabilities
> >   platform/x86/intel/vsec: Add base address field
> >   platform/x86/intel/pmt: Add INTEL_PMT module namespace
> >   platform/x86/intel/pmt: telemetry: Add telemetry read functions
> >   platform/x86/intel/pmt/telemetry: Add driver version
> >   platform/x86/intel/pmc: Add Intel PMT support for MTL PMC
> > 
> > Gayatri Kammela (1):
> >   platform/x86/intel/vsec: Add intel_vsec_register
> > 
> > Rajvi Jingar (1):
> >   platform/x86/intel/pmc: Alder Lake slp_s0_residency fix
> > 
> > Xi Pardee (3):
> >   platform/x86:intel/pmc: Combine core_init and core_configure function
> >   platform/x86:intel/pmc: Move get_low_power_modes function
> >   platform/x86/intel/pmc/mtl: get LPM information using Intel PMT
> > 
> >  drivers/platform/x86/intel/pmc/Kconfig     |   1 +
> >  drivers/platform/x86/intel/pmc/adl.c       |  17 +-
> >  drivers/platform/x86/intel/pmc/cnp.c       |  17 +-
> >  drivers/platform/x86/intel/pmc/core.c      |  71 +++++---
> >  drivers/platform/x86/intel/pmc/core.h      |  24 +--
> >  drivers/platform/x86/intel/pmc/icl.c       |  11 +-
> >  drivers/platform/x86/intel/pmc/mtl.c       | 187 ++++++++++++++++++-
> >  drivers/platform/x86/intel/pmc/spt.c       |  11 +-
> >  drivers/platform/x86/intel/pmc/tgl.c       |  17 +-
> >  drivers/platform/x86/intel/pmt/class.c     |  48 +++--
> >  drivers/platform/x86/intel/pmt/class.h     |  35 ++--
> >  drivers/platform/x86/intel/pmt/crashlog.c  |   3 +-
> >  drivers/platform/x86/intel/pmt/telemetry.c | 199 ++++++++++++++++++++-
> >  drivers/platform/x86/intel/pmt/telemetry.h | 120 +++++++++++++
> >  drivers/platform/x86/intel/vsec.c          | 131 ++++++--------
> >  drivers/platform/x86/intel/vsec.h          |  64 ++++++-
> >  16 files changed, 790 insertions(+), 166 deletions(-)
> >  create mode 100644 drivers/platform/x86/intel/pmt/telemetry.h
> > 
> > 
> > base-commit: 02c464b73645404654359ad21f368a13735e2850
>