xref: /linux/Documentation/ABI/testing/sysfs-bus-i3c (revision cbac924200b838cfb8d8b1415113d788089dc50b)
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 Provisional 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>/<bus-id>-<device-pid>
92KernelVersion:  5.0
93Contact:	linux-i3c@vger.kernel.org
94Description:
95		An I3C device present on I3C bus identified by <bus-id>. Note
96		that all devices are represented including the master driving
97		the bus.
98
99What:		/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dynamic_address
100KernelVersion:  5.0
101Contact:	linux-i3c@vger.kernel.org
102Description:
103		Dynamic address assigned to device <bus-id>-<device-pid>. This
104		address may change if the bus is re-initialized.
105
106What:		/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/bcr
107KernelVersion:  5.0
108Contact:	linux-i3c@vger.kernel.org
109Description:
110		BCR stands for Bus Characteristics Register and express the
111		device capabilities in term of speed, maximum read/write
112		length, etc. See the I3C specification for more details.
113
114What:		/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dcr
115KernelVersion:  5.0
116Contact:	linux-i3c@vger.kernel.org
117Description:
118		DCR stands for Device Characteristics Register and express the
119		device capabilities in term of exposed features. See the I3C
120		specification for more details.
121
122What:		/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/pid
123KernelVersion:  5.0
124Contact:	linux-i3c@vger.kernel.org
125Description:
126		PID stands for Provisional ID and is used to uniquely identify
127		a device on a bus. This PID contains information about the
128		vendor, the part and an instance ID so that several devices of
129		the same type can be connected on the same bus.
130		See the I3C specification for more details.
131
132What:		/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/hdrcap
133KernelVersion:  5.0
134Contact:	linux-i3c@vger.kernel.org
135Description:
136		Expose the HDR (High Data Rate) capabilities of a device.
137		Returns a list of supported HDR mode, each element is separated
138		by space. Modes can be "hdr-ddr", "hdr-tsp" and "hdr-tsl".
139
140		See the I3C specification for more details about these HDR
141		modes.
142
143What:		/sys/bus/i3c/devices/<bus-id>-<device-pid>
144KernelVersion:  5.0
145Contact:	linux-i3c@vger.kernel.org
146Description:
147		These directories are just symbolic links to
148		/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>.
149