Skip to content

PCI endpoint fixes and improvements

Damien Le Moal linux-pci 1 version Applied

Status from this message: Applied to controller/endpoint, thanks!

Get series with b4
b4 am [email protected]

Versions newest first

  1. v5 Latest17 patches 1 replyApplied

Changes in v5 from the cover letter

- 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

Patches in v5 Applied

#Subject and filesSizeRepliesApplied
1/17PCI: endpoint: Automatically create a function specific attributes groupDocumentation/PCI/endpoint/pci-ntb-howto.rst Documentation/PCI/endpoint/pci-vntb-howto.rst drivers/pci/endpoint/pci-ep-cfs.c+29 -370 replies
2/17PCI: endpoint: Move pci_epf_type_add_cfs() codedrivers/pci/endpoint/pci-ep-cfs.c drivers/pci/endpoint/pci-epf-core.c include/linux/pci-epf.h+20 -340 replies
3/17PCI: epf-test: Fix DMA transfer completion initializationdrivers/pci/endpoint/functions/pci-epf-test.c+1 -10 replies
4/17PCI: epf-test: Fix DMA transfer completion detectiondrivers/pci/endpoint/functions/pci-epf-test.c+27 -110 replies
5/17PCI: epf-test: Use dmaengine_submit() to initiate DMA transferdrivers/pci/endpoint/functions/pci-epf-test.c+1 -10 replies
6/17PCI: epf-test: Simplify read/write/copy test functionsdrivers/pci/endpoint/functions/pci-epf-test.c+9 -120 replies
7/17PCI: epf-test: Simplify pci_epf_test_raise_irq()drivers/pci/endpoint/functions/pci-epf-test.c+8 -130 replies
8/17PCI: epf-test: Simplify IRQ test commands executiondrivers/pci/endpoint/functions/pci-epf-test.c+17 -260 replies
9/17PCI: epf-test: Improve handling of command and status registersdrivers/pci/endpoint/functions/pci-epf-test.c+9 -40 replies
10/17PCI: epf-test: Cleanup pci_epf_test_cmd_handler()drivers/pci/endpoint/functions/pci-epf-test.c+14 -160 replies
11/17PCI: epf-test: Cleanup request result handlingdrivers/pci/endpoint/functions/pci-epf-test.c+21 -250 replies
12/17PCI: epf-test: Simplify DMA support checksdrivers/pci/endpoint/functions/pci-epf-test.c+15 -300 replies
13/17PCI: epf-test: Simplify transfers result printdrivers/pci/endpoint/functions/pci-epf-test.c+14 -250 replies
14/17misc: pci_endpoint_test: Free IRQs before removing the devicedrivers/misc/pci_endpoint_test.c+3 -30 replies
15/17misc: pci_endpoint_test: Re-init completion for every testdrivers/misc/pci_endpoint_test.c+4 -00 replies
16/17misc: pci_endpoint_test: Do not write status in IRQ handlerdrivers/misc/pci_endpoint_test.c+0 -30 replies
17/17misc: pci_endpoint_test: Simplify pci_endpoint_test_msi_irq()drivers/misc/pci_endpoint_test.c+4 -80 replies

Reviews trailers per patch

All 17 patches have a Reviewed-by or Acked-by.

PatchManivannan Sadhasivam
1/17R-b
2/17R-b
3/17R-b
4/17R-b
5/17R-b
6/17R-b
7/17R-b
8/17R-b
9/17R-b
10/17R-b
11/17R-b
12/17R-b
13/17R-b
14/17R-b
15/17R-b
16/17R-b
17/17R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v5 thread

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

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 attributes.

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 <[email protected]> patches [1].

[1] https://lore.kernel.org/linux-pci/[email protected]/

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
group
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(-)
Signature · 1 line
2.39.2