xref: /linux/Documentation/ABI/obsolete/sysfs-bus-iio (revision 0d5ec7919f3747193f051036b2301734a4b5e1d6)
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_incli_x_en
52What:		/sys/.../iio:deviceX/scan_elements/in_incli_y_en
53What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_en
54What:		/sys/.../iio:deviceX/scan_elements/in_pressure_en
55What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_en
56What:		/sys/.../iio:deviceX/scan_elements/in_proximity_en
57KernelVersion:	2.6.37
58Contact:	linux-iio@vger.kernel.org
59Description:
60		Scan element control for triggered data capture.
61
62		Since kernel 5.11 the scan_elements attributes are merged into
63		the bufferY directory, to be configurable per buffer.
64
65What:		/sys/.../iio:deviceX/scan_elements/in_accel_type
66What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_type
67What:		/sys/.../iio:deviceX/scan_elements/in_magn_type
68What:		/sys/.../iio:deviceX/scan_elements/in_incli_type
69What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_type
70What:		/sys/.../iio:deviceX/scan_elements/in_voltage_type
71What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_type
72What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_type
73What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_type
74What:		/sys/.../iio:deviceX/scan_elements/in_pressure_type
75What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_type
76What:		/sys/.../iio:deviceX/scan_elements/in_proximity_type
77KernelVersion:	2.6.37
78Contact:	linux-iio@vger.kernel.org
79Description:
80		Description of the scan element data storage within the buffer
81		and hence the form in which it is read from user-space.
82		Form is [be|le]:[s|u]bits/storagebits[>>shift].
83		be or le specifies big or little endian. s or u specifies if
84		signed (2's complement) or unsigned. bits is the number of bits
85		of data and storagebits is the space (after padding) that it
86		occupies in the buffer. shift if specified, is the shift that
87		needs to be applied prior to masking out unused bits. Some
88		devices put their data in the middle of the transferred elements
89		with additional information on both sides.  Note that some
90		devices will have additional information in the unused bits
91		so to get a clean value, the bits value must be used to mask
92		the buffer output value appropriately.  The storagebits value
93		also specifies the data alignment.  So s48/64>>2 will be a
94		signed 48 bit integer stored in a 64 bit location aligned to
95		a 64 bit boundary. To obtain the clean value, shift right 2
96		and apply a mask to zero the top 16 bits of the result.
97		For other storage combinations this attribute will be extended
98		appropriately.
99
100		Since kernel 5.11 the scan_elements attributes are merged into
101		the bufferY directory, to be configurable per buffer.
102
103What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_index
104What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_index
105What:		/sys/.../iio:deviceX/scan_elements/in_accel_x_index
106What:		/sys/.../iio:deviceX/scan_elements/in_accel_y_index
107What:		/sys/.../iio:deviceX/scan_elements/in_accel_z_index
108What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_x_index
109What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_y_index
110What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_z_index
111What:		/sys/.../iio:deviceX/scan_elements/in_magn_x_index
112What:		/sys/.../iio:deviceX/scan_elements/in_magn_y_index
113What:		/sys/.../iio:deviceX/scan_elements/in_magn_z_index
114What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_index
115What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_index
116What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_index
117What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_index
118What:		/sys/.../iio:deviceX/scan_elements/in_incli_x_index
119What:		/sys/.../iio:deviceX/scan_elements/in_incli_y_index
120What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_index
121What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_index
122What:		/sys/.../iio:deviceX/scan_elements/in_pressure_index
123What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_index
124What:		/sys/.../iio:deviceX/scan_elements/in_proximity_index
125KernelVersion:	2.6.37
126Description:
127		A single positive integer specifying the position of this
128		scan element in the buffer. Note these are not dependent on
129		what is enabled and may not be contiguous. Thus for user-space
130		to establish the full layout these must be used in conjunction
131		with all _en attributes to establish which channels are present,
132		and the relevant _type attributes to establish the data storage
133		format.
134
135		Since kernel 5.11 the scan_elements attributes are merged into
136		the bufferY directory, to be configurable per buffer.
137
138What:		/sys/bus/iio/devices/iio:deviceX/buffer/watermark
139KernelVersion:	4.2
140Contact:	linux-iio@vger.kernel.org
141Description:
142		A single positive integer specifying the maximum number of scan
143		elements to wait for.
144
145		Poll will block until the watermark is reached.
146
147		Blocking read will wait until the minimum between the requested
148		read amount or the low water mark is available.
149
150		Non-blocking read will retrieve the available samples from the
151		buffer even if there are less samples then watermark level. This
152		allows the application to block on poll with a timeout and read
153		the available samples after the timeout expires and thus have a
154		maximum delay guarantee.
155
156		Since Kernel 5.11, multiple buffers are supported.
157		so, it is better to use, instead:
158
159			/sys/bus/iio/devices/iio:deviceX/bufferY/watermark
160
161What:		/sys/bus/iio/devices/iio:deviceX/buffer/data_available
162KernelVersion: 4.16
163Contact:	linux-iio@vger.kernel.org
164Description:
165		A read-only value indicating the bytes of data available in the
166		buffer. In the case of an output buffer, this indicates the
167		amount of empty space available to write data to. In the case of
168		an input buffer, this indicates the amount of data available for
169		reading.
170
171		Since Kernel 5.11, multiple buffers are supported.
172		so, it is better to use, instead:
173
174			/sys/bus/iio/devices/iio:deviceX/bufferY/data_available
175