xref: /linux/Documentation/ABI/testing/sysfs-bus-iio (revision 2a6b6c9a226279b4f6668450ddb21ae655558087)
1What:		/sys/bus/iio/devices/iio:deviceX
2KernelVersion:	2.6.35
3Contact:	linux-iio@vger.kernel.org
4Description:
5		Hardware chip or device accessed by one communication port.
6		Corresponds to a grouping of sensor channels. X is the IIO
7		index of the device.
8
9What:		/sys/bus/iio/devices/triggerX
10KernelVersion:	2.6.35
11Contact:	linux-iio@vger.kernel.org
12Description:
13		An event driven driver of data capture to an in kernel buffer.
14		May be provided by a device driver that also has an IIO device
15		based on hardware generated events (e.g. data ready) or
16		provided by a separate driver for other hardware (e.g.
17		periodic timer, GPIO or high resolution timer).
18
19		Contains trigger type specific elements. These do not
20		generalize well and hence are not documented in this file.
21		X is the IIO index of the trigger.
22
23What:		/sys/bus/iio/devices/iio:deviceX/buffer
24KernelVersion:	2.6.35
25Contact:	linux-iio@vger.kernel.org
26Description:
27		Directory of attributes relating to the buffer for the device.
28
29What:		/sys/bus/iio/devices/iio:deviceX/name
30KernelVersion:	2.6.35
31Contact:	linux-iio@vger.kernel.org
32Description:
33		Description of the physical chip / device for device X.
34		Typically a part number.
35
36What:		/sys/bus/iio/devices/iio:deviceX/label
37KernelVersion:	5.8
38Contact:	linux-iio@vger.kernel.org
39Description:
40		Optional symbolic label for a device.
41		This is useful for userspace to be able to better identify an
42		individual device.
43
44		The contents of the label are free-form, but there are some
45		standardized uses:
46
47		For proximity sensors which give the proximity (of a person) to
48		a certain wlan or wwan antenna the following standardized labels
49		are used:
50
51		* "proximity-wifi"
52		* "proximity-lte"
53		* "proximity-wifi-lte"
54		* "proximity-wifi-left"
55		* "proximity-wifi-right"
56
57		These are used to indicate to userspace that these proximity
58		sensors may be used to tune transmit power to ensure that
59		Specific Absorption Rate (SAR) limits are honored.
60		The "-left" and "-right" labels are for devices with multiple
61		antennas.
62
63		In some laptops/tablets the standardized proximity sensor labels
64		instead	indicate proximity to a specific part of the device:
65
66		* "proximity-palmrest" indicates proximity to the keyboard's palmrest
67		* "proximity-palmrest-left" indicates proximity to the left part of the palmrest
68		* "proximity-palmrest-right" indicates proximity to the right part of the palmrest
69		* "proximity-lap" indicates the device is being used on someone's lap
70
71		Note "proximity-lap" is special in that its value may be
72		calculated by firmware from other sensor readings, rather then
73		being a raw sensor reading.
74
75		For accelerometers used in 2-in-1s with 360° (yoga-style) hinges,
76		which have an accelerometer in both their base and their display,
77		the following standardized labels are used:
78
79		* "accel-base"
80		* "accel-display"
81
82		For devices where an accelerometer is housed in the swivel camera subassembly
83		(for AR application), the following standardized label is used:
84
85		* "accel-camera"
86
87What:		/sys/bus/iio/devices/iio:deviceX/current_timestamp_clock
88KernelVersion:	4.5
89Contact:	linux-iio@vger.kernel.org
90Description:
91		String identifying current posix clock used to timestamp
92		buffered samples and events for device X.
93
94What:		/sys/bus/iio/devices/iio:deviceX/sampling_frequency
95What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency
96What:		/sys/bus/iio/devices/iio:deviceX/buffer/sampling_frequency
97What:		/sys/bus/iio/devices/triggerX/sampling_frequency
98KernelVersion:	2.6.35
99Contact:	linux-iio@vger.kernel.org
100Description:
101		Some devices have internal clocks.  This parameter sets the
102		resulting sampling frequency.  In many devices this
103		parameter has an effect on input filters etc. rather than
104		simply controlling when the input is sampled.  As this
105		affects data ready triggers, hardware buffers and the sysfs
106		direct access interfaces, it may be found in any of the
107		relevant directories.  If it affects all of the above
108		then it is to be found in the base device directory.
109
110		The stm32-timer-trigger has the additional characteristic that
111		a sampling_frequency of 0 is defined to stop sampling.
112
113What:		/sys/bus/iio/devices/iio:deviceX/sampling_frequency_available
114What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency_available
115What:		/sys/bus/iio/devices/iio:deviceX/in_proximity_sampling_frequency_available
116What:		/sys/.../iio:deviceX/buffer/sampling_frequency_available
117What:		/sys/bus/iio/devices/triggerX/sampling_frequency_available
118KernelVersion:	2.6.35
119Contact:	linux-iio@vger.kernel.org
120Description:
121		When the internal sampling clock can only take a specific set of
122		frequencies, we can specify the available values with:
123
124		- a small discrete set of values like "0 2 4 6 8"
125		- a range with minimum, step and maximum frequencies like
126		  "[min step max]"
127
128What:		/sys/bus/iio/devices/iio:deviceX/oversampling_ratio
129KernelVersion:	2.6.38
130Contact:	linux-iio@vger.kernel.org
131Description:
132		Hardware dependent ADC oversampling. Controls the sampling ratio
133		of the digital filter if available.
134
135What:		/sys/bus/iio/devices/iio:deviceX/oversampling_ratio_available
136KernelVersion:	2.6.38
137Contact:	linux-iio@vger.kernel.org
138Description:
139		Hardware dependent values supported by the oversampling filter.
140
141What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_raw
142What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_raw
143What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_raw
144What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_raw
145KernelVersion:	2.6.35
146Contact:	linux-iio@vger.kernel.org
147Description:
148		Raw (unscaled no bias removal etc.) voltage measurement from
149		channel Y. In special cases where the channel does not
150		correspond to externally available input one of the named
151		versions may be used. The number must always be specified and
152		unique to allow association with event codes. Units after
153		application of scale and offset are millivolts.
154
155		Channels with 'i' and 'q' modifiers always exist in pairs and both
156		channels refer to the same signal. The 'i' channel contains the in-phase
157		component of the signal while the 'q' channel contains the quadrature
158		component.
159
160What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY-voltageZ_raw
161KernelVersion:	2.6.35
162Contact:	linux-iio@vger.kernel.org
163Description:
164		Raw (unscaled) differential voltage measurement equivalent to
165		channel Y - channel Z where these channel numbers apply to the
166		physically equivalent inputs when non differential readings are
167		separately available. In differential only parts, then all that
168		is required is a consistent labeling.  Units after application
169		of scale and offset are millivolts.
170
171What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_raw
172What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_supply_raw
173KernelVersion:	3.17
174Contact:	linux-iio@vger.kernel.org
175Description:
176		Raw (unscaled no bias removal etc.) current measurement from
177		channel Y. In special cases where the channel does not
178		correspond to externally available input one of the named
179		versions may be used. The number must always be specified and
180		unique to allow association with event codes. Units after
181		application of scale and offset are milliamps.
182
183What:		/sys/bus/iio/devices/iio:deviceX/in_powerY_raw
184KernelVersion:	4.5
185Contact:	linux-iio@vger.kernel.org
186Description:
187		Raw (unscaled no bias removal etc.) power measurement from
188		channel Y. The number must always be specified and
189		unique to allow association with event codes. Units after
190		application of scale and offset are milliwatts.
191
192What:		/sys/bus/iio/devices/iio:deviceX/in_capacitanceY_raw
193KernelVersion:	3.2
194Contact:	linux-iio@vger.kernel.org
195Description:
196		Raw capacitance measurement from channel Y. Units after
197		application of scale and offset are nanofarads.
198
199What:		/sys/.../iio:deviceX/in_capacitanceY-capacitanceZ_raw
200KernelVersion:	3.2
201Contact:	linux-iio@vger.kernel.org
202Description:
203		Raw differential capacitance measurement equivalent to
204		channel Y - channel Z where these channel numbers apply to the
205		physically equivalent inputs when non differential readings are
206		separately available. In differential only parts, then all that
207		is required is a consistent labeling.  Units after application
208		of scale and offset are nanofarads.
209
210What:		/sys/.../iio:deviceX/in_capacitanceY-capacitanceZ_zeropoint
211KernelVersion:	6.1
212Contact:	linux-iio@vger.kernel.org
213Description:
214		For differential channels, this an offset that is applied
215		equally to both inputs. As the reading is of the difference
216		between the two inputs, this should not be applied to the _raw
217		reading by userspace (unlike _offset) and unlike calibbias
218		it does not affect the differential value measured because
219		the effect of _zeropoint cancels out across the two inputs
220		that make up the differential pair. It's purpose is to bring
221		the individual signals, before the differential is measured,
222		within the measurement range of the device. The naming is
223		chosen because if the separate inputs that make the
224		differential pair are drawn on a graph in their
225		_raw  units, this is the value that the zero point on the
226		measurement axis represents. It is expressed with the
227		same scaling as _raw.
228
229What:		/sys/bus/iio/devices/iio:deviceX/in_temp_raw
230What:		/sys/bus/iio/devices/iio:deviceX/in_tempX_raw
231What:		/sys/bus/iio/devices/iio:deviceX/in_temp_x_raw
232What:		/sys/bus/iio/devices/iio:deviceX/in_temp_y_raw
233What:		/sys/bus/iio/devices/iio:deviceX/in_temp_ambient_raw
234What:		/sys/bus/iio/devices/iio:deviceX/in_temp_object_raw
235KernelVersion:	2.6.35
236Contact:	linux-iio@vger.kernel.org
237Description:
238		Raw (unscaled no bias removal etc.) temperature measurement.
239		If an axis is specified it generally means that the temperature
240		sensor is associated with one part of a compound device (e.g.
241		a gyroscope axis). The ambient and object modifiers distinguish
242		between ambient (reference) and distant temperature for contact-
243		less measurements. Units after application of scale and offset
244		are milli degrees Celsius.
245
246What:		/sys/bus/iio/devices/iio:deviceX/in_tempY_input
247What:		/sys/bus/iio/devices/iio:deviceX/in_temp_input
248KernelVersion:	2.6.38
249Contact:	linux-iio@vger.kernel.org
250Description:
251		Scaled temperature measurement in milli degrees Celsius.
252
253What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_raw
254What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_raw
255What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_raw
256KernelVersion:	2.6.35
257Contact:	linux-iio@vger.kernel.org
258Description:
259		Acceleration in direction x, y or z (may be arbitrarily assigned
260		but should match other such assignments on device).
261		Has all of the equivalent parameters as per voltageY. Units
262		after application of scale and offset are m/s^2.
263
264What:		/sys/bus/iio/devices/iio:deviceX/in_accel_linear_x_raw
265What:		/sys/bus/iio/devices/iio:deviceX/in_accel_linear_y_raw
266What:		/sys/bus/iio/devices/iio:deviceX/in_accel_linear_z_raw
267KernelVersion:	6.1
268Contact:	linux-iio@vger.kernel.org
269Description:
270		As per in_accel_X_raw attributes, but minus the
271		acceleration due to gravity.
272
273What:		/sys/bus/iio/devices/iio:deviceX/in_gravity_x_raw
274What:		/sys/bus/iio/devices/iio:deviceX/in_gravity_y_raw
275What:		/sys/bus/iio/devices/iio:deviceX/in_gravity_z_raw
276KernelVersion:	4.11
277Contact:	linux-iio@vger.kernel.org
278Description:
279		Gravity in direction x, y or z (may be arbitrarily assigned
280		but should match other such assignments on device).
281		Units after application of scale and offset are m/s^2.
282
283What:		/sys/bus/iio/devices/iio:deviceX/in_deltaangl_x_raw
284What:		/sys/bus/iio/devices/iio:deviceX/in_deltaangl_y_raw
285What:		/sys/bus/iio/devices/iio:deviceX/in_deltaangl_z_raw
286KernelVersion:	6.5
287Contact:	linux-iio@vger.kernel.org
288Description:
289		Angular displacement between two consecutive samples on x, y or
290		z (may be arbitrarily assigned but should match other such
291		assignments on device).
292		In order to compute the total angular displacement during a
293		desired period of time, the application should sum-up the delta
294		angle samples acquired during that time.
295		Units after application of scale and offset are radians.
296
297What:		/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_x_raw
298What:		/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_y_raw
299What:		/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_z_raw
300KernelVersion:	6.5
301Contact:	linux-iio@vger.kernel.org
302Description:
303		The linear velocity change between two consecutive samples on x,
304		y or z (may be arbitrarily assigned but should match other such
305		assignments on device).
306		In order to compute the total linear velocity change during a
307		desired period of time, the application should sum-up the delta
308		velocity samples acquired during that time.
309		Units after application of scale and offset are meters per
310		second.
311
312What:		/sys/bus/iio/devices/iio:deviceX/in_angl_raw
313What:		/sys/bus/iio/devices/iio:deviceX/in_anglY_raw
314KernelVersion:	4.17
315Contact:	linux-iio@vger.kernel.org
316Description:
317		Angle of rotation. Units after application of scale and offset
318		are radians.
319
320What:		/sys/bus/iio/devices/iio:deviceX/in_positionrelative_x_raw
321What:		/sys/bus/iio/devices/iio:deviceX/in_positionrelative_y_raw
322KernelVersion:	4.19
323Contact:	linux-iio@vger.kernel.org
324Description:
325		Relative position in direction x or y on a pad (may be
326		arbitrarily assigned but should match other such assignments on
327		device).
328		Units after application of scale and offset are milli percents
329		from the pad's size in both directions. Should be calibrated by
330		the consumer.
331
332What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_raw
333What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_raw
334What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_raw
335KernelVersion:	2.6.35
336Contact:	linux-iio@vger.kernel.org
337Description:
338		Angular velocity about axis x, y or z (may be arbitrarily
339		assigned). Has all the equivalent parameters as	per voltageY.
340		Units after application of scale and offset are	radians per
341		second.
342
343What:		/sys/bus/iio/devices/iio:deviceX/in_incli_x_raw
344What:		/sys/bus/iio/devices/iio:deviceX/in_incli_y_raw
345What:		/sys/bus/iio/devices/iio:deviceX/in_incli_z_raw
346KernelVersion:	2.6.35
347Contact:	linux-iio@vger.kernel.org
348Description:
349		Inclination raw reading about axis x, y or z (may be
350		arbitrarily assigned). Data converted by application of offset
351		and scale to degrees.
352
353What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_raw
354What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_raw
355What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_raw
356KernelVersion:	2.6.35
357Contact:	linux-iio@vger.kernel.org
358Description:
359		Magnetic field along axis x, y or z (may be arbitrarily
360		assigned).  Data converted by application of offset
361		then scale to Gauss.
362
363What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_peak_raw
364What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_peak_raw
365What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_peak_raw
366What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_peak_raw
367What:		/sys/bus/iio/devices/iio:deviceX/in_temp_peak_raw
368KernelVersion:	2.6.36
369Contact:	linux-iio@vger.kernel.org
370Description:
371		Highest value since some reset condition. These
372		attributes allow access to this and are otherwise
373		the direct equivalent of the <type>Y[_name]_raw attributes.
374
375What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_trough_raw
376What:		/sys/bus/iio/devices/iio:deviceX/in_temp_trough_raw
377KernelVersion:	6.7
378Contact:	linux-iio@vger.kernel.org
379Description:
380		Lowest value since some reset condition. These
381		attributes allow access to this and are otherwise
382		the direct equivalent of the <type>Y[_name]_raw attributes.
383
384What:		/sys/bus/iio/devices/iio:deviceX/in_accel_xyz_squared_peak_raw
385KernelVersion:	2.6.36
386Contact:	linux-iio@vger.kernel.org
387Description:
388		A computed peak value based on the sum squared magnitude of
389		the underlying value in the specified directions.
390
391What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_raw
392What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_raw
393KernelVersion:	3.8
394Contact:	linux-iio@vger.kernel.org
395Description:
396		Raw pressure measurement from channel Y. Units after
397		application of scale and offset are kilopascal.
398
399What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_input
400What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_input
401KernelVersion:	3.8
402Contact:	linux-iio@vger.kernel.org
403Description:
404		Scaled pressure measurement from channel Y, in kilopascal.
405
406What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_raw
407KernelVersion:	3.14
408Contact:	linux-iio@vger.kernel.org
409Description:
410		Raw humidity measurement of air. Units after application of
411		scale and offset are milli percent.
412
413What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_input
414KernelVersion:	3.14
415Contact:	linux-iio@vger.kernel.org
416Description:
417		Scaled humidity measurement in milli percent.
418
419What:		/sys/bus/iio/devices/iio:deviceX/in_X_mean_raw
420KernelVersion:	3.5
421Contact:	linux-iio@vger.kernel.org
422Description:
423		Averaged raw measurement from channel X. The number of values
424		used for averaging is device specific. The converting rules for
425		normal raw values also applies to the averaged raw values.
426
427What:		/sys/bus/iio/devices/iio:deviceX/in_accel_offset
428What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_offset
429What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_offset
430What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_offset
431What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_offset
432What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_offset
433What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_offset
434What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_offset
435What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_q_offset
436What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_i_offset
437What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_offset
438What:		/sys/bus/iio/devices/iio:deviceX/in_current_offset
439What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_i_offset
440What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_q_offset
441What:		/sys/bus/iio/devices/iio:deviceX/in_current_q_offset
442What:		/sys/bus/iio/devices/iio:deviceX/in_current_i_offset
443What:		/sys/bus/iio/devices/iio:deviceX/in_tempY_offset
444What:		/sys/bus/iio/devices/iio:deviceX/in_temp_offset
445What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_offset
446What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_offset
447What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_offset
448What:		/sys/bus/iio/devices/iio:deviceX/in_magn_offset
449What:		/sys/bus/iio/devices/iio:deviceX/in_rot_offset
450What:		/sys/bus/iio/devices/iio:deviceX/in_angl_offset
451What:		/sys/bus/iio/devices/iio:deviceX/in_capacitanceX_offset
452KernelVersion:	2.6.35
453Contact:	linux-iio@vger.kernel.org
454Description:
455		If known for a device, offset to be added to <type>[Y]_raw prior
456		to scaling by <type>[Y]_scale in order to obtain value in the
457		<type> units as specified in <type>[Y]_raw documentation.
458		Not present if the offset is always 0 or unknown. If Y or
459		axis <x|y|z> is not present, then the offset applies to all
460		in channels of <type>.
461		May be writable if a variable offset can be applied on the
462		device. Note that this is different to calibbias which
463		is for devices (or drivers) that apply offsets to compensate
464		for variation between different instances of the part, typically
465		adjusted by using some hardware supported calibration procedure.
466		Calibbias is applied internally, offset is applied in userspace
467		to the _raw output.
468
469What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_scale
470What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_scale
471What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_scale
472What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_scale
473What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_scale
474What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_i_scale
475What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_q_scale
476What:		/sys/bus/iio/devices/iio:deviceX/in_voltage-voltage_scale
477What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_scale
478What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_scale
479What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_scale
480What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_supply_scale
481What:		/sys/bus/iio/devices/iio:deviceX/in_current_scale
482What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_i_scale
483What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_q_scale
484What:		/sys/bus/iio/devices/iio:deviceX/in_current_i_scale
485What:		/sys/bus/iio/devices/iio:deviceX/in_current_q_scale
486What:		/sys/bus/iio/devices/iio:deviceX/in_accel_scale
487What:		/sys/bus/iio/devices/iio:deviceX/in_accel_peak_scale
488What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_scale
489What:		/sys/bus/iio/devices/iio:deviceX/in_energy_scale
490What:		/sys/bus/iio/devices/iio:deviceX/in_distance_scale
491What:		/sys/bus/iio/devices/iio:deviceX/in_magn_scale
492What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_scale
493What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_scale
494What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_scale
495What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_scale
496What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_scale
497What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_scale
498What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_scale
499What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_scale
500What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_scale
501What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_scale
502What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_scale
503What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance_scale
504What:		/sys/bus/iio/devices/iio:deviceX/in_countY_scale
505What:		/sys/bus/iio/devices/iio:deviceX/in_deltaangl_scale
506What:		/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_scale
507What:		/sys/bus/iio/devices/iio:deviceX/in_angl_scale
508What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_x_scale
509What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_y_scale
510What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_z_scale
511What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_co2_scale
512KernelVersion:	2.6.35
513Contact:	linux-iio@vger.kernel.org
514Description:
515		If known for a device, scale to be applied to <type>Y[_name]_raw
516		post addition of <type>[Y][_name]_offset in order to obtain the
517		measured value in <type> units as specified in
518		<type>[Y][_name]_raw documentation.  If shared across all in
519		channels then Y and <x|y|z> are not present and the value is
520		called <type>[Y][_name]_scale. The peak modifier means this
521		value is applied to <type>Y[_name]_peak_raw values.
522
523What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_calibbias
524What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_calibbias
525What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_calibbias
526What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibbias
527What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibbias
528What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibbias
529What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibbias
530What:		/sys/bus/iio/devices/iio:deviceX/in_proximity0_calibbias
531What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_calibbias
532What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_calibbias
533KernelVersion:	2.6.35
534Contact:	linux-iio@vger.kernel.org
535Description:
536		Hardware applied calibration offset (assumed to fix production
537		inaccuracies).
538		icm42600: For this device values are real physical offsets
539		expressed in SI units (m/s^2 for accelerometers and rad/s
540		for gyroscope)/
541
542What:		/sys/bus/iio/devices/iio:deviceX/in_accel_calibbias_available
543What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_calibbias_available
544KernelVersion:  5.8
545Contact:        linux-iio@vger.kernel.org
546Description:
547		Available values of calibbias. Maybe expressed as either of:
548
549		- a small discrete set of values like "0 2 4 6 8"
550		- a range specified as "[min step max]"
551
552What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale
553What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_calibscale
554What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_calibscale
555What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_calibscale
556What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_i_calibscale
557What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_q_calibscale
558What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage_calibscale
559What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_calibscale
560What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_calibscale
561What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_calibscale
562What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_calibscale
563What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibscale
564What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibscale
565What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibscale
566What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibscale
567What:		/sys/bus/iio/devices/iio:deviceX/in_proximity0_calibscale
568What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_calibscale
569What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_calibscale
570What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance_calibscale
571KernelVersion:	2.6.35
572Contact:	linux-iio@vger.kernel.org
573Description:
574		Hardware applied calibration scale factor (assumed to fix
575		production inaccuracies).  If shared across all channels,
576		<type>_calibscale is used.
577
578What:		/sys/bus/iio/devices/iio:deviceX/in_activity_calibgender
579What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibgender
580What:		/sys/bus/iio/devices/iio:deviceX/in_distance_calibgender
581What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_calibgender
582KernelVersion:	4.0
583Contact:	linux-iio@vger.kernel.org
584Description:
585		Gender of the user (e.g.: male, female) used by some pedometers
586		to compute the stride length, distance, speed and activity
587		type.
588
589What:		/sys/bus/iio/devices/iio:deviceX/in_activity_calibgender_available
590What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibgender_available
591What:		/sys/bus/iio/devices/iio:deviceX/in_distance_calibgender_available
592What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_calibgender_available
593KernelVersion:	4.0
594Contact:	linux-iio@vger.kernel.org
595Description:
596		Lists all available gender values (e.g.: male, female).
597
598What:		/sys/bus/iio/devices/iio:deviceX/in_activity_calibheight
599What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibheight
600What:		/sys/bus/iio/devices/iio:deviceX/in_distance_calibheight
601What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_calibheight
602KernelVersion:	3.19
603Contact:	linux-iio@vger.kernel.org
604Description:
605		Height of the user (in meters) used by some pedometers
606		to compute the stride length, distance, speed and activity
607		type.
608
609What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibweight
610KernelVersion:	4.0
611Contact:	linux-iio@vger.kernel.org
612Description:
613		Weight of the user (in kg). It is needed by some pedometers
614		to compute the calories burnt by the user.
615
616What:		/sys/bus/iio/devices/iio:deviceX/in_accel_scale_available
617What:		/sys/.../iio:deviceX/in_anglvel_scale_available
618What:		/sys/.../iio:deviceX/in_magn_scale_available
619What:		/sys/.../iio:deviceX/in_illuminance_scale_available
620What:		/sys/.../iio:deviceX/in_intensity_scale_available
621What:		/sys/.../iio:deviceX/in_proximity_scale_available
622What:		/sys/.../iio:deviceX/in_voltageX_scale_available
623What:		/sys/.../iio:deviceX/in_voltage-voltage_scale_available
624What:		/sys/.../iio:deviceX/out_voltageX_scale_available
625What:		/sys/.../iio:deviceX/out_altvoltageX_scale_available
626What:		/sys/.../iio:deviceX/in_capacitance_scale_available
627What:		/sys/.../iio:deviceX/in_pressure_scale_available
628What:		/sys/.../iio:deviceX/in_pressureY_scale_available
629KernelVersion:	2.6.35
630Contact:	linux-iio@vger.kernel.org
631Description:
632		If a discrete set of scale values is available, they
633		are listed in this attribute. Unlike illumination,
634		multiplying intensity by intensity_scale does not
635		yield value with any standardized unit.
636
637What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_hardwaregain
638What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_hardwaregain
639What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_red_hardwaregain
640What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_green_hardwaregain
641What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_blue_hardwaregain
642What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_clear_hardwaregain
643KernelVersion:	2.6.35
644Contact:	linux-iio@vger.kernel.org
645Description:
646		Hardware applied gain factor. If shared across all channels,
647		<type>_hardwaregain is used.
648
649What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_hardwaregain_available
650KernelVersion:	5.10
651Contact:	linux-iio@vger.kernel.org
652Description:
653		Lists all available hardware applied gain factors. Shared across all
654		channels.
655
656What:		/sys/.../in_accel_filter_low_pass_3db_frequency
657What:		/sys/.../in_magn_filter_low_pass_3db_frequency
658What:		/sys/.../in_anglvel_filter_low_pass_3db_frequency
659KernelVersion:	3.2
660Contact:	linux-iio@vger.kernel.org
661Description:
662		If a known or controllable low pass filter is applied
663		to the underlying data channel, then this parameter
664		gives the 3dB frequency of the filter in Hz.
665
666What:		/sys/.../in_accel_filter_high_pass_3db_frequency
667What:		/sys/.../in_anglvel_filter_high_pass_3db_frequency
668What:		/sys/.../in_magn_filter_high_pass_3db_frequency
669KernelVersion:	4.2
670Contact:	linux-iio@vger.kernel.org
671Description:
672		If a known or controllable high pass filter is applied
673		to the underlying data channel, then this parameter
674		gives the 3dB frequency of the filter in Hz.
675
676What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_raw
677What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_raw
678KernelVersion:	2.6.37
679Contact:	linux-iio@vger.kernel.org
680Description:
681		Raw (unscaled, no bias etc.) output voltage for
682		channel Y.  The number must always be specified and
683		unique if the output corresponds to a single channel.
684		While DAC like devices typically use out_voltage,
685		a continuous frequency generating device, such as
686		a DDS or PLL should use out_altvoltage.
687
688What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY&Z_raw
689What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY&Z_raw
690KernelVersion:	2.6.37
691Contact:	linux-iio@vger.kernel.org
692Description:
693		Raw (unscaled, no bias etc.) output voltage for an aggregate of
694		channel Y, channel Z, etc.  This interface is available in cases
695		where a single output sets the value for multiple channels
696		simultaneously.
697
698What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown_mode
699What:		/sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown_mode
700What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown_mode
701What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown_mode
702KernelVersion:	2.6.38
703Contact:	linux-iio@vger.kernel.org
704Description:
705		Specifies the output powerdown mode.
706		DAC output stage is disconnected from the amplifier and
707		1kohm_to_gnd: connected to ground via an 1kOhm resistor,
708		2.5kohm_to_gnd: connected to ground via a 2.5kOhm resistor,
709		6kohm_to_gnd: connected to ground via a 6kOhm resistor,
710		20kohm_to_gnd: connected to ground via a 20kOhm resistor,
711		90kohm_to_gnd: connected to ground via a 90kOhm resistor,
712		100kohm_to_gnd: connected to ground via an 100kOhm resistor,
713		125kohm_to_gnd: connected to ground via an 125kOhm resistor,
714		500kohm_to_gnd: connected to ground via a 500kOhm resistor,
715		640kohm_to_gnd: connected to ground via a 640kOhm resistor,
716		three_state: left floating.
717		For a list of available output power down options read
718		outX_powerdown_mode_available. If Y is not present the
719		mode is shared across all outputs.
720
721What:		/sys/.../iio:deviceX/out_voltageY_powerdown_mode_available
722What:		/sys/.../iio:deviceX/out_voltage_powerdown_mode_available
723What:		/sys/.../iio:deviceX/out_altvoltageY_powerdown_mode_available
724What:		/sys/.../iio:deviceX/out_altvoltage_powerdown_mode_available
725KernelVersion:	2.6.38
726Contact:	linux-iio@vger.kernel.org
727Description:
728		Lists all available output power down modes.
729		If Y is not present the mode is shared across all outputs.
730
731What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown
732What:		/sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown
733What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown
734What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown
735KernelVersion:	2.6.38
736Contact:	linux-iio@vger.kernel.org
737Description:
738		Writing 1 causes output Y to enter the power down mode specified
739		by the corresponding outY_powerdown_mode. DAC output stage is
740		disconnected from the amplifier. Clearing returns to normal
741		operation. Y may be suppressed if all outputs are controlled
742		together.
743
744What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency
745KernelVersion:	3.4.0
746Contact:	linux-iio@vger.kernel.org
747Description:
748		Output frequency for channel Y in Hz. The number must always be
749		specified and unique if the output corresponds to a single
750		channel.
751		Some drivers have additional constraints:
752		ADF4371 has an integrated VCO with fundamendal output
753		frequency ranging from 4000000000 Hz 8000000000 Hz.
754
755		out_altvoltage0_frequency:
756			A divide by 1, 2, 4, 8, 16, 32 or circuit generates
757			frequencies from 62500000 Hz to 8000000000 Hz.
758		out_altvoltage1_frequency:
759			This channel duplicates the channel 0 frequency
760		out_altvoltage2_frequency:
761			A frequency doubler generates frequencies from
762			8000000000 Hz to 16000000000 Hz.
763		out_altvoltage3_frequency:
764			A frequency quadrupler generates frequencies from
765			16000000000 Hz to 32000000000 Hz.
766
767		Note: writes to one of the channels will affect the frequency of
768		all the other channels, since it involves changing the VCO
769		fundamental output frequency.
770
771What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_phase
772KernelVersion:	3.4.0
773Contact:	linux-iio@vger.kernel.org
774Description:
775		Phase in radians of one frequency/clock output Y
776		(out_altvoltageY) relative to another frequency/clock output
777		(out_altvoltageZ) of the device X. The number must always be
778		specified and unique if the output corresponds to a single
779		channel.
780
781What:		/sys/bus/iio/devices/iio:deviceX/out_currentY_raw
782Date:		May 2012
783KernelVersion:	3.5
784Contact:	Johan Hovold <jhovold@gmail.com>
785Description:
786		Set/get output current for channel Y. Units after application
787		of scale and offset are milliamps.
788		For some devices current channels are used to specify
789		current supplied to elements used in taking a measurement
790		of a different type. E.g. LED currents.
791
792What:		/sys/bus/iio/devices/iio:deviceX/events
793KernelVersion:	2.6.35
794Contact:	linux-iio@vger.kernel.org
795Description:
796		Configuration of which hardware generated events are passed up
797		to user-space.
798
799What:		/sys/.../iio:deviceX/events/in_accel_x_thresh_rising_en
800What:		/sys/.../iio:deviceX/events/in_accel_x_thresh_falling_en
801What:		/sys/.../iio:deviceX/events/in_accel_y_thresh_rising_en
802What:		/sys/.../iio:deviceX/events/in_accel_y_thresh_falling_en
803What:		/sys/.../iio:deviceX/events/in_accel_z_thresh_rising_en
804What:		/sys/.../iio:deviceX/events/in_accel_z_thresh_falling_en
805What:		/sys/.../iio:deviceX/events/in_anglvel_x_thresh_rising_en
806What:		/sys/.../iio:deviceX/events/in_anglvel_x_thresh_falling_en
807What:		/sys/.../iio:deviceX/events/in_anglvel_y_thresh_rising_en
808What:		/sys/.../iio:deviceX/events/in_anglvel_y_thresh_falling_en
809What:		/sys/.../iio:deviceX/events/in_anglvel_z_thresh_rising_en
810What:		/sys/.../iio:deviceX/events/in_anglvel_z_thresh_falling_en
811What:		/sys/.../iio:deviceX/events/in_magn_x_thresh_rising_en
812What:		/sys/.../iio:deviceX/events/in_magn_x_thresh_falling_en
813What:		/sys/.../iio:deviceX/events/in_magn_y_thresh_rising_en
814What:		/sys/.../iio:deviceX/events/in_magn_y_thresh_falling_en
815What:		/sys/.../iio:deviceX/events/in_magn_z_thresh_rising_en
816What:		/sys/.../iio:deviceX/events/in_magn_z_thresh_falling_en
817What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_rising_en
818What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_falling_en
819What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_rising_en
820What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_falling_en
821What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_en
822What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_en
823What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_rising_en
824What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_falling_en
825What:		/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_rising_en
826What:		/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_falling_en
827What:		/sys/.../iio:deviceX/events/in_voltageY_thresh_rising_en
828What:		/sys/.../iio:deviceX/events/in_voltageY_thresh_falling_en
829What:		/sys/.../iio:deviceX/events/in_voltageY_thresh_either_en
830What:		/sys/.../iio:deviceX/events/in_tempY_thresh_rising_en
831What:		/sys/.../iio:deviceX/events/in_tempY_thresh_falling_en
832What:		/sys/.../iio:deviceX/events/in_capacitanceY_thresh_rising_en
833What:		/sys/.../iio:deviceX/events/in_capacitanceY_thresh_falling_en
834KernelVersion:	2.6.37
835Contact:	linux-iio@vger.kernel.org
836Description:
837		Event generated when channel passes a threshold in the specified
838		(_rising|_falling) direction. If the direction is not specified,
839		then either the device will report an event which ever direction
840		a single threshold value is passed in (e.g.
841		<type>[Y][_name]_<raw|input>_thresh_value) or
842		<type>[Y][_name]_<raw|input>_thresh_rising_value and
843		<type>[Y][_name]_<raw|input>_thresh_falling_value may take
844		different values, but the device can only enable both thresholds
845		or neither.
846
847		Note the driver will assume the last p events requested are
848		to be enabled where p is how many it supports (which may vary
849		depending on the exact set requested. So if you want to be
850		sure you have set what you think you have, check the contents of
851		these attributes after everything is configured. Drivers may
852		have to buffer any parameters so that they are consistent when
853		a given event type is enabled at a future point (and not those for
854		whatever event was previously enabled).
855
856What:		/sys/.../iio:deviceX/events/in_accel_x_roc_rising_en
857What:		/sys/.../iio:deviceX/events/in_accel_x_roc_falling_en
858What:		/sys/.../iio:deviceX/events/in_accel_y_roc_rising_en
859What:		/sys/.../iio:deviceX/events/in_accel_y_roc_falling_en
860What:		/sys/.../iio:deviceX/events/in_accel_z_roc_rising_en
861What:		/sys/.../iio:deviceX/events/in_accel_z_roc_falling_en
862What:		/sys/.../iio:deviceX/events/in_anglvel_x_roc_rising_en
863What:		/sys/.../iio:deviceX/events/in_anglvel_x_roc_falling_en
864What:		/sys/.../iio:deviceX/events/in_anglvel_y_roc_rising_en
865What:		/sys/.../iio:deviceX/events/in_anglvel_y_roc_falling_en
866What:		/sys/.../iio:deviceX/events/in_anglvel_z_roc_rising_en
867What:		/sys/.../iio:deviceX/events/in_anglvel_z_roc_falling_en
868What:		/sys/.../iio:deviceX/events/in_magn_x_roc_rising_en
869What:		/sys/.../iio:deviceX/events/in_magn_x_roc_falling_en
870What:		/sys/.../iio:deviceX/events/in_magn_y_roc_rising_en
871What:		/sys/.../iio:deviceX/events/in_magn_y_roc_falling_en
872What:		/sys/.../iio:deviceX/events/in_magn_z_roc_rising_en
873What:		/sys/.../iio:deviceX/events/in_magn_z_roc_falling_en
874What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_rising_en
875What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_falling_en
876What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_roc_rising_en
877What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_roc_falling_en
878What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_rising_en
879What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_falling_en
880What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_rising_en
881What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_falling_en
882What:		/sys/.../iio:deviceX/events/in_voltageY_supply_roc_rising_en
883What:		/sys/.../iio:deviceX/events/in_voltageY_supply_roc_falling_en
884What:		/sys/.../iio:deviceX/events/in_voltageY_roc_rising_en
885What:		/sys/.../iio:deviceX/events/in_voltageY_roc_falling_en
886What:		/sys/.../iio:deviceX/events/in_tempY_roc_rising_en
887What:		/sys/.../iio:deviceX/events/in_tempY_roc_falling_en
888KernelVersion:	2.6.37
889Contact:	linux-iio@vger.kernel.org
890Description:
891		Event generated when channel passes a threshold on the rate of
892		change (1st differential) in the specified (_rising|_falling)
893		direction. If the direction is not specified, then either the
894		device will report an event which ever direction a single
895		threshold value is passed in (e.g.
896		<type>[Y][_name]_<raw|input>_roc_value) or
897		<type>[Y][_name]_<raw|input>_roc_rising_value and
898		<type>[Y][_name]_<raw|input>_roc_falling_value may take
899		different values, but the device can only enable both rate of
900		change thresholds or neither.
901
902		Note the driver will assume the last p events requested are
903		to be enabled where p is however many it supports (which may
904		vary depending on the exact set requested. So if you want to be
905		sure you have set what you think you have, check the contents of
906		these attributes after everything is configured. Drivers may
907		have to buffer any parameters so that they are consistent when
908		a given event type is enabled a future point (and not those for
909		whatever event was previously enabled).
910
911What:		/sys/.../events/in_capacitanceY_adaptive_thresh_rising_en
912What:		/sys/.../events/in_capacitanceY_adaptive_thresh_falling_en
913KernelVersion:	5.13
914Contact:	linux-iio@vger.kernel.org
915Description:
916		Adaptive thresholds are similar to normal fixed thresholds
917		but the value is expressed as an offset from a value which
918		provides a low frequency approximation of the channel itself.
919		Thus these detect if a rapid change occurs in the specified
920		direction which crosses tracking value + offset.
921		Tracking value calculation is devices specific.
922
923What:		/sys/.../in_capacitanceY_adaptive_thresh_rising_timeout
924What:		/sys/.../in_capacitanceY_adaptive_thresh_falling_timeout
925KernelVersion:	5.11
926Contact:	linux-iio@vger.kernel.org
927Description:
928		When adaptive thresholds are used, the tracking signal
929		may adjust too slowly to step changes in the raw signal.
930		Thus these specify the time in seconds for which the
931		difference between the slow tracking signal and the raw
932		signal is allowed to remain out-of-range before a reset
933		event occurs in which the tracking signal is made equal
934		to the raw signal, allowing slow tracking to resume and the
935		adaptive threshold event detection to function as expected.
936
937What:		/sys/.../events/in_accel_thresh_rising_value
938What:		/sys/.../events/in_accel_thresh_falling_value
939What:		/sys/.../events/in_accel_x_raw_thresh_rising_value
940What:		/sys/.../events/in_accel_x_raw_thresh_falling_value
941What:		/sys/.../events/in_accel_y_raw_thresh_rising_value
942What:		/sys/.../events/in_accel_y_raw_thresh_falling_value
943What:		/sys/.../events/in_accel_z_raw_thresh_rising_value
944What:		/sys/.../events/in_accel_z_raw_thresh_falling_value
945What:		/sys/.../events/in_anglvel_x_raw_thresh_rising_value
946What:		/sys/.../events/in_anglvel_x_raw_thresh_falling_value
947What:		/sys/.../events/in_anglvel_y_raw_thresh_rising_value
948What:		/sys/.../events/in_anglvel_y_raw_thresh_falling_value
949What:		/sys/.../events/in_anglvel_z_raw_thresh_rising_value
950What:		/sys/.../events/in_anglvel_z_raw_thresh_falling_value
951What:		/sys/.../events/in_magn_x_raw_thresh_rising_value
952What:		/sys/.../events/in_magn_x_raw_thresh_falling_value
953What:		/sys/.../events/in_magn_y_raw_thresh_rising_value
954What:		/sys/.../events/in_magn_y_raw_thresh_falling_value
955What:		/sys/.../events/in_magn_z_raw_thresh_rising_value
956What:		/sys/.../events/in_magn_z_raw_thresh_falling_value
957What:		/sys/.../events/in_rot_from_north_magnetic_raw_thresh_rising_value
958What:		/sys/.../events/in_rot_from_north_magnetic_raw_thresh_falling_value
959What:		/sys/.../events/in_rot_from_north_true_raw_thresh_rising_value
960What:		/sys/.../events/in_rot_from_north_true_raw_thresh_falling_value
961What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_rising_value
962What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_falling_value
963What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_rising_value
964What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_falling_value
965What:		/sys/.../events/in_voltageY_supply_raw_thresh_rising_value
966What:		/sys/.../events/in_voltageY_supply_raw_thresh_falling_value
967What:		/sys/.../events/in_voltageY_raw_thresh_rising_value
968What:		/sys/.../events/in_voltageY_raw_thresh_falling_value
969What:		/sys/.../events/in_tempY_raw_thresh_rising_value
970What:		/sys/.../events/in_tempY_raw_thresh_falling_value
971What:		/sys/.../events/in_illuminance0_thresh_falling_value
972What:		/sys/.../events/in_illuminance0_thresh_rising_value
973What:		/sys/.../events/in_proximity0_thresh_falling_value
974What:		/sys/.../events/in_proximity0_thresh_rising_value
975What:		/sys/.../events/in_illuminance_thresh_rising_value
976What:		/sys/.../events/in_illuminance_thresh_falling_value
977What:		/sys/.../events/in_capacitanceY_thresh_rising_value
978What:		/sys/.../events/in_capacitanceY_thresh_falling_value
979What:		/sys/.../events/in_capacitanceY_thresh_adaptive_rising_value
980What:		/sys/.../events/in_capacitanceY_thresh_falling_rising_value
981KernelVersion:	2.6.37
982Contact:	linux-iio@vger.kernel.org
983Description:
984		Specifies the value of threshold that the device is comparing
985		against for the events enabled by
986		<type>Y[_name]_thresh[_rising|falling]_en.
987
988		If separate attributes exist for the two directions, but
989		direction is not specified for this attribute, then a single
990		threshold value applies to both directions.
991
992		The raw or input element of the name indicates whether the
993		value is in raw device units or in processed units (as _raw
994		and _input do on sysfs direct channel read attributes).
995
996What:		/sys/.../events/in_accel_scale
997What:		/sys/.../events/in_accel_peak_scale
998What:		/sys/.../events/in_anglvel_scale
999What:		/sys/.../events/in_magn_scale
1000What:		/sys/.../events/in_rot_from_north_magnetic_scale
1001What:		/sys/.../events/in_rot_from_north_true_scale
1002What:		/sys/.../events/in_voltage_scale
1003What:		/sys/.../events/in_voltage_supply_scale
1004What:		/sys/.../events/in_temp_scale
1005What:		/sys/.../events/in_illuminance_scale
1006What:		/sys/.../events/in_proximity_scale
1007KernelVersion:	3.21
1008Contact:	linux-iio@vger.kernel.org
1009Description:
1010                Specifies the conversion factor from the standard units
1011                to device specific units used to set the event trigger
1012                threshold.
1013
1014What:		/sys/.../events/in_accel_x_thresh_rising_hysteresis
1015What:		/sys/.../events/in_accel_x_thresh_falling_hysteresis
1016What:		/sys/.../events/in_accel_x_thresh_either_hysteresis
1017What:		/sys/.../events/in_accel_y_thresh_rising_hysteresis
1018What:		/sys/.../events/in_accel_y_thresh_falling_hysteresis
1019What:		/sys/.../events/in_accel_y_thresh_either_hysteresis
1020What:		/sys/.../events/in_accel_z_thresh_rising_hysteresis
1021What:		/sys/.../events/in_accel_z_thresh_falling_hysteresis
1022What:		/sys/.../events/in_accel_z_thresh_either_hysteresis
1023What:		/sys/.../events/in_anglvel_x_thresh_rising_hysteresis
1024What:		/sys/.../events/in_anglvel_x_thresh_falling_hysteresis
1025What:		/sys/.../events/in_anglvel_x_thresh_either_hysteresis
1026What:		/sys/.../events/in_anglvel_y_thresh_rising_hysteresis
1027What:		/sys/.../events/in_anglvel_y_thresh_falling_hysteresis
1028What:		/sys/.../events/in_anglvel_y_thresh_either_hysteresis
1029What:		/sys/.../events/in_anglvel_z_thresh_rising_hysteresis
1030What:		/sys/.../events/in_anglvel_z_thresh_falling_hysteresis
1031What:		/sys/.../events/in_anglvel_z_thresh_either_hysteresis
1032What:		/sys/.../events/in_magn_x_thresh_rising_hysteresis
1033What:		/sys/.../events/in_magn_x_thresh_falling_hysteresis
1034What:		/sys/.../events/in_magn_x_thresh_either_hysteresis
1035What:		/sys/.../events/in_magn_y_thresh_rising_hysteresis
1036What:		/sys/.../events/in_magn_y_thresh_falling_hysteresis
1037What:		/sys/.../events/in_magn_y_thresh_either_hysteresis
1038What:		/sys/.../events/in_magn_z_thresh_rising_hysteresis
1039What:		/sys/.../events/in_magn_z_thresh_falling_hysteresis
1040What:		/sys/.../events/in_magn_z_thresh_either_hysteresis
1041What:		/sys/.../events/in_rot_from_north_magnetic_thresh_rising_hysteresis
1042What:		/sys/.../events/in_rot_from_north_magnetic_thresh_falling_hysteresis
1043What:		/sys/.../events/in_rot_from_north_magnetic_thresh_either_hysteresis
1044What:		/sys/.../events/in_rot_from_north_true_thresh_rising_hysteresis
1045What:		/sys/.../events/in_rot_from_north_true_thresh_falling_hysteresis
1046What:		/sys/.../events/in_rot_from_north_true_thresh_either_hysteresis
1047What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_hysteresis
1048What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_hysteresis
1049What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_either_hysteresis
1050What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_hysteresis
1051What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_hysteresis
1052What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_either_hysteresis
1053What:		/sys/.../events/in_voltageY_thresh_rising_hysteresis
1054What:		/sys/.../events/in_voltageY_thresh_falling_hysteresis
1055What:		/sys/.../events/in_voltageY_thresh_either_hysteresis
1056What:		/sys/.../events/in_tempY_thresh_rising_hysteresis
1057What:		/sys/.../events/in_tempY_thresh_falling_hysteresis
1058What:		/sys/.../events/in_tempY_thresh_either_hysteresis
1059What:		/sys/.../events/in_illuminance0_thresh_falling_hysteresis
1060What:		/sys/.../events/in_illuminance0_thresh_rising_hysteresis
1061What:		/sys/.../events/in_illuminance0_thresh_either_hysteresis
1062What:		/sys/.../events/in_proximity0_thresh_falling_hysteresis
1063What:		/sys/.../events/in_proximity0_thresh_rising_hysteresis
1064What:		/sys/.../events/in_proximity0_thresh_either_hysteresis
1065KernelVersion:	3.13
1066Contact:	linux-iio@vger.kernel.org
1067Description:
1068		Specifies the hysteresis of threshold that the device is comparing
1069		against for the events enabled by
1070		<type>Y[_name]_thresh[_(rising|falling)]_hysteresis.
1071		If separate attributes exist for the two directions, but
1072		direction is not specified for this attribute, then a single
1073		hysteresis value applies to both directions.
1074
1075		For falling events the hysteresis is added to the _value attribute for
1076		this event to get the upper threshold for when the event goes back to
1077		normal, for rising events the hysteresis is subtracted from the _value
1078		attribute. E.g. if in_voltage0_raw_thresh_rising_value is set to 1200
1079		and in_voltage0_raw_thresh_rising_hysteresis is set to 50. The event
1080		will get activated once in_voltage0_raw goes above 1200 and will become
1081		deactivated again once the value falls below 1150.
1082
1083What:		/sys/.../events/in_accel_x_raw_roc_rising_value
1084What:		/sys/.../events/in_accel_x_raw_roc_falling_value
1085What:		/sys/.../events/in_accel_y_raw_roc_rising_value
1086What:		/sys/.../events/in_accel_y_raw_roc_falling_value
1087What:		/sys/.../events/in_accel_z_raw_roc_rising_value
1088What:		/sys/.../events/in_accel_z_raw_roc_falling_value
1089What:		/sys/.../events/in_anglvel_x_raw_roc_rising_value
1090What:		/sys/.../events/in_anglvel_x_raw_roc_falling_value
1091What:		/sys/.../events/in_anglvel_y_raw_roc_rising_value
1092What:		/sys/.../events/in_anglvel_y_raw_roc_falling_value
1093What:		/sys/.../events/in_anglvel_z_raw_roc_rising_value
1094What:		/sys/.../events/in_anglvel_z_raw_roc_falling_value
1095What:		/sys/.../events/in_magn_x_raw_roc_rising_value
1096What:		/sys/.../events/in_magn_x_raw_roc_falling_value
1097What:		/sys/.../events/in_magn_y_raw_roc_rising_value
1098What:		/sys/.../events/in_magn_y_raw_roc_falling_value
1099What:		/sys/.../events/in_magn_z_raw_roc_rising_value
1100What:		/sys/.../events/in_magn_z_raw_roc_falling_value
1101What:		/sys/.../events/in_rot_from_north_magnetic_raw_roc_rising_value
1102What:		/sys/.../events/in_rot_from_north_magnetic_raw_roc_falling_value
1103What:		/sys/.../events/in_rot_from_north_true_raw_roc_rising_value
1104What:		/sys/.../events/in_rot_from_north_true_raw_roc_falling_value
1105What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_rising_value
1106What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_falling_value
1107What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_rising_value
1108What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_falling_value
1109What:		/sys/.../events/in_voltageY_supply_raw_roc_rising_value
1110What:		/sys/.../events/in_voltageY_supply_raw_roc_falling_value
1111What:		/sys/.../events/in_voltageY_raw_roc_rising_value
1112What:		/sys/.../events/in_voltageY_raw_roc_falling_value
1113What:		/sys/.../events/in_tempY_raw_roc_rising_value
1114What:		/sys/.../events/in_tempY_raw_roc_falling_value
1115KernelVersion:	2.6.37
1116Contact:	linux-iio@vger.kernel.org
1117Description:
1118		Specifies the value of rate of change threshold that the
1119		device is comparing against for the events enabled by
1120		<type>[Y][_name]_roc[_rising|falling]_en.
1121
1122		If separate attributes exist for the two directions,
1123		but direction is not specified for this attribute,
1124		then a single threshold value applies to both directions.
1125		The raw or input element of the name indicates whether the
1126		value is in raw device units or in processed units (as _raw
1127		and _input do on sysfs direct channel read attributes).
1128
1129What:		/sys/.../events/in_accel_x_thresh_rising_period
1130What:		/sys/.../events/in_accel_x_thresh_falling_period
1131What:		/sys/.../events/in_accel_x_roc_rising_period
1132What:		/sys/.../events/in_accel_x_roc_falling_period
1133What:		/sys/.../events/in_accel_y_thresh_rising_period
1134What:		/sys/.../events/in_accel_y_thresh_falling_period
1135What:		/sys/.../events/in_accel_y_roc_rising_period
1136What:		/sys/.../events/in_accel_y_roc_falling_period
1137What:		/sys/.../events/in_accel_z_thresh_rising_period
1138What:		/sys/.../events/in_accel_z_thresh_falling_period
1139What:		/sys/.../events/in_accel_z_roc_rising_period
1140What:		/sys/.../events/in_accel_z_roc_falling_period
1141What:		/sys/.../events/in_anglvel_x_thresh_rising_period
1142What:		/sys/.../events/in_anglvel_x_thresh_falling_period
1143What:		/sys/.../events/in_anglvel_x_roc_rising_period
1144What:		/sys/.../events/in_anglvel_x_roc_falling_period
1145What:		/sys/.../events/in_anglvel_y_thresh_rising_period
1146What:		/sys/.../events/in_anglvel_y_thresh_falling_period
1147What:		/sys/.../events/in_anglvel_y_roc_rising_period
1148What:		/sys/.../events/in_anglvel_y_roc_falling_period
1149What:		/sys/.../events/in_anglvel_z_thresh_rising_period
1150What:		/sys/.../events/in_anglvel_z_thresh_falling_period
1151What:		/sys/.../events/in_anglvel_z_roc_rising_period
1152What:		/sys/.../events/in_anglvel_z_roc_falling_period
1153What:		/sys/.../events/in_magn_x_thresh_rising_period
1154What:		/sys/.../events/in_magn_x_thresh_falling_period
1155What:		/sys/.../events/in_magn_x_roc_rising_period
1156What:		/sys/.../events/in_magn_x_roc_falling_period
1157What:		/sys/.../events/in_magn_y_thresh_rising_period
1158What:		/sys/.../events/in_magn_y_thresh_falling_period
1159What:		/sys/.../events/in_magn_y_roc_rising_period
1160What:		/sys/.../events/in_magn_y_roc_falling_period
1161What:		/sys/.../events/in_magn_z_thresh_rising_period
1162What:		/sys/.../events/in_magn_z_thresh_falling_period
1163What:		/sys/.../events/in_magn_z_roc_rising_period
1164What:		/sys/.../events/in_magn_z_roc_falling_period
1165What:		/sys/.../events/in_rot_from_north_magnetic_thresh_rising_period
1166What:		/sys/.../events/in_rot_from_north_magnetic_thresh_falling_period
1167What:		/sys/.../events/in_rot_from_north_magnetic_roc_rising_period
1168What:		/sys/.../events/in_rot_from_north_magnetic_roc_falling_period
1169What:		/sys/.../events/in_rot_from_north_true_thresh_rising_period
1170What:		/sys/.../events/in_rot_from_north_true_thresh_falling_period
1171What:		/sys/.../events/in_rot_from_north_true_roc_rising_period
1172What:		/sys/.../events/in_rot_from_north_true_roc_falling_period
1173What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_period
1174What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_period
1175What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_rising_period
1176What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_falling_period
1177What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_period
1178What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_period
1179What:		/sys/.../events/in_rot_from_north_true_tilt_comp_roc_rising_period
1180What:		/sys/.../events/in_rot_from_north_true_tilt_comp_roc_falling_period
1181What:		/sys/.../events/in_voltageY_supply_thresh_rising_period
1182What:		/sys/.../events/in_voltageY_supply_thresh_falling_period
1183What:		/sys/.../events/in_voltageY_supply_roc_rising_period
1184What:		/sys/.../events/in_voltageY_supply_roc_falling_period
1185What:		/sys/.../events/in_voltageY_thresh_rising_period
1186What:		/sys/.../events/in_voltageY_thresh_falling_period
1187What:		/sys/.../events/in_voltageY_roc_rising_period
1188What:		/sys/.../events/in_voltageY_roc_falling_period
1189What:		/sys/.../events/in_tempY_thresh_rising_period
1190What:		/sys/.../events/in_tempY_thresh_falling_period
1191What:		/sys/.../events/in_tempY_roc_rising_period
1192What:		/sys/.../events/in_tempY_roc_falling_period
1193What:		/sys/.../events/in_accel_x&y&z_mag_falling_period
1194What:		/sys/.../events/in_intensity0_thresh_period
1195What:		/sys/.../events/in_proximity0_thresh_period
1196What:		/sys/.../events/in_activity_still_thresh_rising_period
1197What:		/sys/.../events/in_activity_still_thresh_falling_period
1198What:		/sys/.../events/in_activity_walking_thresh_rising_period
1199What:		/sys/.../events/in_activity_walking_thresh_falling_period
1200What:		/sys/.../events/in_activity_jogging_thresh_rising_period
1201What:		/sys/.../events/in_activity_jogging_thresh_falling_period
1202What:		/sys/.../events/in_activity_running_thresh_rising_period
1203What:		/sys/.../events/in_activity_running_thresh_falling_period
1204What:		/sys/.../events/in_illuminance_thresh_either_period
1205KernelVersion:	2.6.37
1206Contact:	linux-iio@vger.kernel.org
1207Description:
1208		Period of time (in seconds) for which the condition must be
1209		met before an event is generated. If direction is not
1210		specified then this period applies to both directions.
1211
1212What:		/sys/.../events/in_accel_thresh_rising_low_pass_filter_3db
1213What:		/sys/.../events/in_anglvel_thresh_rising_low_pass_filter_3db
1214What:		/sys/.../events/in_magn_thresh_rising_low_pass_filter_3db
1215KernelVersion:	4.2
1216Contact:	linux-iio@vger.kernel.org
1217Description:
1218		If a low pass filter can be applied to the event generation
1219		this property gives its 3db frequency in Hz.
1220		A value of zero disables the filter.
1221
1222What:		/sys/.../events/in_accel_thresh_rising_high_pass_filter_3db
1223What:		/sys/.../events/in_anglvel_thresh_rising_high_pass_filter_3db
1224What:		/sys/.../events/in_magn_thresh_rising_high_pass_filter_3db
1225KernelVersion:	4.2
1226Contact:	linux-iio@vger.kernel.org
1227Description:
1228		If a high pass filter can be applied to the event generation
1229		this property gives its 3db frequency in Hz.
1230		A value of zero disables the filter.
1231
1232What:		/sys/.../events/in_activity_still_thresh_rising_en
1233What:		/sys/.../events/in_activity_still_thresh_falling_en
1234What:		/sys/.../events/in_activity_walking_thresh_rising_en
1235What:		/sys/.../events/in_activity_walking_thresh_falling_en
1236What:		/sys/.../events/in_activity_jogging_thresh_rising_en
1237What:		/sys/.../events/in_activity_jogging_thresh_falling_en
1238What:		/sys/.../events/in_activity_running_thresh_rising_en
1239What:		/sys/.../events/in_activity_running_thresh_falling_en
1240KernelVersion:	3.19
1241Contact:	linux-iio@vger.kernel.org
1242Description:
1243		Enables or disables activity events. Depending on direction
1244		an event is generated when sensor ENTERS or LEAVES a given state.
1245
1246What:		/sys/.../events/in_activity_still_thresh_rising_value
1247What:		/sys/.../events/in_activity_still_thresh_falling_value
1248What:		/sys/.../events/in_activity_walking_thresh_rising_value
1249What:		/sys/.../events/in_activity_walking_thresh_falling_value
1250What:		/sys/.../events/in_activity_jogging_thresh_rising_value
1251What:		/sys/.../events/in_activity_jogging_thresh_falling_value
1252What:		/sys/.../events/in_activity_running_thresh_rising_value
1253What:		/sys/.../events/in_activity_running_thresh_falling_value
1254KernelVersion:	3.19
1255Contact:	linux-iio@vger.kernel.org
1256Description:
1257		Confidence value (in units as percentage) to be used
1258		for deciding when an event should be generated. E.g for
1259		running: If the confidence value reported by the sensor
1260		is greater than in_activity_running_thresh_rising_value
1261		then the sensor ENTERS running state. Conversely, if the
1262		confidence value reported by the sensor is lower than
1263		in_activity_running_thresh_falling_value then the sensor
1264		is LEAVING running state.
1265
1266What:		/sys/.../iio:deviceX/events/in_accel_mag_en
1267What:		/sys/.../iio:deviceX/events/in_accel_mag_rising_en
1268What:		/sys/.../iio:deviceX/events/in_accel_mag_falling_en
1269What:		/sys/.../iio:deviceX/events/in_accel_x_mag_en
1270What:		/sys/.../iio:deviceX/events/in_accel_x_mag_rising_en
1271What:		/sys/.../iio:deviceX/events/in_accel_x_mag_falling_en
1272What:		/sys/.../iio:deviceX/events/in_accel_y_mag_en
1273What:		/sys/.../iio:deviceX/events/in_accel_y_mag_rising_en
1274What:		/sys/.../iio:deviceX/events/in_accel_y_mag_falling_en
1275What:		/sys/.../iio:deviceX/events/in_accel_z_mag_en
1276What:		/sys/.../iio:deviceX/events/in_accel_z_mag_rising_en
1277What:		/sys/.../iio:deviceX/events/in_accel_z_mag_falling_en
1278What:		/sys/.../iio:deviceX/events/in_accel_x&y&z_mag_rising_en
1279What:		/sys/.../iio:deviceX/events/in_accel_x&y&z_mag_falling_en
1280KernelVersion:	2.6.37
1281Contact:	linux-iio@vger.kernel.org
1282Description:
1283		Similar to in_accel_x_thresh[_rising|_falling]_en, but here the
1284		magnitude of the channel is compared to the threshold, not its
1285		signed value.
1286
1287What:		/sys/.../events/in_accel_raw_mag_value
1288What:		/sys/.../events/in_accel_x_raw_mag_rising_value
1289What:		/sys/.../events/in_accel_y_raw_mag_rising_value
1290What:		/sys/.../events/in_accel_z_raw_mag_rising_value
1291KernelVersion:	2.6.37
1292Contact:	linux-iio@vger.kernel.org
1293Description:
1294		The value to which the magnitude of the channel is compared. If
1295		number or direction is not specified, applies to all channels of
1296		this type.
1297
1298What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_en
1299What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_rising_en
1300What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_falling_en
1301What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_en
1302What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_rising_en
1303What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_falling_en
1304KernelVersion:	5.18
1305Contact:	linux-iio@vger.kernel.org
1306Description:
1307		Similar to in_accel_mag[_y][_rising|_falling]_en, but the event
1308		value is relative to a reference magnitude. The reference magnitude
1309		includes the graviational acceleration.
1310
1311What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_value
1312What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_rising_value
1313What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_falling_value
1314What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_value
1315What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_rising_value
1316What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_falling_value
1317KernelVersion:	5.18
1318Contact:	linux-iio@vger.kernel.org
1319Description:
1320		The value to which the reference magnitude of the channel is
1321		compared. If the axis is not specified, it applies to all channels
1322		of this type.
1323
1324What:		/sys/.../events/in_steps_change_en
1325KernelVersion:	4.0
1326Contact:	linux-iio@vger.kernel.org
1327Description:
1328		Event generated when channel passes a threshold on the absolute
1329		change in value. E.g. for steps: a step change event is
1330		generated each time the user takes N steps, where N is set using
1331		in_steps_change_value.
1332
1333What:		/sys/.../events/in_steps_change_value
1334KernelVersion:	4.0
1335Contact:	linux-iio@vger.kernel.org
1336Description:
1337		Specifies the value of change threshold that the
1338		device is comparing against for the events enabled by
1339		<type>[Y][_name]_roc[_rising|falling|]_en. E.g. for steps:
1340		if set to 3, a step change event will be generated every 3
1341		steps.
1342
1343What:		/sys/bus/iio/devices/iio:deviceX/trigger/current_trigger
1344KernelVersion:	2.6.35
1345Contact:	linux-iio@vger.kernel.org
1346Description:
1347		The name of the trigger source being used, as per string given
1348		in /sys/class/iio/triggerY/name.
1349
1350What:		/sys/bus/iio/devices/iio:deviceX/bufferY/length
1351KernelVersion:	5.11
1352Contact:	linux-iio@vger.kernel.org
1353Description:
1354		Number of scans contained by the buffer.
1355
1356What:		/sys/bus/iio/devices/iio:deviceX/bufferY/enable
1357KernelVersion:	5.11
1358Contact:	linux-iio@vger.kernel.org
1359Description:
1360		Actually start the buffer capture up.  Will start trigger
1361		if first device and appropriate.
1362
1363		Note that it might be impossible to configure other attributes,
1364		(e.g.: events, scale, sampling rate) if they impact the currently
1365		active buffer capture session.
1366
1367What:		/sys/bus/iio/devices/iio:deviceX/bufferY
1368KernelVersion:	5.11
1369Contact:	linux-iio@vger.kernel.org
1370Description:
1371		Directory containing interfaces for elements that will be
1372		captured for a single triggered sample set in the buffer.
1373
1374		Since kernel 5.11 the scan_elements attributes are merged into
1375		the bufferY directory, to be configurable per buffer.
1376
1377What:		/sys/.../iio:deviceX/bufferY/in_accel_x_en
1378What:		/sys/.../iio:deviceX/bufferY/in_accel_y_en
1379What:		/sys/.../iio:deviceX/bufferY/in_accel_z_en
1380What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_x_en
1381What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_y_en
1382What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_z_en
1383What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_x_en
1384What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_y_en
1385What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_z_en
1386What:		/sys/.../iio:deviceX/bufferY/in_anglvel_x_en
1387What:		/sys/.../iio:deviceX/bufferY/in_anglvel_y_en
1388What:		/sys/.../iio:deviceX/bufferY/in_anglvel_z_en
1389What:		/sys/.../iio:deviceX/bufferY/in_magn_x_en
1390What:		/sys/.../iio:deviceX/bufferY/in_magn_y_en
1391What:		/sys/.../iio:deviceX/bufferY/in_magn_z_en
1392What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_en
1393What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_en
1394What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_tilt_comp_en
1395What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_tilt_comp_en
1396What:		/sys/.../iio:deviceX/bufferY/in_timestamp_en
1397What:		/sys/.../iio:deviceX/bufferY/in_voltageY_supply_en
1398What:		/sys/.../iio:deviceX/bufferY/in_voltageY_en
1399What:		/sys/.../iio:deviceX/bufferY/in_voltageY-voltageZ_en
1400What:		/sys/.../iio:deviceX/bufferY/in_voltageY_i_en
1401What:		/sys/.../iio:deviceX/bufferY/in_voltageY_q_en
1402What:		/sys/.../iio:deviceX/bufferY/in_voltage_i_en
1403What:		/sys/.../iio:deviceX/bufferY/in_voltage_q_en
1404What:		/sys/.../iio:deviceX/bufferY/in_incli_x_en
1405What:		/sys/.../iio:deviceX/bufferY/in_incli_y_en
1406What:		/sys/.../iio:deviceX/bufferY/in_pressureY_en
1407What:		/sys/.../iio:deviceX/bufferY/in_pressure_en
1408What:		/sys/.../iio:deviceX/bufferY/in_rot_quaternion_en
1409What:		/sys/.../iio:deviceX/bufferY/in_proximity_en
1410KernelVersion:	5.11
1411Contact:	linux-iio@vger.kernel.org
1412Description:
1413		Scan element control for triggered data capture.
1414
1415What:		/sys/.../iio:deviceX/bufferY/in_accel_type
1416What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_type
1417What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_type
1418What:		/sys/.../iio:deviceX/bufferY/in_anglvel_type
1419What:		/sys/.../iio:deviceX/bufferY/in_magn_type
1420What:		/sys/.../iio:deviceX/bufferY/in_incli_type
1421What:		/sys/.../iio:deviceX/bufferY/in_voltageY_type
1422What:		/sys/.../iio:deviceX/bufferY/in_voltage_type
1423What:		/sys/.../iio:deviceX/bufferY/in_voltageY_supply_type
1424What:		/sys/.../iio:deviceX/bufferY/in_voltageY_i_type
1425What:		/sys/.../iio:deviceX/bufferY/in_voltageY_q_type
1426What:		/sys/.../iio:deviceX/bufferY/in_voltage_i_type
1427What:		/sys/.../iio:deviceX/bufferY/in_voltage_q_type
1428What:		/sys/.../iio:deviceX/bufferY/in_timestamp_type
1429What:		/sys/.../iio:deviceX/bufferY/in_pressureY_type
1430What:		/sys/.../iio:deviceX/bufferY/in_pressure_type
1431What:		/sys/.../iio:deviceX/bufferY/in_rot_quaternion_type
1432What:		/sys/.../iio:deviceX/bufferY/in_proximity_type
1433KernelVersion:	5.11
1434Contact:	linux-iio@vger.kernel.org
1435Description:
1436		Description of the scan element data storage within the buffer
1437		and hence the form in which it is read from user-space.
1438		Form is [be|le]:[s|u]bits/storagebits[>>shift].
1439		be or le specifies big or little endian. s or u specifies if
1440		signed (2's complement) or unsigned. bits is the number of bits
1441		of data and storagebits is the space (after padding) that it
1442		occupies in the buffer. shift if specified, is the shift that
1443		needs to be applied prior to masking out unused bits. Some
1444		devices put their data in the middle of the transferred elements
1445		with additional information on both sides.  Note that some
1446		devices will have additional information in the unused bits
1447		so to get a clean value, the bits value must be used to mask
1448		the buffer output value appropriately.  The storagebits value
1449		also specifies the data alignment.  So s48/64>>2 will be a
1450		signed 48 bit integer stored in a 64 bit location aligned to
1451		a 64 bit boundary. To obtain the clean value, shift right 2
1452		and apply a mask to zero the top 16 bits of the result.
1453		For other storage combinations this attribute will be extended
1454		appropriately.
1455
1456What:		/sys/.../iio:deviceX/scan_elements/in_accel_type_available
1457KernelVersion:	2.6.37
1458Contact:	linux-iio@vger.kernel.org
1459Description:
1460		If the type parameter can take one of a small set of values,
1461		this attribute lists them.
1462
1463What:		/sys/.../iio:deviceX/bufferY/in_voltageY_index
1464What:		/sys/.../iio:deviceX/bufferY/in_voltageY_supply_index
1465What:		/sys/.../iio:deviceX/bufferY/in_voltageY_i_index
1466What:		/sys/.../iio:deviceX/bufferY/in_voltageY_q_index
1467What:		/sys/.../iio:deviceX/bufferY/in_voltage_i_index
1468What:		/sys/.../iio:deviceX/bufferY/in_voltage_q_index
1469What:		/sys/.../iio:deviceX/bufferY/in_accel_x_index
1470What:		/sys/.../iio:deviceX/bufferY/in_accel_y_index
1471What:		/sys/.../iio:deviceX/bufferY/in_accel_z_index
1472What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_x_index
1473What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_y_index
1474What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_z_index
1475What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_x_index
1476What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_y_index
1477What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_z_index
1478What:		/sys/.../iio:deviceX/bufferY/in_anglvel_x_index
1479What:		/sys/.../iio:deviceX/bufferY/in_anglvel_y_index
1480What:		/sys/.../iio:deviceX/bufferY/in_anglvel_z_index
1481What:		/sys/.../iio:deviceX/bufferY/in_magn_x_index
1482What:		/sys/.../iio:deviceX/bufferY/in_magn_y_index
1483What:		/sys/.../iio:deviceX/bufferY/in_magn_z_index
1484What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_index
1485What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_index
1486What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_tilt_comp_index
1487What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_tilt_comp_index
1488What:		/sys/.../iio:deviceX/bufferY/in_incli_x_index
1489What:		/sys/.../iio:deviceX/bufferY/in_incli_y_index
1490What:		/sys/.../iio:deviceX/bufferY/in_timestamp_index
1491What:		/sys/.../iio:deviceX/bufferY/in_pressureY_index
1492What:		/sys/.../iio:deviceX/bufferY/in_pressure_index
1493What:		/sys/.../iio:deviceX/bufferY/in_rot_quaternion_index
1494What:		/sys/.../iio:deviceX/bufferY/in_proximity_index
1495KernelVersion:	5.11
1496Contact:	linux-iio@vger.kernel.org
1497Description:
1498		A single positive integer specifying the position of this
1499		scan element in the buffer. Note these are not dependent on
1500		what is enabled and may not be contiguous. Thus for user-space
1501		to establish the full layout these must be used in conjunction
1502		with all _en attributes to establish which channels are present,
1503		and the relevant _type attributes to establish the data storage
1504		format.
1505
1506What:		/sys/.../iio:deviceX/in_activity_still_input
1507What:		/sys/.../iio:deviceX/in_activity_walking_input
1508What:		/sys/.../iio:deviceX/in_activity_jogging_input
1509What:		/sys/.../iio:deviceX/in_activity_running_input
1510KernelVersion:	3.19
1511Contact:	linux-iio@vger.kernel.org
1512Description:
1513		This attribute is used to read the confidence for an activity
1514		expressed in units as percentage.
1515
1516What:		/sys/.../iio:deviceX/in_anglvel_z_quadrature_correction_raw
1517KernelVersion:	2.6.38
1518Contact:	linux-iio@vger.kernel.org
1519Description:
1520		This attribute is used to read the amount of quadrature error
1521		present in the device at a given time.
1522
1523What:		/sys/.../iio:deviceX/in_accelX_power_mode
1524KernelVersion:	3.11
1525Contact:	linux-iio@vger.kernel.org
1526Description:
1527		Specifies the chip power mode.
1528		low_noise: reduce noise level from ADC,
1529		low_power: enable low current consumption.
1530		For a list of available output power modes read
1531		in_accel_power_mode_available.
1532
1533What:		/sys/.../iio:deviceX/in_energy_input
1534What:		/sys/.../iio:deviceX/in_energy_raw
1535KernelVersion:	4.0
1536Contact:	linux-iio@vger.kernel.org
1537Description:
1538		This attribute is used to read the energy value reported by the
1539		device (e.g.: human activity sensors report energy burnt by the
1540		user). Units after application of scale are Joules.
1541
1542What:		/sys/.../iio:deviceX/in_distance_input
1543What:		/sys/.../iio:deviceX/in_distance_raw
1544KernelVersion:	4.0
1545Contact:	linux-iio@vger.kernel.org
1546Description:
1547		This attribute is used to read the measured distance to an object
1548		or the distance covered by the user since the last reboot while
1549		activated. Units after application of scale are meters.
1550
1551What:		/sys/bus/iio/devices/iio:deviceX/store_eeprom
1552KernelVersion:	3.4.0
1553Contact:	linux-iio@vger.kernel.org
1554Description:
1555		Writing '1' stores the current device configuration into
1556		on-chip EEPROM. After power-up or chip reset the device will
1557		automatically load the saved configuration.
1558
1559What:		/sys/.../iio:deviceX/in_proximity_raw
1560What:		/sys/.../iio:deviceX/in_proximity_input
1561What:		/sys/.../iio:deviceX/in_proximityY_raw
1562KernelVersion:	3.4
1563Contact:	linux-iio@vger.kernel.org
1564Description:
1565		Proximity measurement indicating that some
1566		object is near the sensor, usually by observing
1567		reflectivity of infrared or ultrasound emitted.
1568
1569		Often these sensors are unit less and as such conversion
1570		to SI units is not possible. Higher proximity measurements
1571		indicate closer objects, and vice versa. Units after
1572		application of scale and offset are meters.
1573
1574What:		/sys/.../iio:deviceX/in_illuminance_input
1575What:		/sys/.../iio:deviceX/in_illuminance_raw
1576What:		/sys/.../iio:deviceX/in_illuminanceY_input
1577What:		/sys/.../iio:deviceX/in_illuminanceY_raw
1578What:		/sys/.../iio:deviceX/in_illuminanceY_mean_raw
1579What:		/sys/.../iio:deviceX/in_illuminance_ir_raw
1580What:		/sys/.../iio:deviceX/in_illuminance_clear_raw
1581KernelVersion:	3.4
1582Contact:	linux-iio@vger.kernel.org
1583Description:
1584		Illuminance measurement, units after application of scale
1585		and offset are lux.
1586
1587What:		/sys/.../iio:deviceX/in_intensityY_raw
1588What:		/sys/.../iio:deviceX/in_intensityY_ir_raw
1589What:		/sys/.../iio:deviceX/in_intensityY_both_raw
1590What:		/sys/.../iio:deviceX/in_intensityY_uv_raw
1591What:		/sys/.../iio:deviceX/in_intensityY_uva_raw
1592What:		/sys/.../iio:deviceX/in_intensityY_uvb_raw
1593What:		/sys/.../iio:deviceX/in_intensityY_duv_raw
1594KernelVersion:	3.4
1595Contact:	linux-iio@vger.kernel.org
1596Description:
1597		Unit-less light intensity. Modifiers both and ir indicate
1598		that measurements contain visible and infrared light
1599		components or just infrared light, respectively. Modifier
1600		uv indicates that measurements contain ultraviolet light
1601		components. Modifiers uva, uvb and duv indicate that
1602		measurements contain A, B or deep (C) ultraviolet light
1603		components respectively.
1604
1605What:		/sys/.../iio:deviceX/in_uvindex_input
1606KernelVersion:	4.6
1607Contact:	linux-iio@vger.kernel.org
1608Description:
1609		UV light intensity index measuring the human skin's response to
1610		different wavelength of sunlight weighted according to the
1611		standardised CIE Erythemal Action Spectrum. UV index values range
1612		from 0 (low) to >=11 (extreme).
1613
1614What:		/sys/.../iio:deviceX/in_intensity_integration_time
1615What:		/sys/.../iio:deviceX/in_intensity_red_integration_time
1616What:		/sys/.../iio:deviceX/in_intensity_green_integration_time
1617What:		/sys/.../iio:deviceX/in_intensity_blue_integration_time
1618What:		/sys/.../iio:deviceX/in_intensity_clear_integration_time
1619What:		/sys/.../iio:deviceX/in_illuminance_integration_time
1620KernelVersion:	3.12
1621Contact:	linux-iio@vger.kernel.org
1622Description:
1623		This attribute is used to get/set the integration time in
1624		seconds. If shared across all channels of a given type,
1625		<type>_integration_time is used.
1626
1627What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_integration_time
1628KernelVersion:	4.0
1629Contact:	linux-iio@vger.kernel.org
1630Description:
1631		Number of seconds in which to compute speed.
1632
1633What:		/sys/bus/iio/devices/iio:deviceX/in_rot_quaternion_raw
1634KernelVersion:	3.15
1635Contact:	linux-iio@vger.kernel.org
1636Description:
1637		Raw value of quaternion components using a format
1638		x y z w. Here x, y, and z component represents the axis about
1639		which a rotation will occur and w component represents the
1640		amount of rotation.
1641
1642What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_raw
1643What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_raw
1644What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_raw
1645What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_raw
1646KernelVersion:	3.15
1647Contact:	linux-iio@vger.kernel.org
1648Description:
1649		Raw value of rotation from true/magnetic north measured with
1650		or without compensation from tilt sensors.
1651
1652What:		/sys/bus/iio/devices/iio:deviceX/in_currentX_raw
1653What:		/sys/bus/iio/devices/iio:deviceX/in_currentX_i_raw
1654What:		/sys/bus/iio/devices/iio:deviceX/in_currentX_q_raw
1655KernelVersion:	3.18
1656Contact:	linux-iio@vger.kernel.org
1657Description:
1658		Raw current measurement from channel X. Units are in milliamps
1659		after application of scale and offset. If no offset or scale is
1660		present, output should be considered as processed with the
1661		unit in milliamps.
1662
1663		Channels with 'i' and 'q' modifiers always exist in pairs and both
1664		channels refer to the same signal. The 'i' channel contains the in-phase
1665		component of the signal while the 'q' channel contains the quadrature
1666		component.
1667
1668What:		/sys/.../iio:deviceX/in_energy_en
1669What:		/sys/.../iio:deviceX/in_distance_en
1670What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_en
1671What:		/sys/.../iio:deviceX/in_steps_en
1672KernelVersion:	3.19
1673Contact:	linux-iio@vger.kernel.org
1674Description:
1675		Activates a device feature that runs in firmware/hardware.
1676		E.g. for steps: the pedometer saves power while not used;
1677		when activated, it will count the steps taken by the user in
1678		firmware and export them through in_steps_input.
1679
1680What:		/sys/.../iio:deviceX/in_steps_input
1681KernelVersion:	3.19
1682Contact:	linux-iio@vger.kernel.org
1683Description:
1684		This attribute is used to read the number of steps taken by the user
1685		since the last reboot while activated.
1686
1687What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_input
1688What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_raw
1689KernelVersion:	3.19
1690Contact:	linux-iio@vger.kernel.org
1691Description:
1692		This attribute is used to read the current speed value of the
1693		user (which is the norm or magnitude of the velocity vector).
1694		Units after application of scale are m/s.
1695
1696What:		/sys/.../iio:deviceX/in_steps_debounce_count
1697KernelVersion:	4.0
1698Contact:	linux-iio@vger.kernel.org
1699Description:
1700		Specifies the number of steps that must occur within
1701		in_steps_filter_debounce_time for the pedometer to decide the
1702		consumer is making steps.
1703
1704What:		/sys/.../iio:deviceX/in_steps_debounce_time
1705KernelVersion:	4.0
1706Contact:	linux-iio@vger.kernel.org
1707Description:
1708		Specifies number of seconds in which we compute the steps
1709		that occur in order to decide if the consumer is making steps.
1710
1711What:		/sys/bus/iio/devices/iio:deviceX/bufferY/watermark
1712KernelVersion:	5.11
1713Contact:	linux-iio@vger.kernel.org
1714Description:
1715		A single positive integer specifying the maximum number of scan
1716		elements to wait for.
1717
1718		Poll will block until the watermark is reached.
1719
1720		Blocking read will wait until the minimum between the requested
1721		read amount or the low water mark is available.
1722
1723		Non-blocking read will retrieve the available samples from the
1724		buffer even if there are less samples then watermark level. This
1725		allows the application to block on poll with a timeout and read
1726		the available samples after the timeout expires and thus have a
1727		maximum delay guarantee.
1728
1729What:		/sys/bus/iio/devices/iio:deviceX/bufferY/data_available
1730KernelVersion:	5.11
1731Contact:	linux-iio@vger.kernel.org
1732Description:
1733		A read-only value indicating the bytes of data available in the
1734		buffer. In the case of an output buffer, this indicates the
1735		amount of empty space available to write data to. In the case of
1736		an input buffer, this indicates the amount of data available for
1737		reading.
1738
1739What:		/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_enabled
1740KernelVersion: 4.2
1741Contact:	linux-iio@vger.kernel.org
1742Description:
1743		A read-only boolean value that indicates if the hardware fifo is
1744		currently enabled or disabled. If the device does not have a
1745		hardware fifo this entry is not present.
1746		The hardware fifo is enabled when the buffer is enabled if the
1747		current hardware fifo watermark level is set and other current
1748		device settings allows it (e.g. if a trigger is set that samples
1749		data differently that the hardware fifo does then hardware fifo
1750		will not enabled).
1751
1752		If the hardware fifo is enabled and the level of the hardware
1753		fifo reaches the hardware fifo watermark level the device will
1754		flush its hardware fifo to the device buffer. Doing a non
1755		blocking read on the device when no samples are present in the
1756		device buffer will also force a flush.
1757
1758		When the hardware fifo is enabled there is no need to use a
1759		trigger to use buffer mode since the watermark settings
1760		guarantees that the hardware fifo is flushed to the device
1761		buffer.
1762
1763What:		/sys/bus/iio/devices/iio:device*/buffer/hwfifo_timeout
1764KernelVersion:	4.12
1765Contact:	linux-iio@vger.kernel.org
1766Description:
1767		A read/write property to provide capability to delay reporting of
1768		samples till a timeout is reached. This allows host processors to
1769		sleep, while the sensor is storing samples in its internal fifo.
1770		The maximum timeout in seconds can be specified by setting
1771		hwfifo_timeout.The current delay can be read by reading
1772		hwfifo_timeout. A value of 0 means that there is no timeout.
1773
1774What:		/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark
1775KernelVersion: 4.2
1776Contact:	linux-iio@vger.kernel.org
1777Description:
1778		Read-only entry that contains a single integer specifying the
1779		current watermark level for the hardware fifo. If the device
1780		does not have a hardware fifo this entry is not present.
1781		The watermark level for the hardware fifo is set by the driver
1782		based on the value set by the user in buffer/watermark but
1783		taking into account hardware limitations (e.g. most hardware
1784		buffers are limited to 32-64 samples, some hardware buffers
1785		watermarks are fixed or have minimum levels).  A value of 0
1786		means that the hardware watermark is unset.
1787
1788What:		/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_min
1789KernelVersion: 4.2
1790Contact:       linux-iio@vger.kernel.org
1791Description:
1792		A single positive integer specifying the minimum watermark level
1793		for the hardware fifo of this device. If the device does not
1794		have a hardware fifo this entry is not present.
1795
1796		If the user sets buffer/watermark to a value less than this one,
1797		then the hardware watermark will remain unset.
1798
1799What:	       /sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_max
1800KernelVersion: 4.2
1801Contact:       linux-iio@vger.kernel.org
1802Description:
1803		A single positive integer specifying the maximum watermark level
1804		for the hardware fifo of this device. If the device does not
1805		have a hardware fifo this entry is not present.
1806
1807		If the user sets buffer/watermark to a value greater than this
1808		one, then the hardware watermark will be capped at this value.
1809
1810What:	       /sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_available
1811KernelVersion: 4.2
1812Contact:       linux-iio@vger.kernel.org
1813Description:
1814		A list of positive integers specifying the available watermark
1815		levels for the hardware fifo. This entry is optional and if it
1816		is not present it means that all the values between
1817		hwfifo_watermark_min and hwfifo_watermark_max are supported.
1818
1819		If the user sets buffer/watermark to a value greater than
1820		hwfifo_watermak_min but not equal to any of the values in this
1821		list, the driver will chose an appropriate value for the
1822		hardware fifo watermark level.
1823
1824What:		/sys/bus/iio/devices/iio:deviceX/in_temp_calibemissivity
1825What:		/sys/bus/iio/devices/iio:deviceX/in_tempX_calibemissivity
1826What:		/sys/bus/iio/devices/iio:deviceX/in_temp_object_calibemissivity
1827What:		/sys/bus/iio/devices/iio:deviceX/in_tempX_object_calibemissivity
1828KernelVersion:	4.1
1829Contact:	linux-iio@vger.kernel.org
1830Description:
1831		The emissivity ratio of the surface in the field of view of the
1832		contactless temperature sensor.  Emissivity varies from 0 to 1,
1833		with 1 being the emissivity of a black body.
1834
1835What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_oversampling_ratio
1836What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_oversampling_ratio
1837What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_oversampling_ratio
1838KernelVersion:	4.2
1839Contact:	linux-iio@vger.kernel.org
1840Description:
1841		Hardware applied number of measurements for acquiring one
1842		data point. The HW will do <type>[_name]_oversampling_ratio
1843		measurements and return the average value as output data. Each
1844		value resulted from <type>[_name]_oversampling_ratio measurements
1845		is considered as one sample for <type>[_name]_sampling_frequency.
1846
1847What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_raw
1848What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationX_raw
1849What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_co2_raw
1850What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationX_co2_raw
1851What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_ethanol_raw
1852What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationX_ethanol_raw
1853What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_h2_raw
1854What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationX_h2_raw
1855What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_o2_raw
1856What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationX_o2_raw
1857What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_voc_raw
1858What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationX_voc_raw
1859KernelVersion:	4.3
1860Contact:	linux-iio@vger.kernel.org
1861Description:
1862		Raw (unscaled no offset etc.) reading of a substance. Units
1863		after application of scale and offset are percents.
1864
1865What:		/sys/bus/iio/devices/iio:deviceX/in_resistance_raw
1866What:		/sys/bus/iio/devices/iio:deviceX/in_resistanceX_raw
1867What:		/sys/bus/iio/devices/iio:deviceX/out_resistance_raw
1868What:		/sys/bus/iio/devices/iio:deviceX/out_resistanceX_raw
1869KernelVersion:	4.3
1870Contact:	linux-iio@vger.kernel.org
1871Description:
1872		Raw (unscaled no offset etc.) resistance reading.
1873		Units after application of scale and offset are ohms.
1874
1875What:		/sys/bus/iio/devices/iio:deviceX/heater_enable
1876KernelVersion:	4.1.0
1877Contact:	linux-iio@vger.kernel.org
1878Description:
1879		'1' (enable) or '0' (disable) specifying the enable
1880		of heater function. Same reading values apply.
1881
1882		This ABI is especially applicable for humidity sensors
1883		to heatup the device and get rid of any condensation
1884		in some humidity environment
1885
1886What:		/sys/bus/iio/devices/iio:deviceX/in_ph_raw
1887KernelVersion:	4.5
1888Contact:	linux-iio@vger.kernel.org
1889Description:
1890		Raw (unscaled no offset etc.) pH reading of a substance as a negative
1891		base-10 logarithm of hydrodium ions in a litre of water.
1892
1893What:           /sys/bus/iio/devices/iio:deviceX/mount_matrix
1894What:           /sys/bus/iio/devices/iio:deviceX/in_mount_matrix
1895What:           /sys/bus/iio/devices/iio:deviceX/out_mount_matrix
1896What:           /sys/bus/iio/devices/iio:deviceX/in_anglvel_mount_matrix
1897What:           /sys/bus/iio/devices/iio:deviceX/in_accel_mount_matrix
1898KernelVersion:  4.6
1899Contact:        linux-iio@vger.kernel.org
1900Description:
1901		Mounting matrix for IIO sensors. This is a rotation matrix which
1902		informs userspace about sensor chip's placement relative to the
1903		main hardware it is mounted on.
1904
1905		Main hardware placement is defined according to the local
1906		reference frame related to the physical quantity the sensor
1907		measures.
1908
1909		Given that the rotation matrix is defined in a board specific
1910		way (platform data and / or device-tree), the main hardware
1911		reference frame definition is left to the implementor's choice
1912		(see below for a magnetometer example).
1913
1914		Applications should apply this rotation matrix to samples so
1915		that when main hardware reference frame is aligned onto local
1916		reference frame, then sensor chip reference frame is also
1917		perfectly aligned with it.
1918
1919		Matrix is a 3x3 unitary matrix and typically looks like
1920		[0, 1, 0; 1, 0, 0; 0, 0, -1]. Identity matrix
1921		[1, 0, 0; 0, 1, 0; 0, 0, 1] means sensor chip and main hardware
1922		are perfectly aligned with each other.
1923
1924		For example, a mounting matrix for a magnetometer sensor informs
1925		userspace about sensor chip's ORIENTATION relative to the main
1926		hardware.
1927
1928		More specifically, main hardware orientation is defined with
1929		respect to the LOCAL EARTH GEOMAGNETIC REFERENCE FRAME where :
1930
1931		* Y is in the ground plane and positive towards magnetic North ;
1932		* X is in the ground plane, perpendicular to the North axis and
1933		  positive towards the East ;
1934		* Z is perpendicular to the ground plane and positive upwards.
1935
1936		An implementor might consider that for a hand-held device, a
1937		'natural' orientation would be 'front facing camera at the top'.
1938		The main hardware reference frame could then be described as :
1939
1940		* Y is in the plane of the screen and is positive towards the
1941		  top of the screen ;
1942		* X is in the plane of the screen, perpendicular to Y axis, and
1943		  positive towards the right hand side of the screen ;
1944		* Z is perpendicular to the screen plane and positive out of the
1945		  screen.
1946
1947		Another example for a quadrotor UAV might be :
1948
1949		* Y is in the plane of the propellers and positive towards the
1950		  front-view camera;
1951		* X is in the plane of the propellers, perpendicular to Y axis,
1952		  and positive towards the starboard side of the UAV ;
1953		* Z is perpendicular to propellers plane and positive upwards.
1954
1955What:		/sys/bus/iio/devices/iio:deviceX/in_electricalconductivity_raw
1956KernelVersion:	4.8
1957Contact:	linux-iio@vger.kernel.org
1958Description:
1959		Raw (unscaled no offset etc.) electric conductivity reading.
1960		Units after application of scale and offset are siemens per
1961		meter.
1962
1963What:		/sys/bus/iio/devices/iio:deviceX/in_countY_raw
1964KernelVersion:	4.10
1965Contact:	linux-iio@vger.kernel.org
1966Description:
1967		This interface is deprecated; please use the Counter subsystem.
1968
1969		Raw counter device counts from channel Y. For quadrature
1970		counters, multiplication by an available [Y]_scale results in
1971		the counts of a single quadrature signal phase from channel Y.
1972
1973What:		/sys/bus/iio/devices/iio:deviceX/in_indexY_raw
1974KernelVersion:	4.10
1975Contact:	linux-iio@vger.kernel.org
1976Description:
1977		This interface is deprecated; please use the Counter subsystem.
1978
1979		Raw counter device index value from channel Y. This attribute
1980		provides an absolute positional reference (e.g. a pulse once per
1981		revolution) which may be used to home positional systems as
1982		required.
1983
1984What:		/sys/bus/iio/devices/iio:deviceX/in_count_count_direction_available
1985KernelVersion:	4.12
1986Contact:	linux-iio@vger.kernel.org
1987Description:
1988		This interface is deprecated; please use the Counter subsystem.
1989
1990		A list of possible counting directions which are:
1991
1992		- "up"	: counter device is increasing.
1993		- "down": counter device is decreasing.
1994
1995What:		/sys/bus/iio/devices/iio:deviceX/in_countY_count_direction
1996KernelVersion:	4.12
1997Contact:	linux-iio@vger.kernel.org
1998Description:
1999		This interface is deprecated; please use the Counter subsystem.
2000
2001		Raw counter device counters direction for channel Y.
2002
2003What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_label
2004What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_label
2005KernelVersion:	5.8
2006Contact:	linux-iio@vger.kernel.org
2007Description:
2008		Optional symbolic label to a device channel.
2009		If a label is defined for this channel add that to the channel
2010		specific attributes. This is useful for userspace to be able to
2011		better identify an individual channel.
2012
2013What:		/sys/bus/iio/devices/iio:deviceX/in_phaseY_raw
2014KernelVersion:	4.18
2015Contact:	linux-iio@vger.kernel.org
2016Description:
2017		Raw (unscaled) phase difference reading from channel Y.
2018		Units after application of scale and offset are radians.
2019
2020What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm1_input
2021What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm1_input
2022What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm2p5_input
2023What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm2p5_input
2024What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm4_input
2025What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm4_input
2026What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm10_input
2027What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm10_input
2028KernelVersion:	4.22
2029Contact:	linux-iio@vger.kernel.org
2030Description:
2031		Mass concentration reading of particulate matter in ug / m3.
2032		pmX consists of particles with aerodynamic diameter less or
2033		equal to X micrometers.
2034
2035What:		/sys/bus/iio/devices/iio:deviceX/events/in_illuminance_period_available
2036Date:		November 2019
2037KernelVersion:	5.4
2038Contact:	linux-iio@vger.kernel.org
2039Description:
2040		List of valid periods (in seconds) for which the light intensity
2041		must be above the threshold level before interrupt is asserted.
2042
2043What:		/sys/bus/iio/devices/iio:deviceX/in_filter_notch_center_frequency
2044KernelVersion:	5.5
2045Contact:	linux-iio@vger.kernel.org
2046Description:
2047		Center frequency in Hz for a notch filter. Used i.e. for line
2048		noise suppression.
2049
2050What:		/sys/bus/iio/devices/iio:deviceX/in_temp_thermocouple_type
2051KernelVersion:	5.5
2052Contact:	linux-iio@vger.kernel.org
2053Description:
2054		One of the following thermocouple types: B, E, J, K, N, R, S, T.
2055
2056What:		/sys/bus/iio/devices/iio:deviceX/in_temp_object_calibambient
2057What:		/sys/bus/iio/devices/iio:deviceX/in_tempX_object_calibambient
2058KernelVersion:	5.10
2059Contact:	linux-iio@vger.kernel.org
2060Description:
2061		Calibrated ambient temperature for object temperature
2062		calculation in milli degrees Celsius.
2063
2064What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_x_raw
2065What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_y_raw
2066What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_z_raw
2067KernelVersion:	5.10
2068Contact:	linux-iio@vger.kernel.org
2069Description:
2070		Unscaled light intensity according to CIE 1931/DIN 5033 color space.
2071		Units after application of scale are nano nanowatts per square meter.
2072
2073What:		/sys/bus/iio/devices/iio:deviceX/in_anglY_label
2074KernelVersion:	5.12
2075Contact:	linux-iio@vger.kernel.org
2076Description:
2077		Optional symbolic label for channel Y.
2078		For Intel hid hinge sensor, the label values are:
2079		hinge, keyboard, screen. It means the three channels
2080		each correspond respectively to hinge angle, keyboard angle,
2081		and screen angle.
2082
2083What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance_hysteresis_relative
2084What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_hysteresis_relative
2085KernelVersion:	5.12
2086Contact:	linux-iio@vger.kernel.org
2087Description:
2088		Specify the percent for light sensor relative to the channel
2089		absolute value that a data field should change before an event
2090		is generated. Units are a percentage of the prior reading.
2091
2092What:		/sys/bus/iio/devices/iio:deviceX/calibration_auto_enable
2093Date:		June 2020
2094KernelVersion:	5.8
2095Contact:	linux-iio@vger.kernel.org
2096Description:
2097		Some sensors have the ability to apply auto calibration at
2098		runtime. For example, it may be necessary to compensate for
2099		contaminant build-up in a measurement chamber or optical
2100		element deterioration that would otherwise lead to sensor drift.
2101
2102		Writing 1 or 0 to this attribute will respectively activate or
2103		deactivate this auto calibration function.
2104
2105		Upon reading, the current status is returned.
2106
2107What:		/sys/bus/iio/devices/iio:deviceX/calibration_forced_value
2108Date:		June 2020
2109KernelVersion:	5.8
2110Contact:	linux-iio@vger.kernel.org
2111Description:
2112		Some sensors have the ability to apply a manual calibration using
2113		a known measurement value, perhaps obtained from an external
2114		reference device.
2115
2116		Writing a value to this function will force such a calibration
2117		change. For the scd30 the value should be from the range
2118		[400 1 2000].
2119
2120		Note for the scd30 that a valid value may only be obtained once
2121		it is has been written. Until then any read back of this value
2122		should be ignored. As for the scd4x an error will be returned
2123		immediately if the manual calibration has failed.
2124
2125What:		/sys/bus/iio/devices/iio:deviceX/calibration_forced_value_available
2126KernelVersion:  5.15
2127Contact:        linux-iio@vger.kernel.org
2128Description:
2129		Available range for the forced calibration value, expressed as:
2130
2131		- a range specified as "[min step max]"
2132
2133What:		/sys/bus/iio/devices/iio:deviceX/in_voltageX_sampling_frequency
2134What:		/sys/bus/iio/devices/iio:deviceX/in_powerY_sampling_frequency
2135What:		/sys/bus/iio/devices/iio:deviceX/in_currentZ_sampling_frequency
2136KernelVersion:	5.20
2137Contact:	linux-iio@vger.kernel.org
2138Description:
2139		Some devices have separate controls of sampling frequency for
2140		individual channels. If multiple channels are enabled in a scan,
2141		then the sampling_frequency of the scan may be computed from the
2142		per channel sampling frequencies.
2143
2144What:		/sys/.../events/in_accel_gesture_singletap_en
2145What:		/sys/.../events/in_accel_gesture_doubletap_en
2146KernelVersion:	6.1
2147Contact:	linux-iio@vger.kernel.org
2148Description:
2149		Device generates an event on a single or double tap.
2150
2151What:		/sys/.../events/in_accel_gesture_singletap_value
2152What:		/sys/.../events/in_accel_gesture_doubletap_value
2153KernelVersion:	6.1
2154Contact:	linux-iio@vger.kernel.org
2155Description:
2156		Specifies the threshold value that the device is comparing
2157		against to generate the tap gesture event. The lower
2158		threshold value increases the sensitivity of tap detection.
2159		Units and the exact meaning of value are device-specific.
2160
2161What:		/sys/.../events/in_accel_gesture_tap_value_available
2162KernelVersion:	6.1
2163Contact:	linux-iio@vger.kernel.org
2164Description:
2165		Lists all available threshold values which can be used to
2166		modify the sensitivity of the tap detection.
2167
2168What:		/sys/.../events/in_accel_gesture_singletap_reset_timeout
2169What:		/sys/.../events/in_accel_gesture_doubletap_reset_timeout
2170KernelVersion:	6.1
2171Contact:	linux-iio@vger.kernel.org
2172Description:
2173		Specifies the timeout value in seconds for the tap detector
2174		to not to look for another tap event after the event as
2175		occurred. Basically the minimum quiet time between the two
2176		single-tap's or two double-tap's.
2177
2178What:		/sys/.../events/in_accel_gesture_tap_reset_timeout_available
2179KernelVersion:	6.1
2180Contact:	linux-iio@vger.kernel.org
2181Description:
2182		Lists all available tap reset timeout values. Units in seconds.
2183
2184What:		/sys/.../events/in_accel_gesture_doubletap_tap2_min_delay
2185KernelVersion:	6.1
2186Contact:	linux-iio@vger.kernel.org
2187Description:
2188		Specifies the minimum quiet time in seconds between the two
2189		taps of a double tap.
2190
2191What:		/sys/.../events/in_accel_gesture_doubletap_tap2_min_delay_available
2192KernelVersion:	6.1
2193Contact:	linux-iio@vger.kernel.org
2194Description:
2195		Lists all available delay values between two taps in the double
2196		tap. Units in seconds.
2197
2198What:		/sys/.../events/in_accel_gesture_tap_maxtomin_time
2199KernelVersion:	6.1
2200Contact:	linux-iio@vger.kernel.org
2201Description:
2202		Specifies the maximum time difference allowed between upper
2203		and lower peak of tap to consider it as the valid tap event.
2204		Units in seconds.
2205
2206What:		/sys/.../events/in_accel_gesture_tap_maxtomin_time_available
2207KernelVersion:	6.1
2208Contact:	linux-iio@vger.kernel.org
2209Description:
2210		Lists all available time values between upper peak to lower
2211		peak. Units in seconds.
2212
2213What:		/sys/bus/iio/devices/iio:deviceX/in_rot_yaw_raw
2214What:		/sys/bus/iio/devices/iio:deviceX/in_rot_pitch_raw
2215What:		/sys/bus/iio/devices/iio:deviceX/in_rot_roll_raw
2216KernelVersion:	6.1
2217Contact:	linux-iio@vger.kernel.org
2218Description:
2219		Raw (unscaled) euler angles readings. Units after
2220		application of scale are deg.
2221
2222What:		/sys/bus/iio/devices/iio:deviceX/serialnumber
2223KernelVersion:	6.1
2224Contact:	linux-iio@vger.kernel.org
2225Description:
2226		An example format is 16-bytes, 2-digits-per-byte, HEX-string
2227		representing the sensor unique ID number.
2228
2229What:		/sys/.../events/in_proximity_thresh_either_runningperiod
2230KernelVersion:	6.6
2231Contact:	linux-iio@vger.kernel.org
2232Description:
2233		A running period of time (in seconds) for which
2234		in_proximity_thresh_either_runningcount amount of conditions
2235		must occur before an event is generated. If direction is not
2236		specified then this period applies to both directions.
2237
2238What:		/sys/.../events/in_proximity_thresh_either_runningcount
2239KernelVersion:	6.6
2240Contact:	linux-iio@vger.kernel.org
2241Description:
2242		Number of conditions that must occur, during a running
2243		period, before an event is generated.
2244
2245What:		/sys/bus/iio/devices/iio:deviceX/in_colortemp_raw
2246KernelVersion:	6.7
2247Contact:	linux-iio@vger.kernel.org
2248Description:
2249		Represents light color temperature, which measures light color
2250		temperature in Kelvin.
2251
2252What:		/sys/bus/iio/devices/iio:deviceX/in_chromaticity_x_raw
2253What:		/sys/bus/iio/devices/iio:deviceX/in_chromaticity_y_raw
2254KernelVersion:	6.7
2255Contact:	linux-iio@vger.kernel.org
2256Description:
2257		The x and y light color coordinate on the CIE 1931 chromaticity
2258		diagram.
2259
2260What:		/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_mag_either_label
2261What:		/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_mag_rising_label
2262What:		/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_thresh_falling_label
2263What:		/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_thresh_rising_label
2264What:		/sys/bus/iio/devices/iio:deviceX/events/in_anglvelY_mag_rising_label
2265What:		/sys/bus/iio/devices/iio:deviceX/events/in_anglY_thresh_rising_label
2266What:		/sys/bus/iio/devices/iio:deviceX/events/in_phaseY_mag_rising_label
2267KernelVersion:	6.7
2268Contact:	linux-iio@vger.kernel.org
2269Description:
2270		Optional symbolic label to a device channel event.
2271		If a label is defined for this event add that to the event
2272		specific attributes. This is useful for userspace to be able to
2273		better identify an individual event.
2274
2275What:		/sys/.../events/in_accel_gesture_tap_wait_timeout
2276KernelVersion:	6.7
2277Contact:	linux-iio@vger.kernel.org
2278Description:
2279		Enable tap gesture confirmation with timeout.
2280
2281What:		/sys/.../events/in_accel_gesture_tap_wait_dur
2282KernelVersion:	6.7
2283Contact:	linux-iio@vger.kernel.org
2284Description:
2285		Timeout value in seconds for tap gesture confirmation.
2286
2287What:		/sys/.../events/in_accel_gesture_tap_wait_dur_available
2288KernelVersion:	6.7
2289Contact:	linux-iio@vger.kernel.org
2290Description:
2291		List of available timeout value for tap gesture confirmation.
2292