[PATCH v24 00/11] Type2 device basic support

alejandro.lucero-palau
2026-03-23T11:31:28Z

From: Alejandro Lucero <alucerop@amd.com>

This patchset should be aplied on the for-7.1/cxl-type2-support branch.

For the sake of having the impending Type2 support for known drivers
needing it (sfc and Jump Trading) this version does only support the
case of HDM Type2 device committed by the BIOS, keeping the
decoders untouched when driver is unload, which requires a patch from v6
Smita's series:

https://lore.kernel.org/linux-cxl/20260210064501.157591-1-Smita.KoralahalliChannabasappa@amd.com/T/#mdad81d3817def8baace77ead9e2e305e775cf51d ?

or a BIOS locking those decoders.

Patches below same than those part of v23 but with only the code dealing
with the supported case.

Alejandro Lucero (11):
sfc: add cxl support
cxl/sfc: Map cxl regs
cxl/sfc: Initialize dpa without a mailbox
cxl: Prepare memdev creation for type2
sfc: create type2 cxl memdev
cxl/hdm: Add support for getting region from committed decoder
cxl: Add function for obtaining region range
cxl: Export function for unwinding cxl by accelerators
sfc: obtain decoder and region if committed by firmware
cxl: Avoid dax creation for accelerators
sfc: support pio mapping based on cxl

drivers/cxl/core/core.h | 2 +
drivers/cxl/core/hdm.c | 39 +++++++++
drivers/cxl/core/mbox.c | 51 +----------
drivers/cxl/core/memdev.c | 81 +++++++++++++++++-
drivers/cxl/core/pci.c | 1 +
drivers/cxl/core/port.c | 1 +
drivers/cxl/core/region.c | 47 ++++++++--
drivers/cxl/core/regs.c | 1 +
drivers/cxl/cxlmem.h | 6 --
drivers/cxl/cxlpci.h | 12 ---
drivers/cxl/mem.c | 45 +++++++---
drivers/cxl/pci.c | 1 +
drivers/net/ethernet/sfc/Kconfig | 9 ++
drivers/net/ethernet/sfc/Makefile | 1 +
drivers/net/ethernet/sfc/ef10.c | 53 ++++++++++--
drivers/net/ethernet/sfc/efx.c | 15 +++-
drivers/net/ethernet/sfc/efx_cxl.c | 119 ++++++++++++++++++++++++++
drivers/net/ethernet/sfc/efx_cxl.h | 40 +++++++++
drivers/net/ethernet/sfc/net_driver.h | 12 +++
drivers/net/ethernet/sfc/nic.h | 3 +
include/cxl/cxl.h | 14 +++
include/cxl/pci.h | 21 +++++
22 files changed, 480 insertions(+), 94 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/pci.h

base-commit: 64584273dfb8a1e5fc7d78094ba22a93c204b44e
--
2.34.1