[PATCH V2 00/17] Add ACPI-based PMT discovery support for Intel PMC

David E. Box posted 17 patches 1 week, 1 day ago
drivers/platform/x86/intel/pmc/Kconfig        |  25 ++
drivers/platform/x86/intel/pmc/Makefile       |   2 +
drivers/platform/x86/intel/pmc/core.h         |  20 ++
.../platform/x86/intel/pmc/pwrm_telemetry.c   | 214 ++++++++++++++
.../platform/x86/intel/pmc/ssram_telemetry.c  | 267 +++++++++++++-----
drivers/platform/x86/intel/pmt/class.c        | 160 ++++++++++-
drivers/platform/x86/intel/pmt/class.h        |  20 +-
drivers/platform/x86/intel/pmt/crashlog.c     |  22 +-
drivers/platform/x86/intel/pmt/telemetry.c    |  32 +--
9 files changed, 636 insertions(+), 126 deletions(-)
create mode 100644 drivers/platform/x86/intel/pmc/pwrm_telemetry.c
[PATCH V2 00/17] Add ACPI-based PMT discovery support for Intel PMC
Posted by David E. Box 1 week, 1 day ago
This series adds ACPI-based PMT discovery support and wires it into the
Intel PMC telemetry stack for Nova Lake S.

Today, PMT discovery flow is primarily PCI-oriented. Some platforms expose
PMT discovery via ACPI _DSD, and PMC telemetry needs to consume that path
for both standalone and companion-device cases. This series addresses that
in three logical steps:

    1. Prepare intel_vsec for ACPI-backed discovery
    2. Refactor PMT class handling so discovery source is
       abstracted (PCI or ACPI)
    3. Add/enable PMC consumers using ACPI discovery, including NVL
       SSRAM support

Patches for step 1 were previously accepted. V2 includes the remaining
integration patches plus a new patch addressing review feedback on
cleanup.h patterns in ssram_telemetry.c.

Series layout

    01-06: intel_vsec cleanup/generalization for ACPI-capable discovery
           plumbing. Previously posted and accepted.

    07-12: PMT class refactor and ACPI discovery-source support
           Major patches:
           Patch 12 - adds ACPI support in PMT driver

    13-17: PMC driver integration
           Major patches:
           Patch 15 - adds ACPI discovery support in ssram driver
           Patch 17 - adds NVL IDs for SSRAM discovery

           Notable changes in V2:
           Patch 14 - new commit fixing __free() cleanup patterns per Ilpo's review

David E. Box (15):
  platform/x86/intel/pmt: Add pre/post decode hooks around header
    parsing
  platform/x86/intel/pmt/crashlog: Split init into pre-decode
  platform/x86/intel/pmt/telemetry: Move overlap check to post-decode
    hook
  platform/x86/intel/pmt: Move header decode into common helper
  platform/x86/intel/pmt: Pass discovery index instead of resource
  platform/x86/intel/pmt: Unify header fetch and add ACPI source
  platform/x86/intel/pmc: Add PMC SSRAM Kconfig description
  platform/x86/intel/pmc: Add ACPI PWRM telemetry driver for Nova Lake S
  platform/x86/intel/pmc/ssram: Rename probe and PCI ID table for
    consistency
  platform/x86/intel/pmc/ssram: Refactor DEVID/PWRMBASE extraction into
    helper
  platform/x86/intel/pmc/ssram: Add PCI platform data
  platform/x86/intel/pmc/ssram_telemetry: Fix cleanup pattern for
    __free() variables
  platform/x86/intel/pmc/ssram: Add ACPI discovery scaffolding
  platform/x86/intel/pmc/ssram: Make PMT registration optional
  platform/x86/intel/pmc: Add NVL PCI IDs for SSRAM telemetry discovery

Xi Pardee (2):
  platform/x86/intel/pmc/ssram: Use fixed-size static pmc array
  platform/x86/intel/pmc/ssram: Refactor memory barrier for reentrant
    probe

 drivers/platform/x86/intel/pmc/Kconfig        |  25 ++
 drivers/platform/x86/intel/pmc/Makefile       |   2 +
 drivers/platform/x86/intel/pmc/core.h         |  20 ++
 .../platform/x86/intel/pmc/pwrm_telemetry.c   | 214 ++++++++++++++
 .../platform/x86/intel/pmc/ssram_telemetry.c  | 267 +++++++++++++-----
 drivers/platform/x86/intel/pmt/class.c        | 160 ++++++++++-
 drivers/platform/x86/intel/pmt/class.h        |  20 +-
 drivers/platform/x86/intel/pmt/crashlog.c     |  22 +-
 drivers/platform/x86/intel/pmt/telemetry.c    |  32 +--
 9 files changed, 636 insertions(+), 126 deletions(-)
 create mode 100644 drivers/platform/x86/intel/pmc/pwrm_telemetry.c


base-commit: a5877e921389178f994a5ec15a145d7e7ba3ec65
--
2.43.0