xref: /linux/Documentation/ABI/obsolete/sysfs-bus-iio (revision cbac924200b838cfb8d8b1415113d788089dc50b)
1What:		/sys/bus/iio/devices/iio:deviceX/buffer/length
2KernelVersion:	2.6.35
3Contact:	linux-iio@vger.kernel.org
4Description:
5		Number of scans contained by the buffer.
6
7		Since Kernel 5.11, multiple buffers are supported.
8		so, it is better to use, instead:
9
10			/sys/bus/iio/devices/iio:deviceX/bufferY/length
11
12What:		/sys/bus/iio/devices/iio:deviceX/buffer/enable
13KernelVersion:	2.6.35
14Contact:	linux-iio@vger.kernel.org
15Description:
16		Actually start the buffer capture up.  Will start trigger
17		if first device and appropriate.
18
19		Since Kernel 5.11, multiple buffers are supported.
20		so, it is better to use, instead:
21
22			/sys/bus/iio/devices/iio:deviceX/bufferY/enable
23
24What:		/sys/bus/iio/devices/iio:deviceX/scan_elements
25KernelVersion:	2.6.37
26Contact:	linux-iio@vger.kernel.org
27Description:
28		Directory containing interfaces for elements that will be
29		captured for a single triggered sample set in the buffer.
30
31		Since kernel 5.11 the scan_elements attributes are merged into
32		the bufferY directory, to be configurable per buffer.
33
34What:		/sys/.../iio:deviceX/scan_elements/in_accel_x_en
35What:		/sys/.../iio:deviceX/scan_elements/in_accel_y_en
36What:		/sys/.../iio:deviceX/scan_elements/in_accel_z_en
37What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_x_en
38What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_y_en
39What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_z_en
40What:		/sys/.../iio:deviceX/scan_elements/in_magn_x_en
41What:		/sys/.../iio:deviceX/scan_elements/in_magn_y_en
42What:		/sys/.../iio:deviceX/scan_elements/in_magn_z_en
43What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_en
44What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_en
45What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_en
46What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_en
47What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_en
48What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_en
49What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_en
50What:		/sys/.../iio:deviceX/scan_elements/in_voltageY-voltageZ_en
51What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_en
52What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_en
53What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_en
54What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_en
55What:		/sys/.../iio:deviceX/scan_elements/in_incli_x_en
56What:		/sys/.../iio:deviceX/scan_elements/in_incli_y_en
57What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_en
58What:		/sys/.../iio:deviceX/scan_elements/in_pressure_en
59What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_en
60What:		/sys/.../iio:deviceX/scan_elements/in_proximity_en
61KernelVersion:	2.6.37
62Contact:	linux-iio@vger.kernel.org
63Description:
64		Scan element control for triggered data capture.
65
66		Since kernel 5.11 the scan_elements attributes are merged into
67		the bufferY directory, to be configurable per buffer.
68
69What:		/sys/.../iio:deviceX/scan_elements/in_accel_type
70What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_type
71What:		/sys/.../iio:deviceX/scan_elements/in_magn_type
72What:		/sys/.../iio:deviceX/scan_elements/in_incli_type
73What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_type
74What:		/sys/.../iio:deviceX/scan_elements/in_voltage_type
75What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_type
76What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_type
77What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_type
78What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_type
79What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_type
80What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_type
81What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_type
82What:		/sys/.../iio:deviceX/scan_elements/in_pressure_type
83What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_type
84What:		/sys/.../iio:deviceX/scan_elements/in_proximity_type
85KernelVersion:	2.6.37
86Contact:	linux-iio@vger.kernel.org
87Description:
88		Description of the scan element data storage within the buffer
89		and hence the form in which it is read from user-space.
90		Form is [be|le]:[s|u]bits/storagebits[>>shift].
91		be or le specifies big or little endian. s or u specifies if
92		signed (2's complement) or unsigned. bits is the number of bits
93		of data and storagebits is the space (after padding) that it
94		occupies in the buffer. shift if specified, is the shift that
95		needs to be applied prior to masking out unused bits. Some
96		devices put their data in the middle of the transferred elements
97		with additional information on both sides.  Note that some
98		devices will have additional information in the unused bits
99		so to get a clean value, the bits value must be used to mask
100		the buffer output value appropriately.  The storagebits value
101		also specifies the data alignment.  So s48/64>>2 will be a
102		signed 48 bit integer stored in a 64 bit location aligned to
103		a 64 bit boundary. To obtain the clean value, shift right 2
104		and apply a mask to zero the top 16 bits of the result.
105		For other storage combinations this attribute will be extended
106		appropriately.
107
108		Since kernel 5.11 the scan_elements attributes are merged into
109		the bufferY directory, to be configurable per buffer.
110
111What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_index
112What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_index
113What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_index
114What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_index
115What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_index
116What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_index
117What:		/sys/.../iio:deviceX/scan_elements/in_accel_x_index
118What:		/sys/.../iio:deviceX/scan_elements/in_accel_y_index
119What:		/sys/.../iio:deviceX/scan_elements/in_accel_z_index
120What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_x_index
121What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_y_index
122What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_z_index
123What:		/sys/.../iio:deviceX/scan_elements/in_magn_x_index
124What:		/sys/.../iio:deviceX/scan_elements/in_magn_y_index
125What:		/sys/.../iio:deviceX/scan_elements/in_magn_z_index
126What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_index
127What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_index
128What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_index
129What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_index
130What:		/sys/.../iio:deviceX/scan_elements/in_incli_x_index
131What:		/sys/.../iio:deviceX/scan_elements/in_incli_y_index
132What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_index
133What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_index
134What:		/sys/.../iio:deviceX/scan_elements/in_pressure_index
135What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_index
136What:		/sys/.../iio:deviceX/scan_elements/in_proximity_index
137KernelVersion:	2.6.37
138Description:
139		A single positive integer specifying the position of this
140		scan element in the buffer. Note these are not dependent on
141		what is enabled and may not be contiguous. Thus for user-space
142		to establish the full layout these must be used in conjunction
143		with all _en attributes to establish which channels are present,
144		and the relevant _type attributes to establish the data storage
145		format.
146
147		Since kernel 5.11 the scan_elements attributes are merged into
148		the bufferY directory, to be configurable per buffer.
149
150What:		/sys/bus/iio/devices/iio:deviceX/buffer/watermark
151KernelVersion:	4.2
152Contact:	linux-iio@vger.kernel.org
153Description:
154		A single positive integer specifying the maximum number of scan
155		elements to wait for.
156
157		Poll will block until the watermark is reached.
158
159		Blocking read will wait until the minimum between the requested
160		read amount or the low water mark is available.
161
162		Non-blocking read will retrieve the available samples from the
163		buffer even if there are less samples then watermark level. This
164		allows the application to block on poll with a timeout and read
165		the available samples after the timeout expires and thus have a
166		maximum delay guarantee.
167
168		Since Kernel 5.11, multiple buffers are supported.
169		so, it is better to use, instead:
170
171			/sys/bus/iio/devices/iio:deviceX/bufferY/watermark
172
173What:		/sys/bus/iio/devices/iio:deviceX/buffer/data_available
174KernelVersion: 4.16
175Contact:	linux-iio@vger.kernel.org
176Description:
177		A read-only value indicating the bytes of data available in the
178		buffer. In the case of an output buffer, this indicates the
179		amount of empty space available to write data to. In the case of
180		an input buffer, this indicates the amount of data available for
181		reading.
182
183		Since Kernel 5.11, multiple buffers are supported.
184		so, it is better to use, instead:
185
186			/sys/bus/iio/devices/iio:deviceX/bufferY/data_available
187