All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V3 0/3] PCI: Add basic Compute eXpress Link DVSEC decode
@ 2020-05-20 18:06 Sean V Kelley
  2020-05-20 18:06 ` [PATCH V3 1/3] PCI: Add defines for Designated Vendor-Specific Capability Sean V Kelley
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Sean V Kelley @ 2020-05-20 18:06 UTC (permalink / raw)
  To: bhelgaas; +Cc: linux-pci, linux-kernel, Sean V Kelley

Changes since v2 [1]:

- Provide comment about what PCI_CXL_LOCK does.
- Use "cxl" in place of "pos" where appropriate to make code more descriptive.
- Remove unnecessary extra check for pci_is_pcie(dev).
- Remove reshuffling of pci_read_config_word() and put them in the right place
when first added.
- Make inline stubs consistent in format locally.
(Bjorn Helgaas)
- Add return to inline stubs to fix warning.
- Refreshed David's patch (V2)

[1] https://lore.kernel.org/linux-pci/20200518163523.1225643-1-sean.v.kelley@linux.intel.com/

This patch series implements basic Designated Vendor-Specific Extended
Capabilities (DVSEC) decode for Compute eXpress Link devices, a new CPU
interconnect building upon PCIe. As a basis for the CXL support it provides
PCI init handling for detection, decode, and caching of CXL device
capabilities.  Moreover, it makes use of the DVSEC Vendor ID and DVSEC ID so
as to identify a CXL capable device. (PCIe r5.0, sec 7.9.6.2)

DocLink: https://www.computeexpresslink.org/

For your reference, a parallel series of patches have been submitted to enable
lspci decode of CXL DVSEC and may be tracked.

Link: https://lore.kernel.org/linux-pci/20200511174618.10589-1-sean.v.kelley@linux.intel.com/

This patch makes use of pending DVSEC related header additions and the
first patch of that series is included here. It can be sorted out when the
upstream merge is done.

Link: https://lore.kernel.org/linux-pci/20200508021844.6911-2-david.e.box@linux.intel.com/

Sample dmesg output of a CXL Type 3 device (CXL.io, CXL.mem):
[    2.997177] pci 0000:6b:00.0: CXL: Cache- IO+ Mem+ Viral- HDMCount 1
[    2.997188] pci 0000:6b:00.0: CXL: cap ctrl status ctrl2 status2 lock
[    2.997201] pci 0000:6b:00.0: CXL: 001e 0002 0000 0000 0000 0000

David E. Box (1):
  PCI: Add defines for Designated Vendor-Specific Capability

Sean V Kelley (2):
  PCI: Add basic Compute eXpress Link DVSEC decode
  PCI: Add helpers to enable/disable CXL.mem and CXL.cache

 drivers/pci/Kconfig           |   9 ++
 drivers/pci/Makefile          |   1 +
 drivers/pci/cxl.c             | 176 ++++++++++++++++++++++++++++++++++
 drivers/pci/pci.h             |  15 +++
 drivers/pci/probe.c           |   1 +
 include/linux/pci.h           |   3 +
 include/uapi/linux/pci_regs.h |   5 +
 7 files changed, 210 insertions(+)
 create mode 100644 drivers/pci/cxl.c

--
2.26.2


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-05-20 18:06 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-20 18:06 [PATCH V3 0/3] PCI: Add basic Compute eXpress Link DVSEC decode Sean V Kelley
2020-05-20 18:06 ` [PATCH V3 1/3] PCI: Add defines for Designated Vendor-Specific Capability Sean V Kelley
2020-05-20 18:06 ` [PATCH V3 2/3] PCI: Add basic Compute eXpress Link DVSEC decode Sean V Kelley
2020-05-20 18:06 ` [PATCH V3 3/3] PCI: Add helpers to enable/disable CXL.mem and CXL.cache Sean V Kelley

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.