diff options
author | Isaac Hazan <isaac.hazan@intel.com> | 2020-09-24 10:44:02 +0200 |
---|---|---|
committer | Mika Westerberg <mika.westerberg@linux.intel.com> | 2020-11-11 08:20:16 +0100 |
commit | edc0f494ed966e39e5619be7cdaeb9873e1f4fe1 (patch) | |
tree | 8aefa4c7a20344eee002a2f119dea807c98b389c /drivers/thunderbolt/icm.c | |
parent | thunderbolt: Add support for end-to-end flow control (diff) | |
download | linux-edc0f494ed966e39e5619be7cdaeb9873e1f4fe1.tar.xz linux-edc0f494ed966e39e5619be7cdaeb9873e1f4fe1.zip |
thunderbolt: Add DMA traffic test driver
This driver allows sending DMA traffic over XDomain connection.
Specifically over a loopback connection using either a Thunderbolt/USB4
cable that is connected back to the host router port, or a special
loopback dongle that has RX and TX lines crossed. This can be useful at
manufacturing floor to check whether Thunderbolt/USB4 ports are
functional.
The driver exposes debugfs directory under the XDomain service that can
be used to configure the driver, start the test and check the results.
If a loopback dongle is used the steps to send and receive 1000 packets
can be done like:
# modprobe thunderbolt_dma_test
# echo 1000 > /sys/kernel/debug/thunderbolt/<service_id>/dma_test/packets_to_receive
# echo 1000 > /sys/kernel/debug/thunderbolt/<service_id>/dma_test/packets_to_send
# echo 1 > /sys/kernel/debug/thunderbolt/<service_id>/dma_test/test
# cat /sys/kernel/debug/thunderbolt/<service_id>/dma_test/status
When a cable is connected back to host then there are two Thunderbolt
services, one is configured for receiving (does not matter which one):
# modprobe thunderbolt_dma_test
# echo 1000 > /sys/kernel/debug/thunderbolt/<service_a>/dma_test/packets_to_receive
# echo 1 > /sys/kernel/debug/thunderbolt/<service_a>/dma_test/test
The other one for sending:
# echo 1000 > /sys/kernel/debug/thunderbolt/<service_b>/dma_test/packets_to_send
# echo 1 > /sys/kernel/debug/thunderbolt/<service_b>/dma_test/test
Results can be read from both services status attributes.
Signed-off-by: Isaac Hazan <isaac.hazan@intel.com>
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Acked-by: Yehezkel Bernat <YehezkelShB@gmail.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/thunderbolt/icm.c')
0 files changed, 0 insertions, 0 deletions