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		Contains trigger type specific elements. These do not
19		generalize well and hence are not documented in this file.
20		X is the IIO index of the trigger.
21
22What:		/sys/bus/iio/devices/iio:deviceX/buffer
23KernelVersion:	2.6.35
24Contact:	linux-iio@vger.kernel.org
25Description:
26		Directory of attributes relating to the buffer for the device.
27
28What:		/sys/bus/iio/devices/iio:deviceX/name
29KernelVersion:	2.6.35
30Contact:	linux-iio@vger.kernel.org
31Description:
32		Description of the physical chip / device for device X.
33		Typically a part number.
34
35What:		/sys/bus/iio/devices/iio:deviceX/sampling_frequency
36What:		/sys/bus/iio/devices/iio:deviceX/buffer/sampling_frequency
37What:		/sys/bus/iio/devices/triggerX/sampling_frequency
38KernelVersion:	2.6.35
39Contact:	linux-iio@vger.kernel.org
40Description:
41		Some devices have internal clocks.  This parameter sets the
42		resulting sampling frequency.  In many devices this
43		parameter has an effect on input filters etc. rather than
44		simply controlling when the input is sampled.  As this
45		effects data ready triggers, hardware buffers and the sysfs
46		direct access interfaces, it may be found in any of the
47		relevant directories.  If it effects all of the above
48		then it is to be found in the base device directory.
49
50What:		/sys/bus/iio/devices/iio:deviceX/sampling_frequency_available
51What:		/sys/.../iio:deviceX/buffer/sampling_frequency_available
52What:		/sys/bus/iio/devices/triggerX/sampling_frequency_available
53KernelVersion:	2.6.35
54Contact:	linux-iio@vger.kernel.org
55Description:
56		When the internal sampling clock can only take a small
57		discrete set of values, this file lists those available.
58
59What:		/sys/bus/iio/devices/iio:deviceX/oversampling_ratio
60KernelVersion:	2.6.38
61Contact:	linux-iio@vger.kernel.org
62Description:
63		Hardware dependent ADC oversampling. Controls the sampling ratio
64		of the digital filter if available.
65
66What:		/sys/bus/iio/devices/iio:deviceX/oversampling_ratio_available
67KernelVersion:	2.6.38
68Contact:	linux-iio@vger.kernel.org
69Description:
70		Hardware dependent values supported by the oversampling filter.
71
72What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_raw
73What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_raw
74KernelVersion:	2.6.35
75Contact:	linux-iio@vger.kernel.org
76Description:
77		Raw (unscaled no bias removal etc.) voltage measurement from
78		channel Y. In special cases where the channel does not
79		correspond to externally available input one of the named
80		versions may be used. The number must always be specified and
81		unique to allow association with event codes. Units after
82		application of scale and offset are millivolts.
83
84What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY-voltageZ_raw
85KernelVersion:	2.6.35
86Contact:	linux-iio@vger.kernel.org
87Description:
88		Raw (unscaled) differential voltage measurement equivalent to
89		channel Y - channel Z where these channel numbers apply to the
90		physically equivalent inputs when non differential readings are
91		separately available. In differential only parts, then all that
92		is required is a consistent labeling.  Units after application
93		of scale and offset are millivolts.
94
95What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_raw
96What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_supply_raw
97KernelVersion:	3.17
98Contact:	linux-iio@vger.kernel.org
99Description:
100		Raw (unscaled no bias removal etc.) current measurement from
101		channel Y. In special cases where the channel does not
102		correspond to externally available input one of the named
103		versions may be used. The number must always be specified and
104		unique to allow association with event codes. Units after
105		application of scale and offset are milliamps.
106
107What:		/sys/bus/iio/devices/iio:deviceX/in_capacitanceY_raw
108KernelVersion:	3.2
109Contact:	linux-iio@vger.kernel.org
110Description:
111		Raw capacitance measurement from channel Y. Units after
112		application of scale and offset are nanofarads.
113
114What:		/sys/.../iio:deviceX/in_capacitanceY-in_capacitanceZ_raw
115KernelVersion:	3.2
116Contact:	linux-iio@vger.kernel.org
117Description:
118		Raw differential capacitance measurement equivalent to
119		channel Y - channel Z where these channel numbers apply to the
120		physically equivalent inputs when non differential readings are
121		separately available. In differential only parts, then all that
122		is required is a consistent labeling.  Units after application
123		of scale and offset are nanofarads.
124
125What:		/sys/bus/iio/devices/iio:deviceX/in_temp_raw
126What:		/sys/bus/iio/devices/iio:deviceX/in_tempX_raw
127What:		/sys/bus/iio/devices/iio:deviceX/in_temp_x_raw
128What:		/sys/bus/iio/devices/iio:deviceX/in_temp_y_raw
129What:		/sys/bus/iio/devices/iio:deviceX/in_temp_ambient_raw
130What:		/sys/bus/iio/devices/iio:deviceX/in_temp_object_raw
131KernelVersion:	2.6.35
132Contact:	linux-iio@vger.kernel.org
133Description:
134		Raw (unscaled no bias removal etc.) temperature measurement.
135		If an axis is specified it generally means that the temperature
136		sensor is associated with one part of a compound device (e.g.
137		a gyroscope axis). The ambient and object modifiers distinguish
138		between ambient (reference) and distant temperature for contact-
139		less measurements. Units after application of scale and offset
140		are milli degrees Celsius.
141
142What:		/sys/bus/iio/devices/iio:deviceX/in_tempX_input
143KernelVersion:	2.6.38
144Contact:	linux-iio@vger.kernel.org
145Description:
146		Scaled temperature measurement in milli degrees Celsius.
147
148What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_raw
149What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_raw
150What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_raw
151KernelVersion:	2.6.35
152Contact:	linux-iio@vger.kernel.org
153Description:
154		Acceleration in direction x, y or z (may be arbitrarily assigned
155		but should match other such assignments on device).
156		Has all of the equivalent parameters as per voltageY. Units
157		after application of scale and offset are m/s^2.
158
159What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_raw
160What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_raw
161What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_raw
162KernelVersion:	2.6.35
163Contact:	linux-iio@vger.kernel.org
164Description:
165		Angular velocity about axis x, y or z (may be arbitrarily
166		assigned). Has all the equivalent parameters as	per voltageY.
167		Units after application of scale and offset are	radians per
168		second.
169
170What:		/sys/bus/iio/devices/iio:deviceX/in_incli_x_raw
171What:		/sys/bus/iio/devices/iio:deviceX/in_incli_y_raw
172What:		/sys/bus/iio/devices/iio:deviceX/in_incli_z_raw
173KernelVersion:	2.6.35
174Contact:	linux-iio@vger.kernel.org
175Description:
176		Inclination raw reading about axis x, y or z (may be
177		arbitrarily assigned). Data converted by application of offset
178		and scale to degrees.
179
180What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_raw
181What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_raw
182What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_raw
183KernelVersion:	2.6.35
184Contact:	linux-iio@vger.kernel.org
185Description:
186		Magnetic field along axis x, y or z (may be arbitrarily
187		assigned).  Data converted by application of offset
188		then scale to Gauss.
189
190What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_peak_raw
191What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_peak_raw
192What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_peak_raw
193KernelVersion:	2.6.36
194Contact:	linux-iio@vger.kernel.org
195Description:
196		Highest value since some reset condition.  These
197		attributes allow access to this and are otherwise
198		the direct equivalent of the <type>Y[_name]_raw attributes.
199
200What:		/sys/bus/iio/devices/iio:deviceX/in_accel_xyz_squared_peak_raw
201KernelVersion:	2.6.36
202Contact:	linux-iio@vger.kernel.org
203Description:
204		A computed peak value based on the sum squared magnitude of
205		the underlying value in the specified directions.
206
207What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_raw
208What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_raw
209KernelVersion:	3.8
210Contact:	linux-iio@vger.kernel.org
211Description:
212		Raw pressure measurement from channel Y. Units after
213		application of scale and offset are kilopascal.
214
215What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_input
216What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_input
217KernelVersion:	3.8
218Contact:	linux-iio@vger.kernel.org
219Description:
220		Scaled pressure measurement from channel Y, in kilopascal.
221
222What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_raw
223KernelVersion:	3.14
224Contact:	linux-iio@vger.kernel.org
225Description:
226		Raw humidity measurement of air. Units after application of
227		scale and offset are milli percent.
228
229What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_input
230KernelVersion:	3.14
231Contact:	linux-iio@vger.kernel.org
232Description:
233		Scaled humidity measurement in milli percent.
234
235What:		/sys/bus/iio/devices/iio:deviceX/in_X_mean_raw
236KernelVersion:	3.5
237Contact:	linux-iio@vger.kernel.org
238Description:
239		Averaged raw measurement from channel X. The number of values
240		used for averaging is device specific. The converting rules for
241		normal raw values also applies to the averaged raw values.
242
243What:		/sys/bus/iio/devices/iio:deviceX/in_accel_offset
244What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_offset
245What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_offset
246What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_offset
247What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_offset
248What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_offset
249What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_offset
250What:		/sys/bus/iio/devices/iio:deviceX/in_current_offset
251What:		/sys/bus/iio/devices/iio:deviceX/in_tempY_offset
252What:		/sys/bus/iio/devices/iio:deviceX/in_temp_offset
253What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_offset
254What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_offset
255What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_offset
256What:		/sys/bus/iio/devices/iio:deviceX/in_magn_offset
257What:		/sys/bus/iio/devices/iio:deviceX/in_rot_offset
258KernelVersion:	2.6.35
259Contact:	linux-iio@vger.kernel.org
260Description:
261		If known for a device, offset to be added to <type>[Y]_raw prior
262		to scaling by <type>[Y]_scale in order to obtain value in the
263		<type> units as specified in <type>[Y]_raw documentation.
264		Not present if the offset is always 0 or unknown. If Y or
265		axis <x|y|z> is not present, then the offset applies to all
266		in channels of <type>.
267		May be writable if a variable offset can be applied on the
268		device. Note that this is different to calibbias which
269		is for devices (or drivers) that apply offsets to compensate
270		for variation between different instances of the part, typically
271		adjusted by using some hardware supported calibration procedure.
272		Calibbias is applied internally, offset is applied in userspace
273		to the _raw output.
274
275What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_scale
276What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_scale
277What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_scale
278What:		/sys/bus/iio/devices/iio:deviceX/in_voltage-voltage_scale
279What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_scale
280What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_scale
281What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_scale
282What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_supply_scale
283What:		/sys/bus/iio/devices/iio:deviceX/in_current_scale
284What:		/sys/bus/iio/devices/iio:deviceX/in_accel_scale
285What:		/sys/bus/iio/devices/iio:deviceX/in_accel_peak_scale
286What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_scale
287What:		/sys/bus/iio/devices/iio:deviceX/in_energy_scale
288What:		/sys/bus/iio/devices/iio:deviceX/in_distance_scale
289What:		/sys/bus/iio/devices/iio:deviceX/in_magn_scale
290What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_scale
291What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_scale
292What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_scale
293What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_scale
294What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_scale
295What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_scale
296What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_scale
297What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_scale
298What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_scale
299What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_scale
300What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_scale
301What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance_scale
302KernelVersion:	2.6.35
303Contact:	linux-iio@vger.kernel.org
304Description:
305		If known for a device, scale to be applied to <type>Y[_name]_raw
306		post addition of <type>[Y][_name]_offset in order to obtain the
307		measured value in <type> units as specified in
308		<type>[Y][_name]_raw documentation.  If shared across all in
309		channels then Y and <x|y|z> are not present and the value is
310		called <type>[Y][_name]_scale. The peak modifier means this
311		value is applied to <type>Y[_name]_peak_raw values.
312
313What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_calibbias
314What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_calibbias
315What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_calibbias
316What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibbias
317What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibbias
318What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibbias
319What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibbias
320What:		/sys/bus/iio/devices/iio:deviceX/in_proximity0_calibbias
321What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_calibbias
322What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_calibbias
323KernelVersion:	2.6.35
324Contact:	linux-iio@vger.kernel.org
325Description:
326		Hardware applied calibration offset (assumed to fix production
327		inaccuracies).
328
329What		/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale
330What		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_calibscale
331What		/sys/bus/iio/devices/iio:deviceX/in_voltage_calibscale
332What		/sys/bus/iio/devices/iio:deviceX/in_accel_x_calibscale
333What		/sys/bus/iio/devices/iio:deviceX/in_accel_y_calibscale
334What		/sys/bus/iio/devices/iio:deviceX/in_accel_z_calibscale
335What		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibscale
336What		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibscale
337What		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibscale
338what		/sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibscale
339what		/sys/bus/iio/devices/iio:deviceX/in_proximity0_calibscale
340What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_calibscale
341What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_calibscale
342What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance_calibscale
343KernelVersion:	2.6.35
344Contact:	linux-iio@vger.kernel.org
345Description:
346		Hardware applied calibration scale factor (assumed to fix
347		production inaccuracies).  If shared across all channels,
348		<type>_calibscale is used.
349
350What:		/sys/bus/iio/devices/iio:deviceX/in_activity_calibgender
351What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibgender
352What:		/sys/bus/iio/devices/iio:deviceX/in_distance_calibgender
353What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_calibgender
354KernelVersion:	4.0
355Contact:	linux-iio@vger.kernel.org
356Description:
357		Gender of the user (e.g.: male, female) used by some pedometers
358		to compute the stride length, distance, speed and activity
359		type.
360
361What:		/sys/bus/iio/devices/iio:deviceX/in_activity_calibgender_available
362What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibgender_available
363What:		/sys/bus/iio/devices/iio:deviceX/in_distance_calibgender_available
364What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_calibgender_available
365KernelVersion:	4.0
366Contact:	linux-iio@vger.kernel.org
367Description:
368		Lists all available gender values (e.g.: male, female).
369
370What:		/sys/bus/iio/devices/iio:deviceX/in_activity_calibheight
371What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibheight
372What:		/sys/bus/iio/devices/iio:deviceX/in_distance_calibheight
373What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_calibheight
374KernelVersion:	3.19
375Contact:	linux-iio@vger.kernel.org
376Description:
377		Height of the user (in meters) used by some pedometers
378		to compute the stride length, distance, speed and activity
379		type.
380
381What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibweight
382KernelVersion:	4.0
383Contact:	linux-iio@vger.kernel.org
384Description:
385		Weight of the user (in kg). It is needed by some pedometers
386		to compute the calories burnt by the user.
387
388What:		/sys/bus/iio/devices/iio:deviceX/in_accel_scale_available
389What:		/sys/.../iio:deviceX/in_voltageX_scale_available
390What:		/sys/.../iio:deviceX/in_voltage-voltage_scale_available
391What:		/sys/.../iio:deviceX/out_voltageX_scale_available
392What:		/sys/.../iio:deviceX/out_altvoltageX_scale_available
393What:		/sys/.../iio:deviceX/in_capacitance_scale_available
394What:		/sys/.../iio:deviceX/in_pressure_scale_available
395What:		/sys/.../iio:deviceX/in_pressureY_scale_available
396KernelVersion:	2.6.35
397Contact:	linux-iio@vger.kernel.org
398Description:
399		If a discrete set of scale values is available, they
400		are listed in this attribute.
401
402What		/sys/bus/iio/devices/iio:deviceX/out_voltageY_hardwaregain
403What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_red_hardwaregain
404What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_green_hardwaregain
405What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_blue_hardwaregain
406What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_clear_hardwaregain
407KernelVersion:	2.6.35
408Contact:	linux-iio@vger.kernel.org
409Description:
410		Hardware applied gain factor. If shared across all channels,
411		<type>_hardwaregain is used.
412
413What:		/sys/.../in_accel_filter_low_pass_3db_frequency
414What:		/sys/.../in_magn_filter_low_pass_3db_frequency
415What:		/sys/.../in_anglvel_filter_low_pass_3db_frequency
416KernelVersion:	3.2
417Contact:	linux-iio@vger.kernel.org
418Description:
419		If a known or controllable low pass filter is applied
420		to the underlying data channel, then this parameter
421		gives the 3dB frequency of the filter in Hz.
422
423What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_raw
424What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_raw
425KernelVersion:	2.6.37
426Contact:	linux-iio@vger.kernel.org
427Description:
428		Raw (unscaled, no bias etc.) output voltage for
429		channel Y.  The number must always be specified and
430		unique if the output corresponds to a single channel.
431		While DAC like devices typically use out_voltage,
432		a continuous frequency generating device, such as
433		a DDS or PLL should use out_altvoltage.
434
435What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY&Z_raw
436What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY&Z_raw
437KernelVersion:	2.6.37
438Contact:	linux-iio@vger.kernel.org
439Description:
440		Raw (unscaled, no bias etc.) output voltage for an aggregate of
441		channel Y, channel Z, etc.  This interface is available in cases
442		where a single output sets the value for multiple channels
443		simultaneously.
444
445What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown_mode
446What:		/sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown_mode
447What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown_mode
448What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown_mode
449KernelVersion:	2.6.38
450Contact:	linux-iio@vger.kernel.org
451Description:
452		Specifies the output powerdown mode.
453		DAC output stage is disconnected from the amplifier and
454		1kohm_to_gnd: connected	to ground via an 1kOhm resistor,
455		6kohm_to_gnd: connected to ground via a 6kOhm resistor,
456		20kohm_to_gnd: connected to ground via a 20kOhm resistor,
457		100kohm_to_gnd: connected to ground via an 100kOhm resistor,
458		500kohm_to_gnd: connected to ground via a 500kOhm resistor,
459		three_state: left floating.
460		For a list of available output power down options read
461		outX_powerdown_mode_available. If Y is not present the
462		mode is shared across all outputs.
463
464What:		/sys/.../iio:deviceX/out_votlageY_powerdown_mode_available
465What:		/sys/.../iio:deviceX/out_voltage_powerdown_mode_available
466What:		/sys/.../iio:deviceX/out_altvotlageY_powerdown_mode_available
467What:		/sys/.../iio:deviceX/out_altvoltage_powerdown_mode_available
468KernelVersion:	2.6.38
469Contact:	linux-iio@vger.kernel.org
470Description:
471		Lists all available output power down modes.
472		If Y is not present the mode is shared across all outputs.
473
474What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown
475What:		/sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown
476What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown
477What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown
478KernelVersion:	2.6.38
479Contact:	linux-iio@vger.kernel.org
480Description:
481		Writing 1 causes output Y to enter the power down mode specified
482		by the corresponding outY_powerdown_mode. DAC output stage is
483		disconnected from the amplifier. Clearing returns to normal
484		operation. Y may be suppressed if all outputs are controlled
485		together.
486
487What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency
488KernelVersion:	3.4.0
489Contact:	linux-iio@vger.kernel.org
490Description:
491		Output frequency for channel Y in Hz. The number must always be
492		specified and unique if the output corresponds to a single
493		channel.
494
495What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_phase
496KernelVersion:	3.4.0
497Contact:	linux-iio@vger.kernel.org
498Description:
499		Phase in radians of one frequency/clock output Y
500		(out_altvoltageY) relative to another frequency/clock output
501		(out_altvoltageZ) of the device X. The number must always be
502		specified and unique if the output corresponds to a single
503		channel.
504
505What:		/sys/bus/iio/devices/iio:deviceX/events
506KernelVersion:	2.6.35
507Contact:	linux-iio@vger.kernel.org
508Description:
509		Configuration of which hardware generated events are passed up
510		to user-space.
511
512What:		/sys/.../iio:deviceX/events/in_accel_x_thresh_rising_en
513What:		/sys/.../iio:deviceX/events/in_accel_x_thresh_falling_en
514What:		/sys/.../iio:deviceX/events/in_accel_y_thresh_rising_en
515What:		/sys/.../iio:deviceX/events/in_accel_y_thresh_falling_en
516What:		/sys/.../iio:deviceX/events/in_accel_z_thresh_rising_en
517What:		/sys/.../iio:deviceX/events/in_accel_z_thresh_falling_en
518What:		/sys/.../iio:deviceX/events/in_anglvel_x_thresh_rising_en
519What:		/sys/.../iio:deviceX/events/in_anglvel_x_thresh_falling_en
520What:		/sys/.../iio:deviceX/events/in_anglvel_y_thresh_rising_en
521What:		/sys/.../iio:deviceX/events/in_anglvel_y_thresh_falling_en
522What:		/sys/.../iio:deviceX/events/in_anglvel_z_thresh_rising_en
523What:		/sys/.../iio:deviceX/events/in_anglvel_z_thresh_falling_en
524What:		/sys/.../iio:deviceX/events/in_magn_x_thresh_rising_en
525What:		/sys/.../iio:deviceX/events/in_magn_x_thresh_falling_en
526What:		/sys/.../iio:deviceX/events/in_magn_y_thresh_rising_en
527What:		/sys/.../iio:deviceX/events/in_magn_y_thresh_falling_en
528What:		/sys/.../iio:deviceX/events/in_magn_z_thresh_rising_en
529What:		/sys/.../iio:deviceX/events/in_magn_z_thresh_falling_en
530What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_rising_en
531What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_falling_en
532What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_rising_en
533What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_falling_en
534What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_en
535What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_en
536What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_rising_en
537What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_falling_en
538What:		/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_rising_en
539What:		/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_falling_en
540What:		/sys/.../iio:deviceX/events/in_voltageY_thresh_rising_en
541What:		/sys/.../iio:deviceX/events/in_voltageY_thresh_falling_en
542What:		/sys/.../iio:deviceX/events/in_tempY_thresh_rising_en
543What:		/sys/.../iio:deviceX/events/in_tempY_thresh_falling_en
544KernelVersion:	2.6.37
545Contact:	linux-iio@vger.kernel.org
546Description:
547		Event generated when channel passes a threshold in the specified
548		(_rising|_falling) direction. If the direction is not specified,
549		then either the device will report an event which ever direction
550		a single threshold value is passed in (e.g.
551		<type>[Y][_name]_<raw|input>_thresh_value) or
552		<type>[Y][_name]_<raw|input>_thresh_rising_value and
553		<type>[Y][_name]_<raw|input>_thresh_falling_value may take
554		different values, but the device can only enable both thresholds
555		or neither.
556		Note the driver will assume the last p events requested are
557		to be enabled where p is how many it supports (which may vary
558		depending on the exact set requested. So if you want to be
559		sure you have set what you think you have, check the contents of
560		these attributes after everything is configured. Drivers may
561		have to buffer any parameters so that they are consistent when
562		a given event type is enabled at a future point (and not those for
563		whatever event was previously enabled).
564
565What:		/sys/.../iio:deviceX/events/in_accel_x_roc_rising_en
566What:		/sys/.../iio:deviceX/events/in_accel_x_roc_falling_en
567What:		/sys/.../iio:deviceX/events/in_accel_y_roc_rising_en
568What:		/sys/.../iio:deviceX/events/in_accel_y_roc_falling_en
569What:		/sys/.../iio:deviceX/events/in_accel_z_roc_rising_en
570What:		/sys/.../iio:deviceX/events/in_accel_z_roc_falling_en
571What:		/sys/.../iio:deviceX/events/in_anglvel_x_roc_rising_en
572What:		/sys/.../iio:deviceX/events/in_anglvel_x_roc_falling_en
573What:		/sys/.../iio:deviceX/events/in_anglvel_y_roc_rising_en
574What:		/sys/.../iio:deviceX/events/in_anglvel_y_roc_falling_en
575What:		/sys/.../iio:deviceX/events/in_anglvel_z_roc_rising_en
576What:		/sys/.../iio:deviceX/events/in_anglvel_z_roc_falling_en
577What:		/sys/.../iio:deviceX/events/in_magn_x_roc_rising_en
578What:		/sys/.../iio:deviceX/events/in_magn_x_roc_falling_en
579What:		/sys/.../iio:deviceX/events/in_magn_y_roc_rising_en
580What:		/sys/.../iio:deviceX/events/in_magn_y_roc_falling_en
581What:		/sys/.../iio:deviceX/events/in_magn_z_roc_rising_en
582What:		/sys/.../iio:deviceX/events/in_magn_z_roc_falling_en
583What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_rising_en
584What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_falling_en
585What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_roc_rising_en
586What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_roc_falling_en
587What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_rising_en
588What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_falling_en
589What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_rising_en
590What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_falling_en
591What:		/sys/.../iio:deviceX/events/in_voltageY_supply_roc_rising_en
592What:		/sys/.../iio:deviceX/events/in_voltageY_supply_roc_falling_en
593What:		/sys/.../iio:deviceX/events/in_voltageY_roc_rising_en
594What:		/sys/.../iio:deviceX/events/in_voltageY_roc_falling_en
595What:		/sys/.../iio:deviceX/events/in_tempY_roc_rising_en
596What:		/sys/.../iio:deviceX/events/in_tempY_roc_falling_en
597KernelVersion:	2.6.37
598Contact:	linux-iio@vger.kernel.org
599Description:
600		Event generated when channel passes a threshold on the rate of
601		change (1st differential) in the specified (_rising|_falling)
602		direction. If the direction is not specified, then either the
603		device will report an event which ever direction a single
604		threshold value is passed in (e.g.
605		<type>[Y][_name]_<raw|input>_roc_value) or
606		<type>[Y][_name]_<raw|input>_roc_rising_value and
607		<type>[Y][_name]_<raw|input>_roc_falling_value may take
608		different values, but the device can only enable both rate of
609		change thresholds or neither.
610		Note the driver will assume the last p events requested are
611		to be enabled where p is however many it supports (which may
612		vary depending on the exact set requested. So if you want to be
613		sure you have set what you think you have, check the contents of
614		these attributes after everything is configured. Drivers may
615		have to buffer any parameters so that they are consistent when
616		a given event type is enabled a future point (and not those for
617		whatever event was previously enabled).
618
619What:		/sys/.../events/in_accel_thresh_rising_value
620What:		/sys/.../events/in_accel_thresh_falling_value
621What:		/sys/.../events/in_accel_x_raw_thresh_rising_value
622What:		/sys/.../events/in_accel_x_raw_thresh_falling_value
623What:		/sys/.../events/in_accel_y_raw_thresh_rising_value
624What:		/sys/.../events/in_accel_y_raw_thresh_falling_value
625What:		/sys/.../events/in_accel_z_raw_thresh_rising_value
626What:		/sys/.../events/in_accel_z_raw_thresh_falling_value
627What:		/sys/.../events/in_anglvel_x_raw_thresh_rising_value
628What:		/sys/.../events/in_anglvel_x_raw_thresh_falling_value
629What:		/sys/.../events/in_anglvel_y_raw_thresh_rising_value
630What:		/sys/.../events/in_anglvel_y_raw_thresh_falling_value
631What:		/sys/.../events/in_anglvel_z_raw_thresh_rising_value
632What:		/sys/.../events/in_anglvel_z_raw_thresh_falling_value
633What:		/sys/.../events/in_magn_x_raw_thresh_rising_value
634What:		/sys/.../events/in_magn_x_raw_thresh_falling_value
635What:		/sys/.../events/in_magn_y_raw_thresh_rising_value
636What:		/sys/.../events/in_magn_y_raw_thresh_falling_value
637What:		/sys/.../events/in_magn_z_raw_thresh_rising_value
638What:		/sys/.../events/in_magn_z_raw_thresh_falling_value
639What:		/sys/.../events/in_rot_from_north_magnetic_raw_thresh_rising_value
640What:		/sys/.../events/in_rot_from_north_magnetic_raw_thresh_falling_value
641What:		/sys/.../events/in_rot_from_north_true_raw_thresh_rising_value
642What:		/sys/.../events/in_rot_from_north_true_raw_thresh_falling_value
643What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_rising_value
644What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_falling_value
645What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_rising_value
646What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_falling_value
647What:		/sys/.../events/in_voltageY_supply_raw_thresh_rising_value
648What:		/sys/.../events/in_voltageY_supply_raw_thresh_falling_value
649What:		/sys/.../events/in_voltageY_raw_thresh_rising_value
650What:		/sys/.../events/in_voltageY_raw_thresh_falling_value
651What:		/sys/.../events/in_tempY_raw_thresh_rising_value
652What:		/sys/.../events/in_tempY_raw_thresh_falling_value
653What:		/sys/.../events/in_illuminance0_thresh_falling_value
654what:		/sys/.../events/in_illuminance0_thresh_rising_value
655what:		/sys/.../events/in_proximity0_thresh_falling_value
656what:		/sys/.../events/in_proximity0_thresh_rising_value
657KernelVersion:	2.6.37
658Contact:	linux-iio@vger.kernel.org
659Description:
660		Specifies the value of threshold that the device is comparing
661		against for the events enabled by
662		<type>Y[_name]_thresh[_rising|falling]_en.
663		If separate attributes exist for the two directions, but
664		direction is not specified for this attribute, then a single
665		threshold value applies to both directions.
666		The raw or input element of the name indicates whether the
667		value is in raw device units or in processed units (as _raw
668		and _input do on sysfs direct channel read attributes).
669
670What:		/sys/.../events/in_accel_scale
671What:		/sys/.../events/in_accel_peak_scale
672What:		/sys/.../events/in_anglvel_scale
673What:		/sys/.../events/in_magn_scale
674What:		/sys/.../events/in_rot_from_north_magnetic_scale
675What:		/sys/.../events/in_rot_from_north_true_scale
676What:		/sys/.../events/in_voltage_scale
677What:		/sys/.../events/in_voltage_supply_scale
678What:		/sys/.../events/in_temp_scale
679What:		/sys/.../events/in_illuminance_scale
680What:		/sys/.../events/in_proximity_scale
681KernelVersion:	3.21
682Contact:	linux-iio@vger.kernel.org
683Description:
684                Specifies the conversion factor from the standard units
685                to device specific units used to set the event trigger
686                threshold.
687
688What:		/sys/.../events/in_accel_x_thresh_rising_hysteresis
689What:		/sys/.../events/in_accel_x_thresh_falling_hysteresis
690What:		/sys/.../events/in_accel_x_thresh_either_hysteresis
691What:		/sys/.../events/in_accel_y_thresh_rising_hysteresis
692What:		/sys/.../events/in_accel_y_thresh_falling_hysteresis
693What:		/sys/.../events/in_accel_y_thresh_either_hysteresis
694What:		/sys/.../events/in_accel_z_thresh_rising_hysteresis
695What:		/sys/.../events/in_accel_z_thresh_falling_hysteresis
696What:		/sys/.../events/in_accel_z_thresh_either_hysteresis
697What:		/sys/.../events/in_anglvel_x_thresh_rising_hysteresis
698What:		/sys/.../events/in_anglvel_x_thresh_falling_hysteresis
699What:		/sys/.../events/in_anglvel_x_thresh_either_hysteresis
700What:		/sys/.../events/in_anglvel_y_thresh_rising_hysteresis
701What:		/sys/.../events/in_anglvel_y_thresh_falling_hysteresis
702What:		/sys/.../events/in_anglvel_y_thresh_either_hysteresis
703What:		/sys/.../events/in_anglvel_z_thresh_rising_hysteresis
704What:		/sys/.../events/in_anglvel_z_thresh_falling_hysteresis
705What:		/sys/.../events/in_anglvel_z_thresh_either_hysteresis
706What:		/sys/.../events/in_magn_x_thresh_rising_hysteresis
707What:		/sys/.../events/in_magn_x_thresh_falling_hysteresis
708What:		/sys/.../events/in_magn_x_thresh_either_hysteresis
709What:		/sys/.../events/in_magn_y_thresh_rising_hysteresis
710What:		/sys/.../events/in_magn_y_thresh_falling_hysteresis
711What:		/sys/.../events/in_magn_y_thresh_either_hysteresis
712What:		/sys/.../events/in_magn_z_thresh_rising_hysteresis
713What:		/sys/.../events/in_magn_z_thresh_falling_hysteresis
714What:		/sys/.../events/in_magn_z_thresh_either_hysteresis
715What:		/sys/.../events/in_rot_from_north_magnetic_thresh_rising_hysteresis
716What:		/sys/.../events/in_rot_from_north_magnetic_thresh_falling_hysteresis
717What:		/sys/.../events/in_rot_from_north_magnetic_thresh_either_hysteresis
718What:		/sys/.../events/in_rot_from_north_true_thresh_rising_hysteresis
719What:		/sys/.../events/in_rot_from_north_true_thresh_falling_hysteresis
720What:		/sys/.../events/in_rot_from_north_true_thresh_either_hysteresis
721What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_hysteresis
722What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_hysteresis
723What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_either_hysteresis
724What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_hysteresis
725What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_hysteresis
726What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_either_hysteresis
727What:		/sys/.../events/in_voltageY_thresh_rising_hysteresis
728What:		/sys/.../events/in_voltageY_thresh_falling_hysteresis
729What:		/sys/.../events/in_voltageY_thresh_either_hysteresis
730What:		/sys/.../events/in_tempY_thresh_rising_hysteresis
731What:		/sys/.../events/in_tempY_thresh_falling_hysteresis
732What:		/sys/.../events/in_tempY_thresh_either_hysteresis
733What:		/sys/.../events/in_illuminance0_thresh_falling_hysteresis
734what:		/sys/.../events/in_illuminance0_thresh_rising_hysteresis
735what:		/sys/.../events/in_illuminance0_thresh_either_hysteresis
736what:		/sys/.../events/in_proximity0_thresh_falling_hysteresis
737what:		/sys/.../events/in_proximity0_thresh_rising_hysteresis
738what:		/sys/.../events/in_proximity0_thresh_either_hysteresis
739KernelVersion:	3.13
740Contact:	linux-iio@vger.kernel.org
741Description:
742		Specifies the hysteresis of threshold that the device is comparing
743		against for the events enabled by
744		<type>Y[_name]_thresh[_(rising|falling)]_hysteresis.
745		If separate attributes exist for the two directions, but
746		direction is not specified for this attribute, then a single
747		hysteresis value applies to both directions.
748		For falling events the hysteresis is added to the _value attribute for
749		this event to get the upper threshold for when the event goes back to
750		normal, for rising events the hysteresis is subtracted from the _value
751		attribute. E.g. if in_voltage0_raw_thresh_rising_value is set to 1200
752		and in_voltage0_raw_thresh_rising_hysteresis is set to 50. The event
753		will get activated once in_voltage0_raw goes above 1200 and will become
754		deactived again once the value falls below 1150.
755
756What:		/sys/.../events/in_accel_x_raw_roc_rising_value
757What:		/sys/.../events/in_accel_x_raw_roc_falling_value
758What:		/sys/.../events/in_accel_y_raw_roc_rising_value
759What:		/sys/.../events/in_accel_y_raw_roc_falling_value
760What:		/sys/.../events/in_accel_z_raw_roc_rising_value
761What:		/sys/.../events/in_accel_z_raw_roc_falling_value
762What:		/sys/.../events/in_anglvel_x_raw_roc_rising_value
763What:		/sys/.../events/in_anglvel_x_raw_roc_falling_value
764What:		/sys/.../events/in_anglvel_y_raw_roc_rising_value
765What:		/sys/.../events/in_anglvel_y_raw_roc_falling_value
766What:		/sys/.../events/in_anglvel_z_raw_roc_rising_value
767What:		/sys/.../events/in_anglvel_z_raw_roc_falling_value
768What:		/sys/.../events/in_magn_x_raw_roc_rising_value
769What:		/sys/.../events/in_magn_x_raw_roc_falling_value
770What:		/sys/.../events/in_magn_y_raw_roc_rising_value
771What:		/sys/.../events/in_magn_y_raw_roc_falling_value
772What:		/sys/.../events/in_magn_z_raw_roc_rising_value
773What:		/sys/.../events/in_magn_z_raw_roc_falling_value
774What:		/sys/.../events/in_rot_from_north_magnetic_raw_roc_rising_value
775What:		/sys/.../events/in_rot_from_north_magnetic_raw_roc_falling_value
776What:		/sys/.../events/in_rot_from_north_true_raw_roc_rising_value
777What:		/sys/.../events/in_rot_from_north_true_raw_roc_falling_value
778What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_rising_value
779What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_falling_value
780What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_rising_value
781What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_falling_value
782What:		/sys/.../events/in_voltageY_supply_raw_roc_rising_value
783What:		/sys/.../events/in_voltageY_supply_raw_roc_falling_value
784What:		/sys/.../events/in_voltageY_raw_roc_rising_value
785What:		/sys/.../events/in_voltageY_raw_roc_falling_value
786What:		/sys/.../events/in_tempY_raw_roc_rising_value
787What:		/sys/.../events/in_tempY_raw_roc_falling_value
788KernelVersion:	2.6.37
789Contact:	linux-iio@vger.kernel.org
790Description:
791		Specifies the value of rate of change threshold that the
792		device is comparing against for the events enabled by
793		<type>[Y][_name]_roc[_rising|falling]_en.
794		If separate attributes exist for the two directions,
795		but direction is not specified for this attribute,
796		then a single threshold value applies to both directions.
797		The raw or input element of the name indicates whether the
798		value is in raw device units or in processed units (as _raw
799		and _input do on sysfs direct channel read attributes).
800
801What:		/sys/.../events/in_accel_x_thresh_rising_period
802What:		/sys/.../events/in_accel_x_thresh_falling_period
803What:		/sys/.../events/in_accel_x_roc_rising_period
804What:		/sys/.../events/in_accel_x_roc_falling_period
805What:		/sys/.../events/in_accel_y_thresh_rising_period
806What:		/sys/.../events/in_accel_y_thresh_falling_period
807What:		/sys/.../events/in_accel_y_roc_rising_period
808What:		/sys/.../events/in_accel_y_roc_falling_period
809What:		/sys/.../events/in_accel_z_thresh_rising_period
810What:		/sys/.../events/in_accel_z_thresh_falling_period
811What:		/sys/.../events/in_accel_z_roc_rising_period
812What:		/sys/.../events/in_accel_z_roc_falling_period
813What:		/sys/.../events/in_anglvel_x_thresh_rising_period
814What:		/sys/.../events/in_anglvel_x_thresh_falling_period
815What:		/sys/.../events/in_anglvel_x_roc_rising_period
816What:		/sys/.../events/in_anglvel_x_roc_falling_period
817What:		/sys/.../events/in_anglvel_y_thresh_rising_period
818What:		/sys/.../events/in_anglvel_y_thresh_falling_period
819What:		/sys/.../events/in_anglvel_y_roc_rising_period
820What:		/sys/.../events/in_anglvel_y_roc_falling_period
821What:		/sys/.../events/in_anglvel_z_thresh_rising_period
822What:		/sys/.../events/in_anglvel_z_thresh_falling_period
823What:		/sys/.../events/in_anglvel_z_roc_rising_period
824What:		/sys/.../events/in_anglvel_z_roc_falling_period
825What:		/sys/.../events/in_magn_x_thresh_rising_period
826What:		/sys/.../events/in_magn_x_thresh_falling_period
827What:		/sys/.../events/in_magn_x_roc_rising_period
828What:		/sys/.../events/in_magn_x_roc_falling_period
829What:		/sys/.../events/in_magn_y_thresh_rising_period
830What:		/sys/.../events/in_magn_y_thresh_falling_period
831What:		/sys/.../events/in_magn_y_roc_rising_period
832What:		/sys/.../events/in_magn_y_roc_falling_period
833What:		/sys/.../events/in_magn_z_thresh_rising_period
834What:		/sys/.../events/in_magn_z_thresh_falling_period
835What:		/sys/.../events/in_magn_z_roc_rising_period
836What:		/sys/.../events/in_magn_z_roc_falling_period
837What:		/sys/.../events/in_rot_from_north_magnetic_thresh_rising_period
838What:		/sys/.../events/in_rot_from_north_magnetic_thresh_falling_period
839What:		/sys/.../events/in_rot_from_north_magnetic_roc_rising_period
840What:		/sys/.../events/in_rot_from_north_magnetic_roc_falling_period
841What:		/sys/.../events/in_rot_from_north_true_thresh_rising_period
842What:		/sys/.../events/in_rot_from_north_true_thresh_falling_period
843What:		/sys/.../events/in_rot_from_north_true_roc_rising_period
844What:		/sys/.../events/in_rot_from_north_true_roc_falling_period
845What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_period
846What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_period
847What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_rising_period
848What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_falling_period
849What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_period
850What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_period
851What:		/sys/.../events/in_rot_from_north_true_tilt_comp_roc_rising_period
852What:		/sys/.../events/in_rot_from_north_true_tilt_comp_roc_falling_period
853What:		/sys/.../events/in_voltageY_supply_thresh_rising_period
854What:		/sys/.../events/in_voltageY_supply_thresh_falling_period
855What:		/sys/.../events/in_voltageY_supply_roc_rising_period
856What:		/sys/.../events/in_voltageY_supply_roc_falling_period
857What:		/sys/.../events/in_voltageY_thresh_rising_period
858What:		/sys/.../events/in_voltageY_thresh_falling_period
859What:		/sys/.../events/in_voltageY_roc_rising_period
860What:		/sys/.../events/in_voltageY_roc_falling_period
861What:		/sys/.../events/in_tempY_thresh_rising_period
862What:		/sys/.../events/in_tempY_thresh_falling_period
863What:		/sys/.../events/in_tempY_roc_rising_period
864What:		/sys/.../events/in_tempY_roc_falling_period
865What:		/sys/.../events/in_accel_x&y&z_mag_falling_period
866What:		/sys/.../events/in_intensity0_thresh_period
867What:		/sys/.../events/in_proximity0_thresh_period
868What:		/sys/.../events/in_activity_still_thresh_rising_period
869What:		/sys/.../events/in_activity_still_thresh_falling_period
870What:		/sys/.../events/in_activity_walking_thresh_rising_period
871What:		/sys/.../events/in_activity_walking_thresh_falling_period
872What:		/sys/.../events/in_activity_jogging_thresh_rising_period
873What:		/sys/.../events/in_activity_jogging_thresh_falling_period
874What:		/sys/.../events/in_activity_running_thresh_rising_period
875What:		/sys/.../events/in_activity_running_thresh_falling_period
876KernelVersion:	2.6.37
877Contact:	linux-iio@vger.kernel.org
878Description:
879		Period of time (in seconds) for which the condition must be
880		met before an event is generated. If direction is not
881		specified then this period applies to both directions.
882
883What:		/sys/.../events/in_activity_still_thresh_rising_en
884What:		/sys/.../events/in_activity_still_thresh_falling_en
885What:		/sys/.../events/in_activity_walking_thresh_rising_en
886What:		/sys/.../events/in_activity_walking_thresh_falling_en
887What:		/sys/.../events/in_activity_jogging_thresh_rising_en
888What:		/sys/.../events/in_activity_jogging_thresh_falling_en
889What:		/sys/.../events/in_activity_running_thresh_rising_en
890What:		/sys/.../events/in_activity_running_thresh_falling_en
891KernelVersion:	3.19
892Contact:	linux-iio@vger.kernel.org
893Description:
894		Enables or disables activitity events. Depending on direction
895		an event is generated when sensor ENTERS or LEAVES a given state.
896
897What:		/sys/.../events/in_activity_still_thresh_rising_value
898What:		/sys/.../events/in_activity_still_thresh_falling_value
899What:		/sys/.../events/in_activity_walking_thresh_rising_value
900What:		/sys/.../events/in_activity_walking_thresh_falling_value
901What:		/sys/.../events/in_activity_jogging_thresh_rising_value
902What:		/sys/.../events/in_activity_jogging_thresh_falling_value
903What:		/sys/.../events/in_activity_running_thresh_rising_value
904What:		/sys/.../events/in_activity_running_thresh_falling_value
905KernelVersion:	3.19
906Contact:	linux-iio@vger.kernel.org
907Description:
908		Confidence value (in units as percentage) to be used
909		for deciding when an event should be generated. E.g for
910		running: If the confidence value reported by the sensor
911		is greater than in_activity_running_thresh_rising_value
912		then the sensor ENTERS running state. Conversely, if the
913		confidence value reported by the sensor is lower than
914		in_activity_running_thresh_falling_value then the sensor
915		is LEAVING running state.
916
917What:		/sys/.../iio:deviceX/events/in_accel_mag_en
918What:		/sys/.../iio:deviceX/events/in_accel_mag_rising_en
919What:		/sys/.../iio:deviceX/events/in_accel_mag_falling_en
920What:		/sys/.../iio:deviceX/events/in_accel_x_mag_en
921What:		/sys/.../iio:deviceX/events/in_accel_x_mag_rising_en
922What:		/sys/.../iio:deviceX/events/in_accel_x_mag_falling_en
923What:		/sys/.../iio:deviceX/events/in_accel_y_mag_en
924What:		/sys/.../iio:deviceX/events/in_accel_y_mag_rising_en
925What:		/sys/.../iio:deviceX/events/in_accel_y_mag_falling_en
926What:		/sys/.../iio:deviceX/events/in_accel_z_mag_en
927What:		/sys/.../iio:deviceX/events/in_accel_z_mag_rising_en
928What:		/sys/.../iio:deviceX/events/in_accel_z_mag_falling_en
929What:		/sys/.../iio:deviceX/events/in_accel_x&y&z_mag_rising_en
930What:		/sys/.../iio:deviceX/events/in_accel_x&y&z_mag_falling_en
931KernelVersion:	2.6.37
932Contact:	linux-iio@vger.kernel.org
933Description:
934		Similar to in_accel_x_thresh[_rising|_falling]_en, but here the
935		magnitude of the channel is compared to the threshold, not its
936		signed value.
937
938What:		/sys/.../events/in_accel_raw_mag_value
939What:		/sys/.../events/in_accel_x_raw_mag_rising_value
940What:		/sys/.../events/in_accel_y_raw_mag_rising_value
941What:		/sys/.../events/in_accel_z_raw_mag_rising_value
942KernelVersion:	2.6.37
943Contact:	linux-iio@vger.kernel.org
944Description:
945		The value to which the magnitude of the channel is compared. If
946		number or direction is not specified, applies to all channels of
947		this type.
948
949What:		/sys/.../events/in_steps_change_en
950KernelVersion:	4.0
951Contact:	linux-iio@vger.kernel.org
952Description:
953		Event generated when channel passes a threshold on the absolute
954		change in value. E.g. for steps: a step change event is
955		generated each time the user takes N steps, where N is set using
956		in_steps_change_value.
957
958What:		/sys/.../events/in_steps_change_value
959KernelVersion:	4.0
960Contact:	linux-iio@vger.kernel.org
961Description:
962		Specifies the value of change threshold that the
963		device is comparing against for the events enabled by
964		<type>[Y][_name]_roc[_rising|falling|]_en. E.g. for steps:
965		if set to 3, a step change event will be generated every 3
966		steps.
967
968What:		/sys/bus/iio/devices/iio:deviceX/trigger/current_trigger
969KernelVersion:	2.6.35
970Contact:	linux-iio@vger.kernel.org
971Description:
972		The name of the trigger source being used, as per string given
973		in /sys/class/iio/triggerY/name.
974
975What:		/sys/bus/iio/devices/iio:deviceX/buffer/length
976KernelVersion:	2.6.35
977Contact:	linux-iio@vger.kernel.org
978Description:
979		Number of scans contained by the buffer.
980
981What:		/sys/bus/iio/devices/iio:deviceX/buffer/bytes_per_datum
982KernelVersion:	2.6.37
983Contact:	linux-iio@vger.kernel.org
984Description:
985		Bytes per scan.  Due to alignment fun, the scan may be larger
986		than implied directly by the scan_element parameters.
987
988What:		/sys/bus/iio/devices/iio:deviceX/buffer/enable
989KernelVersion:	2.6.35
990Contact:	linux-iio@vger.kernel.org
991Description:
992		Actually start the buffer capture up.  Will start trigger
993		if first device and appropriate.
994
995What:		/sys/bus/iio/devices/iio:deviceX/scan_elements
996KernelVersion:	2.6.37
997Contact:	linux-iio@vger.kernel.org
998Description:
999		Directory containing interfaces for elements that will be
1000		captured for a single triggered sample set in the buffer.
1001
1002What:		/sys/.../iio:deviceX/scan_elements/in_accel_x_en
1003What:		/sys/.../iio:deviceX/scan_elements/in_accel_y_en
1004What:		/sys/.../iio:deviceX/scan_elements/in_accel_z_en
1005What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_x_en
1006What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_y_en
1007What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_z_en
1008What:		/sys/.../iio:deviceX/scan_elements/in_magn_x_en
1009What:		/sys/.../iio:deviceX/scan_elements/in_magn_y_en
1010What:		/sys/.../iio:deviceX/scan_elements/in_magn_z_en
1011What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_en
1012What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_en
1013What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_en
1014What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_en
1015What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_en
1016What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_en
1017What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_en
1018What:		/sys/.../iio:deviceX/scan_elements/in_voltageY-voltageZ_en
1019What:		/sys/.../iio:deviceX/scan_elements/in_incli_x_en
1020What:		/sys/.../iio:deviceX/scan_elements/in_incli_y_en
1021What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_en
1022What:		/sys/.../iio:deviceX/scan_elements/in_pressure_en
1023What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_en
1024What:		/sys/.../iio:deviceX/scan_elements/in_proximity_en
1025KernelVersion:	2.6.37
1026Contact:	linux-iio@vger.kernel.org
1027Description:
1028		Scan element control for triggered data capture.
1029
1030What:		/sys/.../iio:deviceX/scan_elements/in_accel_type
1031What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_type
1032What:		/sys/.../iio:deviceX/scan_elements/in_magn_type
1033What:		/sys/.../iio:deviceX/scan_elements/in_incli_type
1034What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_type
1035What:		/sys/.../iio:deviceX/scan_elements/in_voltage_type
1036What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_type
1037What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_type
1038What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_type
1039What:		/sys/.../iio:deviceX/scan_elements/in_pressure_type
1040What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_type
1041What:		/sys/.../iio:deviceX/scan_elements/in_proximity_type
1042KernelVersion:	2.6.37
1043Contact:	linux-iio@vger.kernel.org
1044Description:
1045		Description of the scan element data storage within the buffer
1046		and hence the form in which it is read from user-space.
1047		Form is [be|le]:[s|u]bits/storagebits[>>shift].
1048		be or le specifies big or little endian. s or u specifies if
1049		signed (2's complement) or unsigned. bits is the number of bits
1050		of data and storagebits is the space (after padding) that it
1051		occupies in the buffer. shift if specified, is the shift that
1052		needs to be applied prior to masking out unused bits. Some
1053		devices put their data in the middle of the transferred elements
1054		with additional information on both sides.  Note that some
1055		devices will have additional information in the unused bits
1056		so to get a clean value, the bits value must be used to mask
1057		the buffer output value appropriately.  The storagebits value
1058		also specifies the data alignment.  So s48/64>>2 will be a
1059		signed 48 bit integer stored in a 64 bit location aligned to
1060		a 64 bit boundary. To obtain the clean value, shift right 2
1061		and apply a mask to zero the top 16 bits of the result.
1062		For other storage combinations this attribute will be extended
1063		appropriately.
1064
1065What:		/sys/.../iio:deviceX/scan_elements/in_accel_type_available
1066KernelVersion:	2.6.37
1067Contact:	linux-iio@vger.kernel.org
1068Description:
1069		If the type parameter can take one of a small set of values,
1070		this attribute lists them.
1071
1072What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_index
1073What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_index
1074What:		/sys/.../iio:deviceX/scan_elements/in_accel_x_index
1075What:		/sys/.../iio:deviceX/scan_elements/in_accel_y_index
1076What:		/sys/.../iio:deviceX/scan_elements/in_accel_z_index
1077What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_x_index
1078What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_y_index
1079What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_z_index
1080What:		/sys/.../iio:deviceX/scan_elements/in_magn_x_index
1081What:		/sys/.../iio:deviceX/scan_elements/in_magn_y_index
1082What:		/sys/.../iio:deviceX/scan_elements/in_magn_z_index
1083What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_index
1084What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_index
1085What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_index
1086What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_index
1087What:		/sys/.../iio:deviceX/scan_elements/in_incli_x_index
1088What:		/sys/.../iio:deviceX/scan_elements/in_incli_y_index
1089What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_index
1090What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_index
1091What:		/sys/.../iio:deviceX/scan_elements/in_pressure_index
1092What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_index
1093What:		/sys/.../iio:deviceX/scan_elements/in_proximity_index
1094KernelVersion:	2.6.37
1095Contact:	linux-iio@vger.kernel.org
1096Description:
1097		A single positive integer specifying the position of this
1098		scan element in the buffer. Note these are not dependent on
1099		what is enabled and may not be contiguous. Thus for user-space
1100		to establish the full layout these must be used in conjunction
1101		with all _en attributes to establish which channels are present,
1102		and the relevant _type attributes to establish the data storage
1103		format.
1104
1105What:		/sys/.../iio:deviceX/in_activity_still_input
1106What:		/sys/.../iio:deviceX/in_activity_walking_input
1107What:		/sys/.../iio:deviceX/in_activity_jogging_input
1108What:		/sys/.../iio:deviceX/in_activity_running_input
1109KernelVersion:	3.19
1110Contact:	linux-iio@vger.kernel.org
1111Description:
1112		This attribute is used to read the confidence for an activity
1113		expressed in units as percentage.
1114
1115What:		/sys/.../iio:deviceX/in_anglvel_z_quadrature_correction_raw
1116KernelVersion:	2.6.38
1117Contact:	linux-iio@vger.kernel.org
1118Description:
1119		This attribute is used to read the amount of quadrature error
1120		present in the device at a given time.
1121
1122What:		/sys/.../iio:deviceX/in_accelX_power_mode
1123KernelVersion:	3.11
1124Contact:	linux-iio@vger.kernel.org
1125Description:
1126		Specifies the chip power mode.
1127		low_noise: reduce noise level from ADC,
1128		low_power: enable low current consumption.
1129		For a list of available output power modes read
1130		in_accel_power_mode_available.
1131
1132What:		/sys/.../iio:deviceX/in_energy_input
1133What:		/sys/.../iio:deviceX/in_energy_raw
1134KernelVersion:	4.0
1135Contact:	linux-iio@vger.kernel.org
1136Description:
1137		This attribute is used to read the energy value reported by the
1138		device (e.g.: human activity sensors report energy burnt by the
1139		user). Units after application of scale are Joules.
1140
1141What:		/sys/.../iio:deviceX/in_distance_input
1142What:		/sys/.../iio:deviceX/in_distance_raw
1143KernelVersion:	4.0
1144Contact:	linux-iio@vger.kernel.org
1145Description:
1146		This attribute is used to read the distance covered by the user
1147		since the last reboot while activated. Units after application
1148		of scale are meters.
1149
1150What:		/sys/bus/iio/devices/iio:deviceX/store_eeprom
1151KernelVersion:	3.4.0
1152Contact:	linux-iio@vger.kernel.org
1153Description:
1154		Writing '1' stores the current device configuration into
1155		on-chip EEPROM. After power-up or chip reset the device will
1156		automatically load the saved configuration.
1157
1158What:		/sys/.../iio:deviceX/in_proximity_raw
1159What:		/sys/.../iio:deviceX/in_proximity_input
1160What:		/sys/.../iio:deviceX/in_proximityY_raw
1161KernelVersion:	3.4
1162Contact:	linux-iio@vger.kernel.org
1163Description:
1164		Proximity measurement indicating that some
1165		object is near the sensor, usually be observing
1166		reflectivity of infrared or ultrasound emitted.
1167		Often these sensors are unit less and as such conversion
1168		to SI units is not possible. Higher proximity measurements
1169		indicate closer objects, and vice versa.
1170
1171What:		/sys/.../iio:deviceX/in_illuminance_input
1172What:		/sys/.../iio:deviceX/in_illuminance_raw
1173What:		/sys/.../iio:deviceX/in_illuminanceY_input
1174What:		/sys/.../iio:deviceX/in_illuminanceY_raw
1175What:		/sys/.../iio:deviceX/in_illuminanceY_mean_raw
1176What:		/sys/.../iio:deviceX/in_illuminance_ir_raw
1177What:		/sys/.../iio:deviceX/in_illuminance_clear_raw
1178KernelVersion:	3.4
1179Contact:	linux-iio@vger.kernel.org
1180Description:
1181		Illuminance measurement, units after application of scale
1182		and offset are lux.
1183
1184What:		/sys/.../iio:deviceX/in_intensityY_raw
1185What:		/sys/.../iio:deviceX/in_intensityY_ir_raw
1186What:		/sys/.../iio:deviceX/in_intensityY_both_raw
1187KernelVersion:	3.4
1188Contact:	linux-iio@vger.kernel.org
1189Description:
1190		Unit-less light intensity. Modifiers both and ir indicate
1191		that measurements contains visible and infrared light
1192		components or just infrared light, respectively.
1193
1194What:		/sys/.../iio:deviceX/in_intensity_red_integration_time
1195What:		/sys/.../iio:deviceX/in_intensity_green_integration_time
1196What:		/sys/.../iio:deviceX/in_intensity_blue_integration_time
1197What:		/sys/.../iio:deviceX/in_intensity_clear_integration_time
1198What:		/sys/.../iio:deviceX/in_illuminance_integration_time
1199KernelVersion:	3.12
1200Contact:	linux-iio@vger.kernel.org
1201Description:
1202		This attribute is used to get/set the integration time in
1203		seconds.
1204
1205What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_integration_time
1206KernelVersion:	4.0
1207Contact:	linux-iio@vger.kernel.org
1208Description:
1209		Number of seconds in which to compute speed.
1210
1211What:		/sys/bus/iio/devices/iio:deviceX/in_rot_quaternion_raw
1212KernelVersion:	3.15
1213Contact:	linux-iio@vger.kernel.org
1214Description:
1215		Raw value of quaternion components using a format
1216		x y z w. Here x, y, and z component represents the axis about
1217		which a rotation will occur and w component represents the
1218		amount of rotation.
1219
1220What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_raw
1221What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_raw
1222What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_raw
1223What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_raw
1224KernelVersion:	3.15
1225Contact:	linux-iio@vger.kernel.org
1226Description:
1227		Raw value of rotation from true/magnetic north measured with
1228		or without compensation from tilt sensors.
1229
1230What:		/sys/bus/iio/devices/iio:deviceX/in_currentX_raw
1231KernelVersion:	3.18
1232Contact:	linux-iio@vger.kernel.org
1233Description:
1234		Raw current measurement from channel X. Units are in milliamps
1235		after application of scale and offset. If no offset or scale is
1236		present, output should be considered as processed with the
1237		unit in milliamps.
1238
1239What:		/sys/.../iio:deviceX/in_energy_en
1240What:		/sys/.../iio:deviceX/in_distance_en
1241What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_en
1242What:		/sys/.../iio:deviceX/in_steps_en
1243KernelVersion:	3.19
1244Contact:	linux-iio@vger.kernel.org
1245Description:
1246		Activates a device feature that runs in firmware/hardware.
1247		E.g. for steps: the pedometer saves power while not used;
1248		when activated, it will count the steps taken by the user in
1249		firmware and export them through in_steps_input.
1250
1251What:		/sys/.../iio:deviceX/in_steps_input
1252KernelVersion:	3.19
1253Contact:	linux-iio@vger.kernel.org
1254Description:
1255		This attribute is used to read the number of steps taken by the user
1256		since the last reboot while activated.
1257
1258What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_input
1259What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_raw
1260KernelVersion:	3.19
1261Contact:	linux-iio@vger.kernel.org
1262Description:
1263		This attribute is used to read the current speed value of the
1264		user (which is the norm or magnitude of the velocity vector).
1265		Units after application of scale are m/s.
1266
1267What:		/sys/.../iio:deviceX/in_steps_debounce_count
1268KernelVersion:	4.0
1269Contact:	linux-iio@vger.kernel.org
1270Description:
1271		Specifies the number of steps that must occur within
1272		in_steps_filter_debounce_time for the pedometer to decide the
1273		consumer is making steps.
1274
1275What:		/sys/.../iio:deviceX/in_steps_debounce_time
1276KernelVersion:	4.0
1277Contact:	linux-iio@vger.kernel.org
1278Description:
1279		Specifies number of seconds in which we compute the steps
1280		that occur in order to decide if the consumer is making steps.
1281
1282What:		/sys/bus/iio/devices/iio:deviceX/buffer/watermark
1283KernelVersion:	4.2
1284Contact:	linux-iio@vger.kernel.org
1285Description:
1286		A single positive integer specifying the maximum number of scan
1287		elements to wait for.
1288		Poll will block until the watermark is reached.
1289		Blocking read will wait until the minimum between the requested
1290		read amount or the low water mark is available.
1291		Non-blocking read will retrieve the available samples from the
1292		buffer even if there are less samples then watermark level. This
1293		allows the application to block on poll with a timeout and read
1294		the available samples after the timeout expires and thus have a
1295		maximum delay guarantee.
1296
1297What:		/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_enabled
1298KernelVersion: 4.2
1299Contact:	linux-iio@vger.kernel.org
1300Description:
1301		A read-only boolean value that indicates if the hardware fifo is
1302		currently enabled or disabled. If the device does not have a
1303		hardware fifo this entry is not present.
1304		The hardware fifo is enabled when the buffer is enabled if the
1305		current hardware fifo watermark level is set and other current
1306		device settings allows it (e.g. if a trigger is set that samples
1307		data differently that the hardware fifo does then hardware fifo
1308		will not enabled).
1309		If the hardware fifo is enabled and the level of the hardware
1310		fifo reaches the hardware fifo watermark level the device will
1311		flush its hardware fifo to the device buffer. Doing a non
1312		blocking read on the device when no samples are present in the
1313		device buffer will also force a flush.
1314		When the hardware fifo is enabled there is no need to use a
1315		trigger to use buffer mode since the watermark settings
1316		guarantees that the hardware fifo is flushed to the device
1317		buffer.
1318
1319What:		/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark
1320KernelVersion: 4.2
1321Contact:	linux-iio@vger.kernel.org
1322Description:
1323		Read-only entry that contains a single integer specifying the
1324		current watermark level for the hardware fifo. If the device
1325		does not have a hardware fifo this entry is not present.
1326		The watermark level for the hardware fifo is set by the driver
1327		based on the value set by the user in buffer/watermark but
1328		taking into account hardware limitations (e.g. most hardware
1329		buffers are limited to 32-64 samples, some hardware buffers
1330		watermarks are fixed or have minimum levels).  A value of 0
1331		means that the hardware watermark is unset.
1332
1333What:		/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_min
1334KernelVersion: 4.2
1335Contact:       linux-iio@vger.kernel.org
1336Description:
1337		A single positive integer specifying the minimum watermark level
1338		for the hardware fifo of this device. If the device does not
1339		have a hardware fifo this entry is not present.
1340		If the user sets buffer/watermark to a value less than this one,
1341		then the hardware watermark will remain unset.
1342
1343What:	       /sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_max
1344KernelVersion: 4.2
1345Contact:       linux-iio@vger.kernel.org
1346Description:
1347		A single positive integer specifying the maximum watermark level
1348		for the hardware fifo of this device. If the device does not
1349		have a hardware fifo this entry is not present.
1350		If the user sets buffer/watermark to a value greater than this
1351		one, then the hardware watermark will be capped at this value.
1352
1353What:	       /sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_available
1354KernelVersion: 4.2
1355Contact:       linux-iio@vger.kernel.org
1356Description:
1357		A list of positive integers specifying the available watermark
1358		levels for the hardware fifo. This entry is optional and if it
1359		is not present it means that all the values between
1360		hwfifo_watermark_min and hwfifo_watermark_max are supported.
1361		If the user sets buffer/watermark to a value greater than
1362		hwfifo_watermak_min but not equal to any of the values in this
1363		list, the driver will chose an appropriate value for the
1364		hardware fifo watermark level.
1365