Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v7 00/20] Crescent Island PMT support
@ 2026-09-09 15:47 Michael J. Ruhl
  2026-09-09 15:47 ` [PATCH v7 01/20] platform/x86/intel/pmt: complete pcidev to device update Michael J. Ruhl
                   ` (21 more replies)
  0 siblings, 22 replies; 31+ messages in thread
From: Michael J. Ruhl @ 2026-09-09 15:47 UTC (permalink / raw)
  To: platform-driver-x86, intel-xe, hansg, ilpo.jarvinen,
	matthew.brost, rodrigo.vivi, thomas.hellstrom, airlied, simona,
	david.e.box, anoop.c.vijay, badal.nilawar, matthew.d.roper,
	james.ausmus, karthik.poosa

The Crescent Island (CRI) GPU supports PMT via Xe driver
registration.

The CRI PMT MMIO mapping is shared for each PMT feature and it is
necessary to set an index register value to access the correct memory
space.

The PMT driver has a callback infrastructure to access data areas with
driver specific access. It is does not support the PMT control access.

CRI discovery/control spaces are part of the access window so a driver
callback is necessary to allow for the correct window to be exposed.

Add control path callback support to the PMT driver.

Add CRI PMT discovery information.

Update the Xe driver to support the CRI PMT access.

The crashlog access needs to be done with power enabled (telem is only
available when the device is powered).

Determine which access is requested, and do the appropriate power
request.

CRI FW is loaded at device power.  Support the late-binding API to
wait for FW readiness. (pending sysctl patch set implements the API).

v2:
  Address AI feedback:
  - add missing entry->cb check
  - address SRIOV VF concerns
  - use xe_pm_runtime_put instead of _get in error path

  Address review comments:
  - redo power/lock sequencing
  - support device hotplug events

v3:
  - cleanup power manangement flow
  - fixed an out of order power management locking issue
  - add a GUID caching mechanism, for GUID read
  - removed unused parameter (mmio)

v4:
 - address various review comments
 - refactor crashlog to allow for return values
 - for callback usage, decouple PMT remap of data areas
 - use IS_SRIOV_VF() rather than expose soc-remapper internals
 - separate locking fixes intos distinct steps
 - refactor define update patches to seperate BMG and CRI updates
 - separate internal GUID into separate steps

v5:
 - removed callback helpers
 - do not return error message with sysfs
 - fix missed return code check in trigger_store
 - return error value not false
 - use DEFINE_RES_MEM
 - document when base is unused
 - return error on invalid GUID request

v6:
 - fix enabled/disabled inversion
 - fix missing DOC reference
 - change memcpy_to/fromio to readl/writel for register read
 - guid cache comment and update on valid guid

v7:
 - reordered to have BMG updates followed by CRI support
 - separate base_offset usage for clarity
 - added EAGAIN usage to block uninitialized use of the API

