On Thu, 17 Jun 2021, David E. Box wrote: > Unlike the other devices in intel_pmt, the Out of Band Management Services > Module (OOBMSM) is actually not a PMT dedicated device. It can also be used > to describe non-PMT capabilities. Like PMT, these capabilities are also > enumerated using PCIe Vendor Specific registers in config space. In order > to better support these devices without the confusion of a dependency on > MFD_INTEL_PMT, remove the OOBMSM device from intel_pmt so that it can be > later placed in its own driver. Since much of the same code will be used by > intel_pmt and the new driver, create a new file with symbols to be used by > both. > > While performing this split we need to also handle the creation of platform > devices for the non-PMT capabilities. Currently PMT devices are named by > their capability (e.g. pmt_telemetry). Instead, generically name them by > their capability ID (e.g. intel_extnd_cap_2). This allows the IDs to be > created automatically. However, to ensure that unsupported devices aren't > created, use an allow list to specify supported capabilities. > > Signed-off-by: David E. Box <david.e.box@xxxxxxxxxxxxxxx> > --- > MAINTAINERS | 1 + > drivers/mfd/Kconfig | 4 + > drivers/mfd/Makefile | 1 + > drivers/mfd/intel_extended_caps.c | 208 +++++++++++++++++++++ Please consider moving this <whatever this is> out to either drivers/pci or drivers/platform/x86. I suggest Andy should also be on Cc. > drivers/mfd/intel_extended_caps.h | 40 ++++ > drivers/mfd/intel_pmt.c | 198 ++------------------ > drivers/platform/x86/intel_pmt_crashlog.c | 2 +- > drivers/platform/x86/intel_pmt_telemetry.c | 2 +- > 8 files changed, 270 insertions(+), 186 deletions(-) > create mode 100644 drivers/mfd/intel_extended_caps.c > create mode 100644 drivers/mfd/intel_extended_caps.h -- Lee Jones [李琼斯] Senior Technical Lead - Developer Services Linaro.org │ Open source software for Arm SoCs Follow Linaro: Facebook | Twitter | Blog