123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370 |
- 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 simultaneously 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 simultaneously 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/connector
- Date: April 2022
- Contact: Heikki Krogerus <[email protected]>
- Description:
- Symlink to the USB Type-C connector. This link is only
- created when USB Type-C Connector Class is enabled,
- and only if the system firmware is capable of
- describing the connection between a port and its
- connector.
- 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.
|