Michael J. Ruhl (18):
  platform/x86/intel/pmt: complete pcidev to device update
  platform/x86/intel/pmt: refactor rmw with a return value
  platform/x86/intel/pmt: refactor rc with a return value
  platform/x86/intel/pmt: Add register access callbacks
  platform/x86/intel/pmt: Do not remap when using callbacks
  drm/xe/vsec: Do not register BMG PMT for VF
  drm/xe/vsec: Correct locking order
  drm/xe/vsec: Use correct pm state get
  drm/xe/vsec: Add DOC text for VSEC
  drm/xe/vsec: Support possible hotplug exit
  drm/xe/vsec: Refactor BattleMage PMT defines
  drm/xe/vsec: Support EAGAIN return value
  drm/xe/vsec: Add base_offset to allow for more flexibilty
  drm/xe/vsec: Support Crescent Island PMT
  drm/xe/vsec: Crescent Island PMT decode
  drm/xe/vsec: Crescent Island PMT callbacks
  drm/xe/vsec: Support late bind fw information
  drm/xe/vsec: Add PMT GUID internal access
  drm/xe/vsec: Update PMT internal access
  drm/xe/vsec: Refactor platform check

 Documentation/gpu/xe/index.rst             |   1 +
 Documentation/gpu/xe/xe_vsec.rst           |  14 +
 drivers/gpu/drm/xe/regs/xe_pmt.h           |  12 +-
 drivers/gpu/drm/xe/xe_debugfs.c            |  48 +-
 drivers/gpu/drm/xe/xe_device.c             |   4 +-
 drivers/gpu/drm/xe/xe_device_types.h       |   9 +
 drivers/gpu/drm/xe/xe_hwmon.c              |  14 +-
 drivers/gpu/drm/xe/xe_pcode.c              |  13 +-
 drivers/gpu/drm/xe/xe_vsec.c               | 548 +++++++++++++++++++--
 drivers/gpu/drm/xe/xe_vsec.h               |   3 +-
 drivers/platform/x86/intel/pmt/class.c     |  26 +-
 drivers/platform/x86/intel/pmt/class.h     |   5 +-
 drivers/platform/x86/intel/pmt/crashlog.c  | 237 ++++++---
 drivers/platform/x86/intel/pmt/discovery.c |   2 +-
 include/linux/intel_vsec.h                 |  14 +-
 15 files changed, 783 insertions(+), 167 deletions(-)
 create mode 100644 Documentation/gpu/xe/xe_vsec.rst

-- 
2.43.0


^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2026-09-11 20:03 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-09 15:47 [PATCH v7 00/20] Crescent Island PMT support Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 01/20] platform/x86/intel/pmt: complete pcidev to device update Michael J. Ruhl
2026-09-09 16:01   ` sashiko-bot
2026-09-09 15:47 ` [PATCH v7 02/20] platform/x86/intel/pmt: refactor rmw with a return value Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 03/20] platform/x86/intel/pmt: refactor rc " Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 04/20] platform/x86/intel/pmt: Add register access callbacks Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 05/20] platform/x86/intel/pmt: Do not remap when using callbacks Michael J. Ruhl
2026-09-09 16:00   ` sashiko-bot
2026-09-09 15:47 ` [PATCH v7 06/20] drm/xe/vsec: Do not register BMG PMT for VF Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 07/20] drm/xe/vsec: Correct locking order Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 08/20] drm/xe/vsec: Use correct pm state get Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 09/20] drm/xe/vsec: Add DOC text for VSEC Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 10/20] drm/xe/vsec: Support possible hotplug exit Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 11/20] drm/xe/vsec: Refactor BattleMage PMT defines Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 12/20] drm/xe/vsec: Support EAGAIN return value Michael J. Ruhl
2026-09-09 16:01   ` sashiko-bot
2026-09-11 20:01     ` Ruhl, Michael J
2026-09-09 15:47 ` [PATCH v7 13/20] drm/xe/vsec: Add base_offset to allow for more flexibilty Michael J. Ruhl
2026-09-09 16:02   ` sashiko-bot
2026-09-11 20:03     ` Ruhl, Michael J
2026-09-09 15:47 ` [PATCH v7 14/20] drm/xe/vsec: Support Crescent Island PMT Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 15/20] drm/xe/vsec: Crescent Island PMT decode Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 16/20] drm/xe/vsec: Crescent Island PMT callbacks Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 17/20] drm/xe/vsec: Support late bind fw information Michael J. Ruhl
2026-09-09 16:08   ` sashiko-bot
2026-09-09 15:47 ` [PATCH v7 18/20] drm/xe/vsec: Add PMT GUID internal access Michael J. Ruhl
2026-09-10 18:55   ` Poosa, Karthik
2026-09-09 15:47 ` [PATCH v7 19/20] drm/xe/vsec: Update PMT " Michael J. Ruhl
2026-09-09 15:47 ` [PATCH v7 20/20] drm/xe/vsec: Refactor platform check Michael J. Ruhl
2026-09-09 15:56 ` ✗ CI.checkpatch: warning for Crescent Island PMT support (rev9) Patchwork
2026-09-09 15:57 ` ✗ CI.KUnit: failure " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox