On Wed, 30 Jun 2021, David E. Box wrote: > On Wed, 2021-06-30 at 11:15 +0100, Lee Jones wrote: > > 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. > > None of the cell drivers are in MFD, only the PCI drivers from which > the cells are created. I understood that these should be in MFD. But > moving it to drivers/platform/x86 would be fine with me. That keeps the > code together in the same subsystem. Comment from Hans or Andy? You don't need to move everything there. If a driver uses the MFD API (like intel_pmt.c does), it can stay. But all of this PCI/hardware/ platform specific capability craziness has no place here AFAICT. > > 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