[PATCH v5 00/17] PCI endpoint fixes and improvements

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


This series fixes several issues with the PCI endpoint code and endpoint
test drivers (RC side and EP side).

The first 2 patches address an issue with the use of configfs to create
an endpoint driver type attributes group, preventing a potential crash
if the user creates a directory multiple times for the driver type

The following patches are fixes and improvements for the endpoint test
drivers, EP side and RC side.

This is all tested using a Pine Rockpro64 board, with the rockchip ep
driver fixed using Rick Wertenbroek <rick.wertenbroek@xxxxxxxxx>
patches [1].

[1] https://lore.kernel.org/linux-pci/20230404082426.3880812-1-rick.wertenbroek@xxxxxxxxx/

Changes from v4:
 - Addressed Bjorn comments on the commit messages (typos, text clarity)
 - Changed patch 1 to use dev_err() instead of pr_err().
 - Add print of invalid command value in patch 10
 - Chnaged all patches author and Signed-off-by tag to use my kernel.org
   email address
 - Added Mani's review tags

Changes from v3:
 - Corrected patch 7 and 12 title
 - Added patch 11

Changes from v2:
 - Add updates of the ntb and vntb function driver documentation in
   patch 1 to reflect the patch changes.
 - Removed unnecessary WARN_ON() call in patch 4
 - Added missing cc: stable tags
 - Added review tags

Changes from v1:
 - Improved patch 1 commit message
 - Modified patch 2 to not have to add an internal header file
 - Split former patch 3 into patch 3, 4 and 5
 - Removed former patch 4 introducing volatile casts and replaced it
   with patch 9
 - Added patch 6, 7, 8 and 10
 - Added Reviewed-by tags in patches not modified

Damien Le Moal (17):
  PCI: endpoint: Automatically create a function specific attributes
  PCI: endpoint: Move pci_epf_type_add_cfs() code
  PCI: epf-test: Fix DMA transfer completion initialization
  PCI: epf-test: Fix DMA transfer completion detection
  PCI: epf-test: Use dmaengine_submit() to initiate DMA transfer
  PCI: epf-test: Simplify read/write/copy test functions
  PCI: epf-test: Simplify pci_epf_test_raise_irq()
  PCI: epf-test: Simplify IRQ test commands execution
  PCI: epf-test: Improve handling of command and status registers
  PCI: epf-test: Cleanup pci_epf_test_cmd_handler()
  PCI: epf-test: Cleanup request result handling
  PCI: epf-test: Simplify DMA support checks
  PCI: epf-test: Simplify transfers result print
  misc: pci_endpoint_test: Free IRQs before removing the device
  misc: pci_endpoint_test: Re-init completion for every test
  misc: pci_endpoint_test: Do not write status in IRQ handler
  misc: pci_endpoint_test: Simplify pci_endpoint_test_msi_irq()

 Documentation/PCI/endpoint/pci-ntb-howto.rst  |  11 +-
 Documentation/PCI/endpoint/pci-vntb-howto.rst |  13 +-
 drivers/misc/pci_endpoint_test.c              |  25 +-
 drivers/pci/endpoint/functions/pci-epf-test.c | 266 ++++++++----------
 drivers/pci/endpoint/pci-ep-cfs.c             |  54 ++--
 drivers/pci/endpoint/pci-epf-core.c           |  32 ---
 include/linux/pci-epf.h                       |   2 -
 7 files changed, 175 insertions(+), 228 deletions(-)


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux