mbox series

[0/4] MFD: intel_pmt: Split OOBMSM from intel_pmt driver

Message ID 20210617215408.1412409-1-david.e.box@linux.intel.com (mailing list archive)
Headers show
Series MFD: intel_pmt: Split OOBMSM from intel_pmt driver | expand


David E. Box June 17, 2021, 9:54 p.m. UTC
Most of the devices in the intel_pmt driver are PMT only devices. However,
the Out of Band Management Services Module (OOBMSM) can also be used
access non-PMT devices. In order to better support this without the
confusion of a dependency on MFD_INTEL_PMT, this patch set rewrites the
intel_pmt driver to split the functionality into 3 components:

	1. intel_pmt - driver for PMT only devices
	2. intel-oobmsm - driver for devices using the OOBMSM IP which can
	   support multiple types of capabilities, including PMT
	3. intel-extended-cap - symbols to handle adding platform device
	   for both drivers

Additionally, this patch set provides additional DVSEC macros in the PCI
header as well as support for reading capabilities from a VSEC structure.

Patch 1 - Adds PCI defines for DVSEC registers
Patch 2 - Removes OOBMSM from intel_pmt and creates intel-extended-cap.c
	  support the creation of platform devices for capabilities from
	  both intel_pmt and intel-oobmsm (Patch 3)
Patch 2 - Creates a separate driver for OOBMSM
Patch 3 - Adds support for reading capabilities from PCIe VSEC structures

For submission through MFD branch.

David E. Box (4):
  PCI: Add #defines for accessing PCIE DVSEC fields
  MFD: intel_pmt: Remove OOBMSM device for placement in own driver
  MFD: Add the Intel Out of Band Management Services Module (OOBMSM)
  MFD: intel-extended-cap: Add support for PCIe VSEC structures

 MAINTAINERS                                |   2 +
 drivers/mfd/Kconfig                        |  15 ++
 drivers/mfd/Makefile                       |   2 +
 drivers/mfd/intel_extended_caps.c          | 267 +++++++++++++++++++++
 drivers/mfd/intel_extended_caps.h          |  40 +++
 drivers/mfd/intel_oobmsm.c                 |  61 +++++
 drivers/mfd/intel_pmt.c                    | 198 ++-------------
 drivers/platform/x86/Kconfig               |   4 +-
 drivers/platform/x86/intel_pmt_crashlog.c  |   2 +-
 drivers/platform/x86/intel_pmt_telemetry.c |   2 +-
 include/uapi/linux/pci_regs.h              |   4 +
 11 files changed, 409 insertions(+), 188 deletions(-)
 create mode 100644 drivers/mfd/intel_extended_caps.c
 create mode 100644 drivers/mfd/intel_extended_caps.h
 create mode 100644 drivers/mfd/intel_oobmsm.c