cxl/pci: Create PCI DOE mailbox's for memory devices
authorIra Weiny <ira.weiny@intel.com>
Tue, 19 Jul 2022 20:52:47 +0000 (13:52 -0700)
committerDan Williams <dan.j.williams@intel.com>
Tue, 19 Jul 2022 22:38:04 +0000 (15:38 -0700)
commit3eddcc938581968d126e7345e9ec84c75290e7a4
tree886132191b9de5518044e99168776876e38d3d39
parent9d24322e887b6a3d3f9f9c3e76937a646102c8c1
cxl/pci: Create PCI DOE mailbox's for memory devices

DOE mailbox objects will be needed for various mailbox communications
with each memory device.

Iterate each DOE mailbox capability and create PCI DOE mailbox objects
as found.

It is not anticipated that this is the final resting place for the
iteration of the DOE devices.  The support of switch ports will drive
this code into the PCIe side.  In this imagined architecture the CXL
port driver would then query into the PCI device for the DOE mailbox
array.

For now creating the mailboxes in the CXL port is good enough for the
endpoints.  Later PCIe ports will need to support this to support switch
ports more generically.

Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Davidlohr Bueso <dave@stgolabs.net>
Cc: Lukas Wunner <lukas@wunner.de>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Link: https://lore.kernel.org/r/20220719205249.566684-5-ira.weiny@intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/cxl/Kconfig
drivers/cxl/cxlmem.h
drivers/cxl/pci.c