| From: |
| "David E. Box" <david.e.box-AT-linux.intel.com> |
| To: |
| irenic.rajneesh-AT-gmail.com, ilpo.jarvinen-AT-linux.intel.com, srinivas.pandruvada-AT-linux.intel.com, xi.pardee-AT-linux.intel.com, david.e.box-AT-linux.intel.com |
| Subject: |
| [PATCH V2 00/17] Add ACPI-based PMT discovery support for Intel PMC |
| Date: |
| Tue, 24 Mar 2026 18:48:02 -0700 |
| Message-ID: |
| <20260325014819.1283566-1-david.e.box@linux.intel.com> |
| Cc: |
| hansg-AT-kernel.org, linux-kernel-AT-vger.kernel.org, platform-driver-x86-AT-vger.kernel.org |
| Archive-link: |
| Article |
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