[PATCH 00/22] platform/x86/intel: Add ACPI PMT discovery support and enable NVL PMC telemetry

David E. Box
2026-03-13T01:52:27Z

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 1–6 were previously posted here:
https://lore.kernel.org/all/20260303051953.1453372-1-david.e.box@linux.intel.com/

Series layout

01-06: intel_vsec cleanup/generalization for ACPI-capable discovery
plumbing. Previous changelog up to V7 included.
Major patches:
Patch 6 - adds ACPI support in VSEC driver

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

13-22: PMC driver integration
Major patches:
Patch 14 - adds new ACPI platform driver
Patch 20 - adds ACPI discovery support in ssram driver
Patch 22 - adds NVL IDs for SSRAM discovery

David E. Box (20):
platform/x86/intel/vsec: Refactor base_addr handling
platform/x86/intel/vsec: Make driver_data info const
platform/x86/intel/vsec: Decouple add/link helpers from PCI
platform/x86/intel/vsec: Switch exported helpers from pci_dev to
device
platform/x86/intel/vsec: Return real error codes from registration
path
platform/x86/intel/vsec: Plumb ACPI PMT discovery tables through vsec
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: 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/gpu/drm/xe/xe_debugfs.c | 2 +-
drivers/gpu/drm/xe/xe_hwmon.c | 2 +-
drivers/gpu/drm/xe/xe_vsec.c | 7 +-
drivers/gpu/drm/xe/xe_vsec.h | 4 +-
drivers/platform/x86/intel/pmc/Kconfig | 25 ++
drivers/platform/x86/intel/pmc/Makefile | 2 +
drivers/platform/x86/intel/pmc/core.c | 4 +-
drivers/platform/x86/intel/pmc/core.h | 17 ++
.../platform/x86/intel/pmc/pwrm_telemetry.c | 227 ++++++++++++++++
.../platform/x86/intel/pmc/ssram_telemetry.c | 254 ++++++++++++++----
drivers/platform/x86/intel/pmt/class.c | 170 ++++++++++--
drivers/platform/x86/intel/pmt/class.h | 25 +-
drivers/platform/x86/intel/pmt/crashlog.c | 16 +-
drivers/platform/x86/intel/pmt/discovery.c | 4 +-
drivers/platform/x86/intel/pmt/telemetry.c | 45 +---
drivers/platform/x86/intel/pmt/telemetry.h | 12 +-
drivers/platform/x86/intel/sdsi.c | 5 +-
drivers/platform/x86/intel/vsec.c | 121 +++++----
drivers/platform/x86/intel/vsec_tpmi.c | 8 +-
include/linux/intel_vsec.h | 39 ++-
20 files changed, 784 insertions(+), 205 deletions(-)
create mode 100644 drivers/platform/x86/intel/pmc/pwrm_telemetry.c

base-commit: 11439c4635edd669ae435eec308f4ab8a0804808
--
2.43.0