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