| 1 | # SPDX-License-Identifier: GPL-2.0-only |
| 2 | menuconfig USB4 |
| 3 | tristate "Unified support for USB4 and Thunderbolt" |
| 4 | depends on PCI |
| 5 | select APPLE_PROPERTIES if EFI_STUB && X86 |
| 6 | select CRC32 |
| 7 | select CRYPTO |
| 8 | select CRYPTO_HASH |
| 9 | select NVMEM |
| 10 | help |
| 11 | USB4 and Thunderbolt driver. USB4 is the public specification |
| 12 | based on the Thunderbolt 3 protocol. This driver is required if |
| 13 | you want to hotplug Thunderbolt and USB4 compliant devices on |
| 14 | Apple hardware or on PCs with Intel Falcon Ridge or newer. |
| 15 | |
| 16 | To compile this driver a module, choose M here. The module will be |
| 17 | called thunderbolt. |
| 18 | |
| 19 | if USB4 |
| 20 | |
| 21 | config USB4_DEBUGFS_WRITE |
| 22 | bool "Enable write by debugfs to configuration spaces (DANGEROUS)" |
| 23 | help |
| 24 | Enables writing to device configuration registers through |
| 25 | debugfs interface. |
| 26 | |
| 27 | Only enable this if you know what you are doing! Never enable |
| 28 | this for production systems or distro kernels. |
| 29 | |
| 30 | config USB4_KUNIT_TEST |
| 31 | bool "KUnit tests" |
| 32 | depends on KUNIT=y |
| 33 | |
| 34 | config USB4_DMA_TEST |
| 35 | tristate "DMA traffic test driver" |
| 36 | depends on DEBUG_FS |
| 37 | help |
| 38 | This allows sending and receiving DMA traffic through loopback |
| 39 | connection. Loopback connection can be done by either special |
| 40 | dongle that has TX/RX lines crossed, or by simply connecting a |
| 41 | cable back to the host. Only enable this if you know what you |
| 42 | are doing. Normal users and distro kernels should say N here. |
| 43 | |
| 44 | To compile this driver a module, choose M here. The module will be |
| 45 | called thunderbolt_dma_test. |
| 46 | |
| 47 | endif # USB4 |