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

David E. Box posted 16 patches 1 month, 1 week ago
Only 6 patches received!
There is a newer version of this series
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
[PATCH V3 00/16] Add ACPI-based PMT discovery support for Intel PMC
Posted by David E. Box 1 month, 1 week 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. 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