From: Alastair D'Silva <alast...@d-silva.org> This series reworks the OpenCAPI driver to split frontend (driver interactions) from backend (hardware interactions).
This allows external drivers to utilise the core of the generic OpenCAPI driver to communicate with specific OpenCAPI hardware. Changelog: V2: - Reorder patches as some required structs that were only available later - Add dev.release implementation for ocxl_file_info to address warning on driver unload (ocxl: Create a clear delineation...) - Set output var irq_id in ocxl_afu_irq_alloc (ocxl: afu_irq only deals...) - Bump copyright year (ocxl: Provide global MMIO accessors..., ocxl: Split pci.c) Alastair D'Silva (7): ocxl: Split pci.c ocxl: Don't pass pci_dev around ocxl: Create a clear delineation between ocxl backend & frontend ocxl: Allow external drivers to use OpenCAPI contexts ocxl: afu_irq only deals with IRQ IDs, not offsets ocxl: move event_fd handling to frontend ocxl: Provide global MMIO accessors for external drivers drivers/misc/ocxl/Makefile | 3 +- drivers/misc/ocxl/afu_irq.c | 97 ++--- drivers/misc/ocxl/context.c | 18 +- drivers/misc/ocxl/core.c | 578 ++++++++++++++++++++++++++++++ drivers/misc/ocxl/file.c | 160 ++++++--- drivers/misc/ocxl/mmio.c | 234 ++++++++++++ drivers/misc/ocxl/ocxl_internal.h | 49 +-- drivers/misc/ocxl/pci.c | 562 ++--------------------------- drivers/misc/ocxl/sysfs.c | 58 +-- drivers/misc/ocxl/trace.h | 12 +- include/misc/ocxl.h | 322 ++++++++++++++++- 11 files changed, 1390 insertions(+), 703 deletions(-) create mode 100644 drivers/misc/ocxl/core.c create mode 100644 drivers/misc/ocxl/mmio.c -- 2.20.1