2019-05-19 13:07:45 +01:00
# SPDX-License-Identifier: GPL-2.0-only
2019-12-17 15:33:41 +03:00
menuconfig USB4
tristate "Unified support for USB4 and Thunderbolt"
2014-06-20 15:52:09 +02:00
depends on PCI
2016-11-18 09:22:59 +01:00
select APPLE_PROPERTIES if EFI_STUB && X86
2014-06-21 12:15:44 +02:00
select CRC32
2017-06-06 15:25:16 +03:00
select CRYPTO
select CRYPTO_HASH
2017-06-06 15:25:17 +03:00
select NVMEM
2014-06-03 22:03:58 +02:00
help
2020-06-02 14:28:15 +02:00
USB4 and Thunderbolt driver. USB4 is the public specification
based on the Thunderbolt 3 protocol. This driver is required if
2019-12-17 15:33:41 +03:00
you want to hotplug Thunderbolt and USB4 compliant devices on
Apple hardware or on PCs with Intel Falcon Ridge or newer.
2014-06-03 22:03:58 +02:00
To compile this driver a module, choose M here. The module will be
called thunderbolt.
2020-04-29 16:38:39 +03:00
2020-08-24 13:55:52 +03:00
if USB4
2020-06-29 20:30:52 +03:00
config USB4_DEBUGFS_WRITE
bool "Enable write by debugfs to configuration spaces (DANGEROUS)"
help
Enables writing to device configuration registers through
debugfs interface.
Only enable this if you know what you are doing! Never enable
this for production systems or distro kernels.
2022-02-22 19:31:47 +02:00
config USB4_DEBUGFS_MARGINING
bool "Expose receiver lane margining operations under USB4 ports (DANGEROUS)"
depends on DEBUG_FS
depends on USB4_DEBUGFS_WRITE
help
Enables hardware and software based receiver lane margining support
under each USB4 port. Used for electrical quality and robustness
validation during manufacturing. Should not be enabled by distro
kernels.
2020-04-29 16:38:39 +03:00
config USB4_KUNIT_TEST
2022-07-09 11:19:59 +08:00
bool "KUnit tests" if !KUNIT_ALL_TESTS
2022-08-10 19:40:56 -04:00
depends on USB4 && KUNIT=y
2022-07-09 11:19:59 +08:00
default KUNIT_ALL_TESTS
2020-08-24 13:55:52 +03:00
2020-09-24 11:44:02 +03:00
config USB4_DMA_TEST
tristate "DMA traffic test driver"
depends on DEBUG_FS
help
This allows sending and receiving DMA traffic through loopback
connection. Loopback connection can be done by either special
dongle that has TX/RX lines crossed, or by simply connecting a
cable back to the host. Only enable this if you know what you
are doing. Normal users and distro kernels should say N here.
To compile this driver a module, choose M here. The module will be
called thunderbolt_dma_test.
2020-08-24 13:55:52 +03:00
endif # USB4