1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 2690ac0d2SMika Westerbergmenuconfig USB4 3690ac0d2SMika Westerberg tristate "Unified support for USB4 and Thunderbolt" 40cb4e2beSArnd Bergmann depends on PCI 55fbc89d3SLukas Wunner select APPLE_PROPERTIES if EFI_STUB && X86 6f34323b6SAndreas Noever select CRC32 7f67cf491SMika Westerberg select CRYPTO 8f67cf491SMika Westerberg select CRYPTO_HASH 9e6b245ccSMika Westerberg select NVMEM 1016603153SAndreas Noever help 11b7c408a5SGeert Uytterhoeven USB4 and Thunderbolt driver. USB4 is the public specification 12b7c408a5SGeert Uytterhoeven based on the Thunderbolt 3 protocol. This driver is required if 13690ac0d2SMika Westerberg you want to hotplug Thunderbolt and USB4 compliant devices on 14690ac0d2SMika Westerberg Apple hardware or on PCs with Intel Falcon Ridge or newer. 1516603153SAndreas Noever 1616603153SAndreas Noever To compile this driver a module, choose M here. The module will be 1716603153SAndreas Noever called thunderbolt. 1854509f50SMika Westerberg 198eabfca5SMika Westerbergif USB4 208eabfca5SMika Westerberg 2154e41810SGil Fineconfig USB4_DEBUGFS_WRITE 2254e41810SGil Fine bool "Enable write by debugfs to configuration spaces (DANGEROUS)" 2354e41810SGil Fine help 2454e41810SGil Fine Enables writing to device configuration registers through 2554e41810SGil Fine debugfs interface. 2654e41810SGil Fine 2754e41810SGil Fine Only enable this if you know what you are doing! Never enable 2854e41810SGil Fine this for production systems or distro kernels. 2954e41810SGil Fine 30*d0f1e0c2SMika Westerbergconfig USB4_DEBUGFS_MARGINING 31*d0f1e0c2SMika Westerberg bool "Expose receiver lane margining operations under USB4 ports (DANGEROUS)" 32*d0f1e0c2SMika Westerberg depends on DEBUG_FS 33*d0f1e0c2SMika Westerberg depends on USB4_DEBUGFS_WRITE 34*d0f1e0c2SMika Westerberg help 35*d0f1e0c2SMika Westerberg Enables hardware and software based receiver lane margining support 36*d0f1e0c2SMika Westerberg under each USB4 port. Used for electrical quality and robustness 37*d0f1e0c2SMika Westerberg validation during manufacturing. Should not be enabled by distro 38*d0f1e0c2SMika Westerberg kernels. 39*d0f1e0c2SMika Westerberg 4054509f50SMika Westerbergconfig USB4_KUNIT_TEST 41635dcd16SDavid Gow bool "KUnit tests" if !KUNIT_ALL_TESTS 42635dcd16SDavid Gow depends on USB4 && KUNIT=y 43635dcd16SDavid Gow default KUNIT_ALL_TESTS 44635dcd16SDavid Gow 458eabfca5SMika Westerbergconfig USB4_DMA_TEST 46edc0f494SIsaac Hazan tristate "DMA traffic test driver" 47edc0f494SIsaac Hazan depends on DEBUG_FS 48edc0f494SIsaac Hazan help 49edc0f494SIsaac Hazan This allows sending and receiving DMA traffic through loopback 50edc0f494SIsaac Hazan connection. Loopback connection can be done by either special 51edc0f494SIsaac Hazan dongle that has TX/RX lines crossed, or by simply connecting a 52edc0f494SIsaac Hazan cable back to the host. Only enable this if you know what you 53edc0f494SIsaac Hazan are doing. Normal users and distro kernels should say N here. 54edc0f494SIsaac Hazan 55edc0f494SIsaac Hazan To compile this driver a module, choose M here. The module will be 56edc0f494SIsaac Hazan called thunderbolt_dma_test. 57edc0f494SIsaac Hazan 58edc0f494SIsaac Hazanendif # USB4 598eabfca5SMika Westerberg