linux/drivers/cxl
Dan Williams 4faf31b434 cxl/mbox: Move mailbox and other non-PCI specific infrastructure to the core
Now that the internals of mailbox operations are abstracted from the PCI
specifics a bulk of infrastructure can move to the core.

The CXL_PMEM driver intends to proxy LIBNVDIMM UAPI and driver requests
to the equivalent functionality provided by the CXL hardware mailbox
interface. In support of that intent move the mailbox implementation to
a shared location for the CXL_PCI driver native IOCTL path and CXL_PMEM
nvdimm command proxy path to share.

A unit test framework seeks to implement a unit test backend transport
for mailbox commands to communicate mocked up payloads. It can reuse all
of the mailbox infrastructure minus the PCI specifics, so that also gets
moved to the core.

Finally with the mailbox infrastructure and ioctl handling being
transport generic there is no longer any need to pass file
file_operations to devm_cxl_add_memdev(). That allows all the ioctl
boilerplate to move into the core for unit test reuse.

No functional change intended, just code movement.

Acked-by: Ben Widawsky <ben.widawsky@intel.com>
Reported-by: kernel test robot <lkp@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://lore.kernel.org/r/163116435233.2460985.16197340449713287180.stgit@dwillia2-desk3.amr.corp.intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2021-09-21 13:44:56 -07:00
..
core cxl/mbox: Move mailbox and other non-PCI specific infrastructure to the core 2021-09-21 13:44:56 -07:00
acpi.c cxl/acpi: Do not add DSDT disabled ACPI0016 host bridge ports 2021-09-07 11:39:01 -07:00
cxl.h cxl/pci: Simplify register setup 2021-08-06 08:27:02 -07:00
cxlmem.h cxl/mbox: Move mailbox and other non-PCI specific infrastructure to the core 2021-09-21 13:44:56 -07:00
Kconfig cxl/pmem: Add initial infrastructure for pmem support 2021-06-15 16:47:14 -07:00
Makefile cxl: Move cxl_core to new directory 2021-08-06 08:22:53 -07:00
pci.c cxl/mbox: Move mailbox and other non-PCI specific infrastructure to the core 2021-09-21 13:44:56 -07:00
pci.h cxl/pci: Simplify register setup 2021-08-06 08:27:02 -07:00
pmem.c cxl: Move cxl_core to new directory 2021-08-06 08:22:53 -07:00