The multi-port NTB API was introduced in kernel 4.13 as well as the first driver for the true multi-port devices of IDT PCIe-switches series. But the test drivers still were left almost unchanged. Yes, they didn't fail being used with new NTB API, but they only worked with two-ports NTB devices. This patchset is intended to fix the issue, by amending the NTB test drivers and script so they would be fully compatible with multi-port NTB API.
Additionally I found a few NTB subsystem issues while developing the submitted patches. So they are also fixed in this patchset. Serge Semin (15): NTB: Rename NTB messaging API methods NTB: Set dma mask and dma coherent mask to NTB devices NTB: Fix UB/bug in ntb_mw_get_align() NTB: ntb_pp: Add full multi-port NTB API support NTB: ntb_tool: Add full multi-port NTB API support NTB: ntb_perf: Add full multi-port NTB API support NTB: ntb_test: Safely use paths with whitespace NTB: ntb_test: Add ntb_tool port tests NTB: ntb_test: Update ntb_tool link tests NTB: ntb_test: Update ntb_tool DB tests NTB: ntb_test: Update ntb_tool Scratchpad tests NTB: ntb_test: Add ntb_tool Message tests NTB: ntb_test: Update ntb_tool MW tests NTB: ntb_test: Update ntb_perf tests NTB: ntb_hw_idt: Set NTB_TOPO_SWITCH topology drivers/ntb/hw/amd/ntb_hw_amd.c | 4 + drivers/ntb/hw/idt/ntb_hw_idt.c | 37 +- drivers/ntb/hw/intel/ntb_hw_intel.c | 4 + drivers/ntb/ntb.c | 1 - drivers/ntb/test/ntb_perf.c | 1826 +++++++++++++++++++++---------- drivers/ntb/test/ntb_pingpong.c | 450 +++++--- drivers/ntb/test/ntb_tool.c | 1805 ++++++++++++++++++++---------- include/linux/ntb.h | 36 +- tools/testing/selftests/ntb/ntb_test.sh | 307 ++++-- 9 files changed, 3013 insertions(+), 1457 deletions(-) -- 2.12.0