| From: |
| alejandro.lucero-palau-AT-amd.com |
| To: |
| <linux-cxl-AT-vger.kernel.org>, <netdev-AT-vger.kernel.org>, <dan.j.williams-AT-intel.com>, <edward.cree-AT-amd.com>, <davem-AT-davemloft.net>, <kuba-AT-kernel.org>, <pabeni-AT-redhat.com>, <edumazet-AT-google.com>, <dave.jiang-AT-intel.com> |
| Subject: |
| [PATCH v11 00/23] add type2 device basic support |
| Date: |
| Mon, 10 Mar 2025 21:03:17 +0000 |
| Message-ID: |
| <20250310210340.3234884-1-alejandro.lucero-palau@amd.com> |
| Cc: |
| Alejandro Lucero <alucerop-AT-amd.com> |
| Archive-link: |
| Article |
From: Alejandro Lucero <alucerop@amd.com>
v11 changes:
- Dropping the use of cxl_memdev_state and going back to using
cxl_dev_state.
- Using a helper for an accel driver to allocate its own cxl-related
struct embedding cxl_dev_state.
- Exporting the required structs in include/cxl/cxl.h for an accel
driver being able to know the cxl_dev_state size required in the
previously mentioned helper for allocation.
- Avoid using any struct for dpa initialization by the accel driver
adding a specific function for creating dpa partitions by accel
drivers without a mailbox.
Alejandro Lucero (23):
cxl: add type2 device basic support
sfc: add cxl support
cxl: move pci generic code
cxl: move register/capability check to driver
cxl: add function for type2 cxl regs setup
sfc: make regs setup with checking and set media ready
cxl: support dpa initialization without a mailbox
sfc: initialize dpa
cxl: prepare memdev creation for type2
sfc: create type2 cxl memdev
cxl: define a driver interface for HPA free space enumeration
fc: obtain root decoder with enough HPA free space
cxl: define a driver interface for DPA allocation
sfc: get endpoint decoder
cxl: make region type based on endpoint type
cxl/region: factor out interleave ways setup
cxl/region: factor out interleave granularity setup
cxl: allow region creation by type2 drivers
cxl: add region flag for precluding a device memory to be used for dax
sfc: create cxl region
cxl: add function for obtaining region range
sfc: update MCDI protocol headers
sfc: support pio mapping based on cxl
drivers/cxl/core/core.h | 2 +
drivers/cxl/core/hdm.c | 83 +
drivers/cxl/core/mbox.c | 30 +-
drivers/cxl/core/memdev.c | 47 +-
drivers/cxl/core/pci.c | 115 +
drivers/cxl/core/port.c | 8 +-
drivers/cxl/core/region.c | 411 +-
drivers/cxl/core/regs.c | 39 +-
drivers/cxl/cxl.h | 112 +-
drivers/cxl/cxlmem.h | 103 +-
drivers/cxl/cxlpci.h | 23 +-
drivers/cxl/mem.c | 26 +-
drivers/cxl/pci.c | 118 +-
drivers/cxl/port.c | 5 +-
drivers/net/ethernet/sfc/Kconfig | 9 +
drivers/net/ethernet/sfc/Makefile | 1 +
drivers/net/ethernet/sfc/ef10.c | 50 +-
drivers/net/ethernet/sfc/efx.c | 15 +-
drivers/net/ethernet/sfc/efx_cxl.c | 162 +
drivers/net/ethernet/sfc/efx_cxl.h | 40 +
drivers/net/ethernet/sfc/mcdi_pcol.h | 13645 +++++++++---------------
drivers/net/ethernet/sfc/net_driver.h | 12 +
drivers/net/ethernet/sfc/nic.h | 3 +
include/cxl/cxl.h | 269 +
include/cxl/pci.h | 36 +
tools/testing/cxl/Kbuild | 1 -
tools/testing/cxl/test/mock.c | 17 -
27 files changed, 6186 insertions(+), 9196 deletions(-)
create mode 100644 drivers/net/ethernet/sfc/efx_cxl.c
create mode 100644 drivers/net/ethernet/sfc/efx_cxl.h
create mode 100644 include/cxl/cxl.h
create mode 100644 include/cxl/pci.h
base-commit: 0a14566be090ca51a32ebdd8a8e21678062dac08
--
2.34.1