mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
360 lines
14 KiB
360 lines
14 KiB
What: /sys/bus/thunderbolt/devices/.../domainX/boot_acl |
|
Date: Jun 2018 |
|
KernelVersion: 4.17 |
|
Contact: [email protected] |
|
Description: Holds a comma separated list of device unique_ids that |
|
are allowed to be connected automatically during system |
|
startup (e.g boot devices). The list always contains |
|
maximum supported number of unique_ids where unused |
|
entries are empty. This allows the userspace software |
|
to determine how many entries the controller supports. |
|
If there are multiple controllers, each controller has |
|
its own ACL list and size may be different between the |
|
controllers. |
|
|
|
System BIOS may have an option "Preboot ACL" or similar |
|
that needs to be selected before this list is taken into |
|
consideration. |
|
|
|
Software always updates a full list in each write. |
|
|
|
If a device is authorized automatically during boot its |
|
boot attribute is set to 1. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../domainX/deauthorization |
|
Date: May 2021 |
|
KernelVersion: 5.12 |
|
Contact: Mika Westerberg <[email protected]> |
|
Description: This attribute tells whether the system supports |
|
de-authorization of devices. Value of 1 means user can |
|
de-authorize PCIe tunnel by writing 0 to authorized |
|
attribute under each device. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../domainX/iommu_dma_protection |
|
Date: Mar 2019 |
|
KernelVersion: 4.21 |
|
Contact: [email protected] |
|
Description: This attribute tells whether the system uses IOMMU |
|
for DMA protection. Value of 1 means IOMMU is used 0 means |
|
it is not (DMA protection is solely based on Thunderbolt |
|
security levels). |
|
|
|
What: /sys/bus/thunderbolt/devices/.../domainX/security |
|
Date: Sep 2017 |
|
KernelVersion: 4.13 |
|
Contact: [email protected] |
|
Description: This attribute holds current Thunderbolt security level |
|
set by the system BIOS. Possible values are: |
|
|
|
======= ================================================== |
|
none All devices are automatically authorized |
|
user Devices are only authorized based on writing |
|
appropriate value to the authorized attribute |
|
secure Require devices that support secure connect at |
|
minimum. User needs to authorize each device. |
|
dponly Automatically tunnel Display port (and USB). No |
|
PCIe tunnels are created. |
|
usbonly Automatically tunnel USB controller of the |
|
connected Thunderbolt dock (and Display Port). All |
|
PCIe links downstream of the dock are removed. |
|
nopcie USB4 system where PCIe tunneling is disabled from |
|
the BIOS. |
|
======= ================================================== |
|
|
|
What: /sys/bus/thunderbolt/devices/.../authorized |
|
Date: Sep 2017 |
|
KernelVersion: 4.13 |
|
Contact: [email protected] |
|
Description: This attribute is used to authorize Thunderbolt devices |
|
after they have been connected. If the device is not |
|
authorized, no PCIe devices are available to the system. |
|
|
|
Contents of this attribute will be 0 when the device is not |
|
yet authorized. |
|
|
|
Possible values are supported: |
|
|
|
== =================================================== |
|
0 The device will be de-authorized (only supported if |
|
deauthorization attribute under domain contains 1) |
|
1 The device will be authorized and connected |
|
== =================================================== |
|
|
|
When key attribute contains 32 byte hex string the possible |
|
values are: |
|
|
|
== ======================================================== |
|
0 The device will be de-authorized (only supported if |
|
deauthorization attribute under domain contains 1) |
|
1 The 32 byte hex string is added to the device NVM and |
|
the device is authorized. |
|
2 Send a challenge based on the 32 byte hex string. If the |
|
challenge response from device is valid, the device is |
|
authorized. In case of failure errno will be ENOKEY if |
|
the device did not contain a key at all, and |
|
EKEYREJECTED if the challenge response did not match. |
|
== ======================================================== |
|
|
|
What: /sys/bus/thunderbolt/devices/.../boot |
|
Date: Jun 2018 |
|
KernelVersion: 4.17 |
|
Contact: [email protected] |
|
Description: This attribute contains 1 if Thunderbolt device was already |
|
authorized on boot and 0 otherwise. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../generation |
|
Date: Jan 2020 |
|
KernelVersion: 5.5 |
|
Contact: Christian Kellner <[email protected]> |
|
Description: This attribute contains the generation of the Thunderbolt |
|
controller associated with the device. It will contain 4 |
|
for USB4. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../key |
|
Date: Sep 2017 |
|
KernelVersion: 4.13 |
|
Contact: [email protected] |
|
Description: When a devices supports Thunderbolt secure connect it will |
|
have this attribute. Writing 32 byte hex string changes |
|
authorization to use the secure connection method instead. |
|
Writing an empty string clears the key and regular connection |
|
method can be used again. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../device |
|
Date: Sep 2017 |
|
KernelVersion: 4.13 |
|
Contact: [email protected] |
|
Description: This attribute contains id of this device extracted from |
|
the device DROM. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../device_name |
|
Date: Sep 2017 |
|
KernelVersion: 4.13 |
|
Contact: [email protected] |
|
Description: This attribute contains name of this device extracted from |
|
the device DROM. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../maxhopid |
|
Date: Jul 2021 |
|
KernelVersion: 5.13 |
|
Contact: Mika Westerberg <[email protected]> |
|
Description: Only set for XDomains. The maximum HopID the other host |
|
supports as its input HopID. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../rx_speed |
|
Date: Jan 2020 |
|
KernelVersion: 5.5 |
|
Contact: Mika Westerberg <[email protected]> |
|
Description: This attribute reports the device RX speed per lane. |
|
All RX lanes run at the same speed. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../rx_lanes |
|
Date: Jan 2020 |
|
KernelVersion: 5.5 |
|
Contact: Mika Westerberg <[email protected]> |
|
Description: This attribute reports number of RX lanes the device is |
|
using simultaneusly through its upstream port. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../tx_speed |
|
Date: Jan 2020 |
|
KernelVersion: 5.5 |
|
Contact: Mika Westerberg <[email protected]> |
|
Description: This attribute reports the TX speed per lane. |
|
All TX lanes run at the same speed. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../tx_lanes |
|
Date: Jan 2020 |
|
KernelVersion: 5.5 |
|
Contact: Mika Westerberg <[email protected]> |
|
Description: This attribute reports number of TX lanes the device is |
|
using simultaneusly through its upstream port. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../vendor |
|
Date: Sep 2017 |
|
KernelVersion: 4.13 |
|
Contact: [email protected] |
|
Description: This attribute contains vendor id of this device extracted |
|
from the device DROM. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../vendor_name |
|
Date: Sep 2017 |
|
KernelVersion: 4.13 |
|
Contact: [email protected] |
|
Description: This attribute contains vendor name of this device extracted |
|
from the device DROM. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../unique_id |
|
Date: Sep 2017 |
|
KernelVersion: 4.13 |
|
Contact: [email protected] |
|
Description: This attribute contains unique_id string of this device. |
|
This is either read from hardware registers (UUID on |
|
newer hardware) or based on UID from the device DROM. |
|
Can be used to uniquely identify particular device. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../nvm_version |
|
Date: Sep 2017 |
|
KernelVersion: 4.13 |
|
Contact: [email protected] |
|
Description: If the device has upgradeable firmware the version |
|
number is available here. Format: %x.%x, major.minor. |
|
If the device is in safe mode reading the file returns |
|
-ENODATA instead as the NVM version is not available. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../nvm_authenticate |
|
Date: Sep 2017 |
|
KernelVersion: 4.13 |
|
Contact: [email protected] |
|
Description: When new NVM image is written to the non-active NVM |
|
area (through non_activeX NVMem device), the |
|
authentication procedure is started by writing to |
|
this file. |
|
If everything goes well, the device is |
|
restarted with the new NVM firmware. If the image |
|
verification fails an error code is returned instead. |
|
|
|
This file will accept writing values "1", "2" or "3". |
|
|
|
- Writing "1" will flush the image to the storage |
|
area and authenticate the image in one action. |
|
- Writing "2" will run some basic validation on the image |
|
and flush it to the storage area. |
|
- Writing "3" will authenticate the image that is |
|
currently written in the storage area. This is only |
|
supported with USB4 devices and retimers. |
|
|
|
When read holds status of the last authentication |
|
operation if an error occurred during the process. This |
|
is directly the status value from the DMA configuration |
|
based mailbox before the device is power cycled. Writing |
|
0 here clears the status. |
|
|
|
What: /sys/bus/thunderbolt/devices/.../nvm_authenticate_on_disconnect |
|
Date: Oct 2020 |
|
KernelVersion: v5.9 |
|
Contact: Mario Limonciello <[email protected]> |
|
Description: For supported devices, automatically authenticate the new Thunderbolt |
|
image when the device is disconnected from the host system. |
|
|
|
This file will accept writing values "1" or "2" |
|
|
|
- Writing "1" will flush the image to the storage |
|
area and prepare the device for authentication on disconnect. |
|
- Writing "2" will run some basic validation on the image |
|
and flush it to the storage area. |
|
|
|
What: /sys/bus/thunderbolt/devices/<xdomain>.<service>/key |
|
Date: Jan 2018 |
|
KernelVersion: 4.15 |
|
Contact: [email protected] |
|
Description: This contains name of the property directory the XDomain |
|
service exposes. This entry describes the protocol in |
|
question. Following directories are already reserved by |
|
the Apple XDomain specification: |
|
|
|
======== =============================================== |
|
network IP/ethernet over Thunderbolt |
|
targetdm Target disk mode protocol over Thunderbolt |
|
extdisp External display mode protocol over Thunderbolt |
|
======== =============================================== |
|
|
|
What: /sys/bus/thunderbolt/devices/<xdomain>.<service>/modalias |
|
Date: Jan 2018 |
|
KernelVersion: 4.15 |
|
Contact: [email protected] |
|
Description: Stores the same MODALIAS value emitted by uevent for |
|
the XDomain service. Format: tbtsvc:kSpNvNrN |
|
|
|
What: /sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcid |
|
Date: Jan 2018 |
|
KernelVersion: 4.15 |
|
Contact: [email protected] |
|
Description: This contains XDomain protocol identifier the XDomain |
|
service supports. |
|
|
|
What: /sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcvers |
|
Date: Jan 2018 |
|
KernelVersion: 4.15 |
|
Contact: [email protected] |
|
Description: This contains XDomain protocol version the XDomain |
|
service supports. |
|
|
|
What: /sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcrevs |
|
Date: Jan 2018 |
|
KernelVersion: 4.15 |
|
Contact: [email protected] |
|
Description: This contains XDomain software version the XDomain |
|
service supports. |
|
|
|
What: /sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcstns |
|
Date: Jan 2018 |
|
KernelVersion: 4.15 |
|
Contact: [email protected] |
|
Description: This contains XDomain service specific settings as |
|
bitmask. Format: %x |
|
|
|
What: /sys/bus/thunderbolt/devices/usb4_portX/link |
|
Date: Sep 2021 |
|
KernelVersion: v5.14 |
|
Contact: Mika Westerberg <[email protected]> |
|
Description: Returns the current link mode. Possible values are |
|
"usb4", "tbt" and "none". |
|
|
|
What: /sys/bus/thunderbolt/devices/usb4_portX/offline |
|
Date: Sep 2021 |
|
KernelVersion: v5.14 |
|
Contact: Rajmohan Mani <[email protected]> |
|
Description: Writing 1 to this attribute puts the USB4 port into |
|
offline mode. Only allowed when there is nothing |
|
connected to the port (link attribute returns "none"). |
|
Once the port is in offline mode it does not receive any |
|
hotplug events. This is used to update NVM firmware of |
|
on-board retimers. Writing 0 puts the port back to |
|
online mode. |
|
|
|
This attribute is only visible if the platform supports |
|
powering on retimers when there is no cable connected. |
|
|
|
What: /sys/bus/thunderbolt/devices/usb4_portX/rescan |
|
Date: Sep 2021 |
|
KernelVersion: v5.14 |
|
Contact: Rajmohan Mani <[email protected]> |
|
Description: When the USB4 port is in offline mode writing 1 to this |
|
attribute forces rescan of the sideband for on-board |
|
retimers. Each retimer appear under the USB4 port as if |
|
the USB4 link was up. These retimers act in the same way |
|
as if the cable was connected so upgrading their NVM |
|
firmware can be done the usual way. |
|
|
|
What: /sys/bus/thunderbolt/devices/<device>:<port>.<index>/device |
|
Date: Oct 2020 |
|
KernelVersion: v5.9 |
|
Contact: Mika Westerberg <[email protected]> |
|
Description: Retimer device identifier read from the hardware. |
|
|
|
What: /sys/bus/thunderbolt/devices/<device>:<port>.<index>/nvm_authenticate |
|
Date: Oct 2020 |
|
KernelVersion: v5.9 |
|
Contact: Mika Westerberg <[email protected]> |
|
Description: When new NVM image is written to the non-active NVM |
|
area (through non_activeX NVMem device), the |
|
authentication procedure is started by writing 1 to |
|
this file. If everything goes well, the device is |
|
restarted with the new NVM firmware. If the image |
|
verification fails an error code is returned instead. |
|
|
|
When read holds status of the last authentication |
|
operation if an error occurred during the process. |
|
Format: %x. |
|
|
|
What: /sys/bus/thunderbolt/devices/<device>:<port>.<index>/nvm_version |
|
Date: Oct 2020 |
|
KernelVersion: v5.9 |
|
Contact: Mika Westerberg <[email protected]> |
|
Description: Holds retimer NVM version number. Format: %x.%x, major.minor. |
|
|
|
What: /sys/bus/thunderbolt/devices/<device>:<port>.<index>/vendor |
|
Date: Oct 2020 |
|
KernelVersion: v5.9 |
|
Contact: Mika Westerberg <[email protected]> |
|
Description: Retimer vendor identifier read from the hardware.
|
|
|