linux/drivers/cxl
Dan Williams 60b8f17215 cxl/pmem: Translate NVDIMM label commands to CXL label commands
The LIBNVDIMM IOCTL UAPI calls back to the nvdimm-bus-provider to
translate the Linux command payload to the device native command format.
The LIBNVDIMM commands get-config-size, get-config-data, and
set-config-data, map to the CXL memory device commands device-identify,
get-lsa, and set-lsa. Recall that the label-storage-area (LSA) on an
NVDIMM device arranges for the provisioning of namespaces. Additionally
for CXL the LSA is used for provisioning regions as well.

The data from device-identify is already cached in the 'struct cxl_mem'
instance associated with @cxl_nvd, so that payload return is simply
crafted and no CXL command is issued. The conversion for get-lsa is
straightforward, but the conversion for set-lsa requires an allocation
to append the set-lsa header in front of the payload.

Reviewed-by: Ben Widawsky <ben.widawsky@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://lore.kernel.org/r/163122524923.2534512.9431316965424264864.stgit@dwillia2-desk3.amr.corp.intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2021-09-21 13:47:09 -07:00
..
core cxl/mbox: Add exclusive kernel command support 2021-09-21 13:44:57 -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: Add exclusive kernel command support 2021-09-21 13:44:57 -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/pci: Use module_pci_driver 2021-09-21 13:44:57 -07:00
pci.h cxl/pci: Simplify register setup 2021-08-06 08:27:02 -07:00
pmem.c cxl/pmem: Translate NVDIMM label commands to CXL label commands 2021-09-21 13:47:09 -07:00