[RFC PATCH 00/11] Introduce a test for continuous transfer

From: Shunsuke Mie
Date: Fri Mar 17 2023 - 07:32:51 EST


This patchset introduces testing through continuous transfer to the PCI
endpoint tests. The purpose is to find bugs that may exist in the endpoint
controller driver. This changes able to find bugs in the DW EDMA driver and
this patchset includes the fix.

This bug does not appear in the current tests because these synchronize to
finish with every data transfer. However, the problem occurs with
continuous DMA issuances. The continuous transfers are required to get high
throughput and low latency. Therefore, the added tests will enable
realistic transfer testing.

This patchset is divided into three parts:
- Remove duplicated definitions and improve some code [1-6/11]
- Add continuous transfer tests [7-9/11]
- Fix for the DW EDMA driver bug [10,11/11]

This patchset has beed tested on RCar Spidar that has dw pci edma chip.

Shunsuke Mie (11):
misc: pci_endpoint_test: Aggregate irq_type checking
misc: pci_endpoint_test: Remove an unused variable
pci: endpoint: function/pci-epf-test: Unify a range of time
measurement
PCI: endpoint: functions/pci-epf-test: Move common difinitions to
header file
MAINTAINERS: Add a header file for pci-epf-test
misc: pci_endpoint_test: Use a common header file between endpoint
driver
PCI: endpoint: functions/pci-epf-test: Extend the test for continuous
transfers
misc: pci_endpoint_test: Support a test of continuous transfer
tools: PCI: Add 'C' option to support continuous transfer
dmaengine: dw-edma: Fix to change for continuous transfer
dmaengine: dw-edma: Fix to enable to issue dma request on DMA
processing

MAINTAINERS | 1 +
drivers/dma/dw-edma/dw-edma-core.c | 30 ++-
drivers/misc/pci_endpoint_test.c | 132 ++++--------
drivers/pci/endpoint/functions/pci-epf-test.c | 199 ++++++++----------
include/linux/pci-epf-test.h | 67 ++++++
include/uapi/linux/pcitest.h | 1 +
tools/pci/pcitest.c | 13 +-
7 files changed, 231 insertions(+), 212 deletions(-)
create mode 100644 include/linux/pci-epf-test.h

--
2.25.1