1What: /sys/bus/i3c/devices/i3c-<bus-id> 2KernelVersion: 5.0 3Contact: linux-i3c@vger.kernel.org 4Description: 5 An I3C bus. This directory will contain one sub-directory per 6 I3C device present on the bus. 7 8What: /sys/bus/i3c/devices/i3c-<bus-id>/current_master 9KernelVersion: 5.0 10Contact: linux-i3c@vger.kernel.org 11Description: 12 Expose the master that owns the bus (<bus-id>-<master-pid>) at 13 the time this file is read. Note that bus ownership can change 14 overtime, so there's no guarantee that when the read() call 15 returns, the value returned is still valid. 16 17What: /sys/bus/i3c/devices/i3c-<bus-id>/mode 18KernelVersion: 5.0 19Contact: linux-i3c@vger.kernel.org 20Description: 21 I3C bus mode. Can be "pure", "mixed-fast" or "mixed-slow". See 22 the I3C specification for a detailed description of what each 23 of these modes implies. 24 25What: /sys/bus/i3c/devices/i3c-<bus-id>/i3c_scl_frequency 26KernelVersion: 5.0 27Contact: linux-i3c@vger.kernel.org 28Description: 29 The frequency (expressed in Hz) of the SCL signal when 30 operating in I3C SDR mode. 31 32What: /sys/bus/i3c/devices/i3c-<bus-id>/i2c_scl_frequency 33KernelVersion: 5.0 34Contact: linux-i3c@vger.kernel.org 35Description: 36 The frequency (expressed in Hz) of the SCL signal when 37 operating in I2C mode. 38 39What: /sys/bus/i3c/devices/i3c-<bus-id>/dynamic_address 40KernelVersion: 5.0 41Contact: linux-i3c@vger.kernel.org 42Description: 43 Dynamic address assigned to the master controller. This 44 address may change if the bus is re-initialized. 45 46What: /sys/bus/i3c/devices/i3c-<bus-id>/bcr 47KernelVersion: 5.0 48Contact: linux-i3c@vger.kernel.org 49Description: 50 BCR stands for Bus Characteristics Register and express the 51 device capabilities in term of speed, maximum read/write 52 length, etc. See the I3C specification for more details. 53 This entry describes the BCR of the master controller driving 54 the bus. 55 56What: /sys/bus/i3c/devices/i3c-<bus-id>/dcr 57KernelVersion: 5.0 58Contact: linux-i3c@vger.kernel.org 59Description: 60 DCR stands for Device Characteristics Register and express the 61 device capabilities in term of exposed features. See the I3C 62 specification for more details. 63 This entry describes the DCR of the master controller driving 64 the bus. 65 66What: /sys/bus/i3c/devices/i3c-<bus-id>/pid 67KernelVersion: 5.0 68Contact: linux-i3c@vger.kernel.org 69Description: 70 PID stands for Provisioned ID and is used to uniquely identify 71 a device on a bus. This PID contains information about the 72 vendor, the part and an instance ID so that several devices of 73 the same type can be connected on the same bus. 74 See the I3C specification for more details. 75 This entry describes the PID of the master controller driving 76 the bus. 77 78What: /sys/bus/i3c/devices/i3c-<bus-id>/hdrcap 79KernelVersion: 5.0 80Contact: linux-i3c@vger.kernel.org 81Description: 82 Expose the HDR (High Data Rate) capabilities of a device. 83 Returns a list of supported HDR mode, each element is separated 84 by space. Modes can be "hdr-ddr", "hdr-tsp" and "hdr-tsl". 85 See the I3C specification for more details about these HDR 86 modes. 87 88 This entry describes the HDRCAP of the master controller 89 driving the bus. 90 91What: /sys/bus/i3c/devices/i3c-<bus-id>/hotjoin 92KernelVersion: 6.8 93Contact: linux-i3c@vger.kernel.org 94Description: 95 I3C’s Hot-Join mechanism allows an I3C Device to inform the 96 Active Controller that a newly-joined Target is present on the 97 I3C Bus and is ready to receive a Dynamic Address, in order to 98 become fully functional on the Bus. Hot-Join is used when the 99 Target is mounted on the same I3C bus and remains depowered 100 until needed or until the Target is physically inserted into the 101 I3C bus 102 103 This entry allows to enable or disable Hot-join of the Current 104 Controller driving the bus. 105 106What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid> 107KernelVersion: 5.0 108Contact: linux-i3c@vger.kernel.org 109Description: 110 An I3C device present on I3C bus identified by <bus-id>. Note 111 that all devices are represented including the master driving 112 the bus. 113 114What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dynamic_address 115KernelVersion: 5.0 116Contact: linux-i3c@vger.kernel.org 117Description: 118 Dynamic address assigned to device <bus-id>-<device-pid>. This 119 address may change if the bus is re-initialized. 120 121What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/bcr 122KernelVersion: 5.0 123Contact: linux-i3c@vger.kernel.org 124Description: 125 BCR stands for Bus Characteristics Register and express the 126 device capabilities in term of speed, maximum read/write 127 length, etc. See the I3C specification for more details. 128 129What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dcr 130KernelVersion: 5.0 131Contact: linux-i3c@vger.kernel.org 132Description: 133 DCR stands for Device Characteristics Register and express the 134 device capabilities in term of exposed features. See the I3C 135 specification for more details. 136 137What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/pid 138KernelVersion: 5.0 139Contact: linux-i3c@vger.kernel.org 140Description: 141 PID stands for Provisioned ID and is used to uniquely identify 142 a device on a bus. This PID contains information about the 143 vendor, the part and an instance ID so that several devices of 144 the same type can be connected on the same bus. 145 See the I3C specification for more details. 146 147What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/hdrcap 148KernelVersion: 5.0 149Contact: linux-i3c@vger.kernel.org 150Description: 151 Expose the HDR (High Data Rate) capabilities of a device. 152 Returns a list of supported HDR mode, each element is separated 153 by space. Modes can be "hdr-ddr", "hdr-tsp" and "hdr-tsl". 154 155 See the I3C specification for more details about these HDR 156 modes. 157 158What: /sys/bus/i3c/devices/<bus-id>-<device-pid> 159KernelVersion: 5.0 160Contact: linux-i3c@vger.kernel.org 161Description: 162 These directories are just symbolic links to 163 /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>. 164