[PATCH V3 00/16] Add ACPI-based PMT discovery support for Intel PMC

David E. Box
2026-05-01T23:11:00Z

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. V3 includes the remaining
integration patches.

V3 changes:
- Dropped "platform/x86/intel/pmt: Move header decode into common helper"
- The dropped patch caused a crashlog regression because disc_res was
accessed before assignment
- Updated the surrounding PMT patches to keep the needed ACPI header-fetch
work without the dropped helper
- Added "platform/x86/intel/pmt: Cache the telemetry discovery header"
to carry the post-v3 bug fix cleanly
- Dropped the standalone cleanup-pattern patch to keep the simpler
ssram pointer flow requested in review

V2 changes:
- Added the remaining integration patches

Series layout

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

07-16: PMC driver integration
Major patches:
Patch 08 - adds ACPI PWRM telemetry driver for Nova Lake S
Patch 14 - adds ACPI discovery support in ssram driver
Patch 16 - adds NVL IDs for SSRAM discovery

David E. Box (14):
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: Pass discovery index instead of resource
platform/x86/intel/pmt: Cache the telemetry discovery header
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: 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 | 251 +++++++++++++-----
drivers/platform/x86/intel/pmt/class.c | 141 +++++++++-
drivers/platform/x86/intel/pmt/class.h | 6 +
drivers/platform/x86/intel/pmt/crashlog.c | 19 +-
drivers/platform/x86/intel/pmt/telemetry.c | 34 ++-
9 files changed, 621 insertions(+), 91 deletions(-)
create mode 100644 drivers/platform/x86/intel/pmc/pwrm_telemetry.c

base-commit: 254f49634ee16a731174d2ae34bc50bd5f45e731
--
2.43.0