OpenCloudOS-Kernel/drivers/cxl/core
Dan Williams 98d2d3a264 cxl/core: Generalize dport enumeration in the core
The core houses infrastructure for decoder resources. A CXL port's
dports are more closely related to decoder infrastructure than topology
enumeration. Implement generic PCI based dport enumeration in the core,
i.e. arrange for existing root port enumeration from cxl_acpi to share
code with switch port enumeration which just amounts to a small
difference in a pci_walk_bus() invocation once the appropriate 'struct
pci_bus' has been retrieved.

Set the convention that decoder objects are registered after all dports
are enumerated. This enables userspace to know when the CXL core is
finished establishing 'dportX' links underneath the 'portX' object.

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://lore.kernel.org/r/164368114191.354031.5270501846455462665.stgit@dwillia2-desk3.amr.corp.intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2022-02-08 22:57:30 -08:00
..
Makefile cxl/core: Generalize dport enumeration in the core 2022-02-08 22:57:30 -08:00
core.h cxl/core: Split decoder setup into alloc + add 2021-09-21 14:09:34 -07:00
mbox.c cxl/core: Convert to EXPORT_SYMBOL_NS_GPL 2021-11-15 11:02:59 -08:00
memdev.c cxl/core: Convert to EXPORT_SYMBOL_NS_GPL 2021-11-15 11:02:59 -08:00
pci.c cxl/core: Generalize dport enumeration in the core 2022-02-08 22:57:30 -08:00
pmem.c cxl/pmem: Introduce a find_cxl_root() helper 2022-02-08 22:57:29 -08:00
port.c cxl/core: Generalize dport enumeration in the core 2022-02-08 22:57:30 -08:00
regs.c cxl/pci: Rename pci.h to cxlpci.h 2022-02-08 22:57:30 -08:00