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