1 What: /sys/bus/i3c/devices/i3c-<bus-id>
3 Contact: linux-i3c@vger.kernel.org
5 An I3C bus. This directory will contain one sub-directory per
6 I3C device present on the bus.
8 What: /sys/bus/i3c/devices/i3c-<bus-id>/current_master
10 Contact: linux-i3c@vger.kernel.org
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.
17 What: /sys/bus/i3c/devices/i3c-<bus-id>/mode
19 Contact: linux-i3c@vger.kernel.org
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.
25 What: /sys/bus/i3c/devices/i3c-<bus-id>/i3c_scl_frequency
27 Contact: linux-i3c@vger.kernel.org
29 The frequency (expressed in Hz) of the SCL signal when
30 operating in I3C SDR mode.
32 What: /sys/bus/i3c/devices/i3c-<bus-id>/i2c_scl_frequency
34 Contact: linux-i3c@vger.kernel.org
36 The frequency (expressed in Hz) of the SCL signal when
37 operating in I2C mode.
39 What: /sys/bus/i3c/devices/i3c-<bus-id>/dynamic_address
41 Contact: linux-i3c@vger.kernel.org
43 Dynamic address assigned to the master controller. This
44 address may change if the bus is re-initialized.
46 What: /sys/bus/i3c/devices/i3c-<bus-id>/bcr
48 Contact: linux-i3c@vger.kernel.org
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
56 What: /sys/bus/i3c/devices/i3c-<bus-id>/dcr
58 Contact: linux-i3c@vger.kernel.org
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
66 What: /sys/bus/i3c/devices/i3c-<bus-id>/pid
68 Contact: linux-i3c@vger.kernel.org
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
78 What: /sys/bus/i3c/devices/i3c-<bus-id>/hdrcap
80 Contact: linux-i3c@vger.kernel.org
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
88 This entry describes the HDRCAP of the master controller
91 What: /sys/bus/i3c/devices/i3c-<bus-id>/hotjoin
93 Contact: linux-i3c@vger.kernel.org
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
103 This entry allows to enable or disable Hot-join of the Current
104 Controller driving the bus.
106 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>
108 Contact: linux-i3c@vger.kernel.org
110 An I3C device present on I3C bus identified by <bus-id>. Note
111 that all devices are represented including the master driving
114 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dynamic_address
116 Contact: linux-i3c@vger.kernel.org
118 Dynamic address assigned to device <bus-id>-<device-pid>. This
119 address may change if the bus is re-initialized.
121 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/bcr
123 Contact: linux-i3c@vger.kernel.org
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.
129 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dcr
131 Contact: linux-i3c@vger.kernel.org
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.
137 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/pid
139 Contact: linux-i3c@vger.kernel.org
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.
147 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/hdrcap
149 Contact: linux-i3c@vger.kernel.org
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".
155 See the I3C specification for more details about these HDR
158 What: /sys/bus/i3c/devices/<bus-id>-<device-pid>
160 Contact: linux-i3c@vger.kernel.org
162 These directories are just symbolic links to
163 /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>.