19aaa3b8bSMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../domainX/boot_acl 29aaa3b8bSMika WesterbergDate: Jun 2018 39aaa3b8bSMika WesterbergKernelVersion: 4.17 49aaa3b8bSMika WesterbergContact: thunderbolt-software@lists.01.org 59aaa3b8bSMika WesterbergDescription: Holds a comma separated list of device unique_ids that 69aaa3b8bSMika Westerberg are allowed to be connected automatically during system 79aaa3b8bSMika Westerberg startup (e.g boot devices). The list always contains 89aaa3b8bSMika Westerberg maximum supported number of unique_ids where unused 99aaa3b8bSMika Westerberg entries are empty. This allows the userspace software 109aaa3b8bSMika Westerberg to determine how many entries the controller supports. 119aaa3b8bSMika Westerberg If there are multiple controllers, each controller has 129aaa3b8bSMika Westerberg its own ACL list and size may be different between the 139aaa3b8bSMika Westerberg controllers. 149aaa3b8bSMika Westerberg 159aaa3b8bSMika Westerberg System BIOS may have an option "Preboot ACL" or similar 169aaa3b8bSMika Westerberg that needs to be selected before this list is taken into 179aaa3b8bSMika Westerberg consideration. 189aaa3b8bSMika Westerberg 199aaa3b8bSMika Westerberg Software always updates a full list in each write. 209aaa3b8bSMika Westerberg 219aaa3b8bSMika Westerberg If a device is authorized automatically during boot its 229aaa3b8bSMika Westerberg boot attribute is set to 1. 239aaa3b8bSMika Westerberg 24dcc3c9e3SMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../domainX/iommu_dma_protection 25dcc3c9e3SMika WesterbergDate: Mar 2019 26dcc3c9e3SMika WesterbergKernelVersion: 4.21 27dcc3c9e3SMika WesterbergContact: thunderbolt-software@lists.01.org 28dcc3c9e3SMika WesterbergDescription: This attribute tells whether the system uses IOMMU 29dcc3c9e3SMika Westerberg for DMA protection. Value of 1 means IOMMU is used 0 means 30dcc3c9e3SMika Westerberg it is not (DMA protection is solely based on Thunderbolt 31dcc3c9e3SMika Westerberg security levels). 32dcc3c9e3SMika Westerberg 33f67cf491SMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../domainX/security 34f67cf491SMika WesterbergDate: Sep 2017 35f67cf491SMika WesterbergKernelVersion: 4.13 36f67cf491SMika WesterbergContact: thunderbolt-software@lists.01.org 37f67cf491SMika WesterbergDescription: This attribute holds current Thunderbolt security level 38f67cf491SMika Westerberg set by the system BIOS. Possible values are: 39f67cf491SMika Westerberg 40f67cf491SMika Westerberg none: All devices are automatically authorized 41f67cf491SMika Westerberg user: Devices are only authorized based on writing 42f67cf491SMika Westerberg appropriate value to the authorized attribute 43f67cf491SMika Westerberg secure: Require devices that support secure connect at 44f67cf491SMika Westerberg minimum. User needs to authorize each device. 45f67cf491SMika Westerberg dponly: Automatically tunnel Display port (and USB). No 46f67cf491SMika Westerberg PCIe tunnels are created. 476fc14e1aSMika Westerberg usbonly: Automatically tunnel USB controller of the 486fc14e1aSMika Westerberg connected Thunderbolt dock (and Display Port). All 496fc14e1aSMika Westerberg PCIe links downstream of the dock are removed. 50f67cf491SMika Westerberg 51f67cf491SMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../authorized 52f67cf491SMika WesterbergDate: Sep 2017 53f67cf491SMika WesterbergKernelVersion: 4.13 54f67cf491SMika WesterbergContact: thunderbolt-software@lists.01.org 55f67cf491SMika WesterbergDescription: This attribute is used to authorize Thunderbolt devices 56f67cf491SMika Westerberg after they have been connected. If the device is not 57f67cf491SMika Westerberg authorized, no devices such as PCIe and Display port are 58f67cf491SMika Westerberg available to the system. 59f67cf491SMika Westerberg 60f67cf491SMika Westerberg Contents of this attribute will be 0 when the device is not 61f67cf491SMika Westerberg yet authorized. 62f67cf491SMika Westerberg 63f67cf491SMika Westerberg Possible values are supported: 64f67cf491SMika Westerberg 1: The device will be authorized and connected 65f67cf491SMika Westerberg 66f67cf491SMika Westerberg When key attribute contains 32 byte hex string the possible 67f67cf491SMika Westerberg values are: 68f67cf491SMika Westerberg 1: The 32 byte hex string is added to the device NVM and 69f67cf491SMika Westerberg the device is authorized. 70f67cf491SMika Westerberg 2: Send a challenge based on the 32 byte hex string. If the 71f67cf491SMika Westerberg challenge response from device is valid, the device is 72f67cf491SMika Westerberg authorized. In case of failure errno will be ENOKEY if 73f67cf491SMika Westerberg the device did not contain a key at all, and 74f67cf491SMika Westerberg EKEYREJECTED if the challenge response did not match. 75f67cf491SMika Westerberg 7614862ee3SYehezkel BernatWhat: /sys/bus/thunderbolt/devices/.../boot 7714862ee3SYehezkel BernatDate: Jun 2018 7814862ee3SYehezkel BernatKernelVersion: 4.17 7914862ee3SYehezkel BernatContact: thunderbolt-software@lists.01.org 8014862ee3SYehezkel BernatDescription: This attribute contains 1 if Thunderbolt device was already 8114862ee3SYehezkel Bernat authorized on boot and 0 otherwise. 8214862ee3SYehezkel Bernat 83b406357cSChristian KellnerWhat: /sys/bus/thunderbolt/devices/.../generation 84b406357cSChristian KellnerDate: Jan 2020 85b406357cSChristian KellnerKernelVersion: 5.5 86b406357cSChristian KellnerContact: Christian Kellner <christian@kellner.me> 87b406357cSChristian KellnerDescription: This attribute contains the generation of the Thunderbolt 88b406357cSChristian Kellner controller associated with the device. It will contain 4 89b406357cSChristian Kellner for USB4. 90b406357cSChristian Kellner 91f67cf491SMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../key 92f67cf491SMika WesterbergDate: Sep 2017 93f67cf491SMika WesterbergKernelVersion: 4.13 94f67cf491SMika WesterbergContact: thunderbolt-software@lists.01.org 95f67cf491SMika WesterbergDescription: When a devices supports Thunderbolt secure connect it will 96f67cf491SMika Westerberg have this attribute. Writing 32 byte hex string changes 97f67cf491SMika Westerberg authorization to use the secure connection method instead. 98e545f0d8SBernat, Yehezkel Writing an empty string clears the key and regular connection 99e545f0d8SBernat, Yehezkel method can be used again. 100f67cf491SMika Westerberg 101bfe778acSMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../device 102bfe778acSMika WesterbergDate: Sep 2017 103bfe778acSMika WesterbergKernelVersion: 4.13 104bfe778acSMika WesterbergContact: thunderbolt-software@lists.01.org 105bfe778acSMika WesterbergDescription: This attribute contains id of this device extracted from 106bfe778acSMika Westerberg the device DROM. 107bfe778acSMika Westerberg 10872ee3390SMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../device_name 10972ee3390SMika WesterbergDate: Sep 2017 11072ee3390SMika WesterbergKernelVersion: 4.13 11172ee3390SMika WesterbergContact: thunderbolt-software@lists.01.org 11272ee3390SMika WesterbergDescription: This attribute contains name of this device extracted from 11372ee3390SMika Westerberg the device DROM. 11472ee3390SMika Westerberg 11591c0c120SMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../rx_speed 11691c0c120SMika WesterbergDate: Jan 2020 11791c0c120SMika WesterbergKernelVersion: 5.5 11891c0c120SMika WesterbergContact: Mika Westerberg <mika.westerberg@linux.intel.com> 11991c0c120SMika WesterbergDescription: This attribute reports the device RX speed per lane. 12091c0c120SMika Westerberg All RX lanes run at the same speed. 12191c0c120SMika Westerberg 12291c0c120SMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../rx_lanes 12391c0c120SMika WesterbergDate: Jan 2020 12491c0c120SMika WesterbergKernelVersion: 5.5 12591c0c120SMika WesterbergContact: Mika Westerberg <mika.westerberg@linux.intel.com> 12691c0c120SMika WesterbergDescription: This attribute reports number of RX lanes the device is 12791c0c120SMika Westerberg using simultaneusly through its upstream port. 12891c0c120SMika Westerberg 12991c0c120SMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../tx_speed 13091c0c120SMika WesterbergDate: Jan 2020 13191c0c120SMika WesterbergKernelVersion: 5.5 13291c0c120SMika WesterbergContact: Mika Westerberg <mika.westerberg@linux.intel.com> 13391c0c120SMika WesterbergDescription: This attribute reports the TX speed per lane. 13491c0c120SMika Westerberg All TX lanes run at the same speed. 13591c0c120SMika Westerberg 13691c0c120SMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../tx_lanes 13791c0c120SMika WesterbergDate: Jan 2020 13891c0c120SMika WesterbergKernelVersion: 5.5 13991c0c120SMika WesterbergContact: Mika Westerberg <mika.westerberg@linux.intel.com> 14091c0c120SMika WesterbergDescription: This attribute reports number of TX lanes the device is 14191c0c120SMika Westerberg using simultaneusly through its upstream port. 14291c0c120SMika Westerberg 143bfe778acSMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../vendor 144bfe778acSMika WesterbergDate: Sep 2017 145bfe778acSMika WesterbergKernelVersion: 4.13 146bfe778acSMika WesterbergContact: thunderbolt-software@lists.01.org 147bfe778acSMika WesterbergDescription: This attribute contains vendor id of this device extracted 148bfe778acSMika Westerberg from the device DROM. 149bfe778acSMika Westerberg 15072ee3390SMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../vendor_name 15172ee3390SMika WesterbergDate: Sep 2017 15272ee3390SMika WesterbergKernelVersion: 4.13 15372ee3390SMika WesterbergContact: thunderbolt-software@lists.01.org 15472ee3390SMika WesterbergDescription: This attribute contains vendor name of this device extracted 15572ee3390SMika Westerberg from the device DROM. 15672ee3390SMika Westerberg 157bfe778acSMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../unique_id 158bfe778acSMika WesterbergDate: Sep 2017 159bfe778acSMika WesterbergKernelVersion: 4.13 160bfe778acSMika WesterbergContact: thunderbolt-software@lists.01.org 161bfe778acSMika WesterbergDescription: This attribute contains unique_id string of this device. 162bfe778acSMika Westerberg This is either read from hardware registers (UUID on 163bfe778acSMika Westerberg newer hardware) or based on UID from the device DROM. 164bfe778acSMika Westerberg Can be used to uniquely identify particular device. 165e6b245ccSMika Westerberg 166e6b245ccSMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../nvm_version 167e6b245ccSMika WesterbergDate: Sep 2017 168e6b245ccSMika WesterbergKernelVersion: 4.13 169e6b245ccSMika WesterbergContact: thunderbolt-software@lists.01.org 170e6b245ccSMika WesterbergDescription: If the device has upgradeable firmware the version 171e6b245ccSMika Westerberg number is available here. Format: %x.%x, major.minor. 172e6b245ccSMika Westerberg If the device is in safe mode reading the file returns 173e6b245ccSMika Westerberg -ENODATA instead as the NVM version is not available. 174e6b245ccSMika Westerberg 175e6b245ccSMika WesterbergWhat: /sys/bus/thunderbolt/devices/.../nvm_authenticate 176e6b245ccSMika WesterbergDate: Sep 2017 177e6b245ccSMika WesterbergKernelVersion: 4.13 178e6b245ccSMika WesterbergContact: thunderbolt-software@lists.01.org 179e6b245ccSMika WesterbergDescription: When new NVM image is written to the non-active NVM 180e6b245ccSMika Westerberg area (through non_activeX NVMem device), the 181e6b245ccSMika Westerberg authentication procedure is started by writing 1 to 182e6b245ccSMika Westerberg this file. If everything goes well, the device is 183e6b245ccSMika Westerberg restarted with the new NVM firmware. If the image 184e6b245ccSMika Westerberg verification fails an error code is returned instead. 185e6b245ccSMika Westerberg 186e6b245ccSMika Westerberg When read holds status of the last authentication 187e6b245ccSMika Westerberg operation if an error occurred during the process. This 188e6b245ccSMika Westerberg is directly the status value from the DMA configuration 189e6b245ccSMika Westerberg based mailbox before the device is power cycled. Writing 190e6b245ccSMika Westerberg 0 here clears the status. 191d1ff7024SMika Westerberg 192d1ff7024SMika WesterbergWhat: /sys/bus/thunderbolt/devices/<xdomain>.<service>/key 193d1ff7024SMika WesterbergDate: Jan 2018 194d1ff7024SMika WesterbergKernelVersion: 4.15 195d1ff7024SMika WesterbergContact: thunderbolt-software@lists.01.org 196d1ff7024SMika WesterbergDescription: This contains name of the property directory the XDomain 197d1ff7024SMika Westerberg service exposes. This entry describes the protocol in 198d1ff7024SMika Westerberg question. Following directories are already reserved by 199d1ff7024SMika Westerberg the Apple XDomain specification: 200d1ff7024SMika Westerberg 201d1ff7024SMika Westerberg network: IP/ethernet over Thunderbolt 202d1ff7024SMika Westerberg targetdm: Target disk mode protocol over Thunderbolt 203d1ff7024SMika Westerberg extdisp: External display mode protocol over Thunderbolt 204d1ff7024SMika Westerberg 205d1ff7024SMika WesterbergWhat: /sys/bus/thunderbolt/devices/<xdomain>.<service>/modalias 206d1ff7024SMika WesterbergDate: Jan 2018 207d1ff7024SMika WesterbergKernelVersion: 4.15 208d1ff7024SMika WesterbergContact: thunderbolt-software@lists.01.org 209d1ff7024SMika WesterbergDescription: Stores the same MODALIAS value emitted by uevent for 210d1ff7024SMika Westerberg the XDomain service. Format: tbtsvc:kSpNvNrN 211d1ff7024SMika Westerberg 212d1ff7024SMika WesterbergWhat: /sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcid 213d1ff7024SMika WesterbergDate: Jan 2018 214d1ff7024SMika WesterbergKernelVersion: 4.15 215d1ff7024SMika WesterbergContact: thunderbolt-software@lists.01.org 216d1ff7024SMika WesterbergDescription: This contains XDomain protocol identifier the XDomain 217d1ff7024SMika Westerberg service supports. 218d1ff7024SMika Westerberg 219d1ff7024SMika WesterbergWhat: /sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcvers 220d1ff7024SMika WesterbergDate: Jan 2018 221d1ff7024SMika WesterbergKernelVersion: 4.15 222d1ff7024SMika WesterbergContact: thunderbolt-software@lists.01.org 223d1ff7024SMika WesterbergDescription: This contains XDomain protocol version the XDomain 224d1ff7024SMika Westerberg service supports. 225d1ff7024SMika Westerberg 226d1ff7024SMika WesterbergWhat: /sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcrevs 227d1ff7024SMika WesterbergDate: Jan 2018 228d1ff7024SMika WesterbergKernelVersion: 4.15 229d1ff7024SMika WesterbergContact: thunderbolt-software@lists.01.org 230d1ff7024SMika WesterbergDescription: This contains XDomain software version the XDomain 231d1ff7024SMika Westerberg service supports. 232d1ff7024SMika Westerberg 233d1ff7024SMika WesterbergWhat: /sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcstns 234d1ff7024SMika WesterbergDate: Jan 2018 235d1ff7024SMika WesterbergKernelVersion: 4.15 236d1ff7024SMika WesterbergContact: thunderbolt-software@lists.01.org 237d1ff7024SMika WesterbergDescription: This contains XDomain service specific settings as 238d1ff7024SMika Westerberg bitmask. Format: %x 239