[PATCH v2 0/6] Add SR-IOV support in PCIe Endpoint Core

From: Kishon Vijay Abraham I
Date: Thu Nov 12 2020 - 12:54:43 EST


Patch series
*) Adds support to add virtual functions to enable endpoint controller
which supports SR-IOV capability
*) Add support in Cadence endpoint driver to configure virtual functions
*) Enable pci_endpoint_test driver to create pci_device for virtual
functions

Here both physical functions and virtual functions use the same
pci_endpoint_test driver and existing pcitest utility can be used
to test virtual functions as well.

Changes from v1:
*) Re-based and Re-worked to latest kernel 5.10.0-rc2+ (now has generic
binding for EP)

Patch series is created on top of NTB series [2]

v1 of the patch series can be found @ [1]

[1] -> http://lore.kernel.org/r/20191231113534.30405-1-kishon@xxxxxx
[2] -> http://lore.kernel.org/r/20201111153559.19050-1-kishon@xxxxxx

Kishon Vijay Abraham I (6):
dt-bindings: PCI: pci-ep: Add binding to specify virtual function
PCI: endpoint: Add support to add virtual function in endpoint core
PCI: endpoint: Add support to link a physical function to a virtual
function
PCI: endpoint: Add virtual function number in pci_epc ops
PCI: cadence: Add support to configure virtual functions
misc: pci_endpoint_test: Populate sriov_configure ops to configure
SR-IOV device

.../devicetree/bindings/pci/pci-ep.yaml | 9 +
drivers/misc/pci_endpoint_test.c | 1 +
.../pci/controller/cadence/pcie-cadence-ep.c | 251 +++++++++++++++---
drivers/pci/controller/cadence/pcie-cadence.h | 7 +
.../pci/controller/dwc/pcie-designware-ep.c | 36 +--
drivers/pci/controller/pcie-rcar-ep.c | 19 +-
drivers/pci/controller/pcie-rockchip-ep.c | 18 +-
drivers/pci/endpoint/functions/pci-epf-ntb.c | 83 +++---
drivers/pci/endpoint/functions/pci-epf-test.c | 66 +++--
drivers/pci/endpoint/pci-ep-cfs.c | 24 ++
drivers/pci/endpoint/pci-epc-core.c | 166 +++++++++---
drivers/pci/endpoint/pci-epf-core.c | 144 +++++++++-
include/linux/pci-epc.h | 57 ++--
include/linux/pci-epf.h | 16 +-
14 files changed, 693 insertions(+), 204 deletions(-)

--
2.17.1