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