xref: /linux/Documentation/ABI/testing/sysfs-bus-iio (revision 95e9fd10f06cb5642028b6b851e32b8c8afb4571)
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 microvolts.
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 microvolts.
94
95What:		/sys/bus/iio/devices/iio:deviceX/in_capacitanceY_raw
96KernelVersion:	3.2
97Contact:	linux-iio@vger.kernel.org
98Description:
99		Raw capacitance measurement from channel Y. Units after
100		application of scale and offset are nanofarads.
101
102What:		/sys/.../iio:deviceX/in_capacitanceY-in_capacitanceZ_raw
103KernelVersion:	3.2
104Contact:	linux-iio@vger.kernel.org
105Description:
106		Raw differential capacitance measurement equivalent to
107		channel Y - channel Z where these channel numbers apply to the
108		physically equivalent inputs when non differential readings are
109		separately available. In differential only parts, then all that
110		is required is a consistent labeling.  Units after application
111		of scale and offset are nanofarads.
112
113What:		/sys/bus/iio/devices/iio:deviceX/in_temp_raw
114What:		/sys/bus/iio/devices/iio:deviceX/in_tempX_raw
115What:		/sys/bus/iio/devices/iio:deviceX/in_temp_x_raw
116What:		/sys/bus/iio/devices/iio:deviceX/in_temp_y_raw
117What:		/sys/bus/iio/devices/iio:deviceX/in_temp_z_raw
118KernelVersion:	2.6.35
119Contact:	linux-iio@vger.kernel.org
120Description:
121		Raw (unscaled no bias removal etc.) temperature measurement.
122		If an axis is specified it generally means that the temperature
123		sensor is associated with one part of a compound device (e.g.
124		a gyroscope axis). Units after application of scale and offset
125		are milli degrees Celsius.
126
127What:		/sys/bus/iio/devices/iio:deviceX/in_tempX_input
128KernelVersion:	2.6.38
129Contact:	linux-iio@vger.kernel.org
130Description:
131		Scaled temperature measurement in milli degrees Celsius.
132
133What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_raw
134What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_raw
135What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_raw
136KernelVersion:	2.6.35
137Contact:	linux-iio@vger.kernel.org
138Description:
139		Acceleration in direction x, y or z (may be arbitrarily assigned
140		but should match other such assignments on device).
141		Has all of the equivalent parameters as per voltageY. Units
142		after application of scale and offset are m/s^2.
143
144What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_raw
145What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_raw
146What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_raw
147KernelVersion:	2.6.35
148Contact:	linux-iio@vger.kernel.org
149Description:
150		Angular velocity about axis x, y or z (may be arbitrarily
151		assigned). Has all the equivalent parameters as	per voltageY.
152		Units after application of scale and offset are	radians per
153		second.
154
155What:		/sys/bus/iio/devices/iio:deviceX/in_incli_x_raw
156What:		/sys/bus/iio/devices/iio:deviceX/in_incli_y_raw
157What:		/sys/bus/iio/devices/iio:deviceX/in_incli_z_raw
158KernelVersion:	2.6.35
159Contact:	linux-iio@vger.kernel.org
160Description:
161		Inclination raw reading about axis x, y or z (may be
162		arbitrarily assigned). Data converted by application of offset
163		and scale to degrees.
164
165What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_raw
166What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_raw
167What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_raw
168KernelVersion:	2.6.35
169Contact:	linux-iio@vger.kernel.org
170Description:
171		Magnetic field along axis x, y or z (may be arbitrarily
172		assigned).  Data converted by application of offset
173		then scale to Gauss.
174
175What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_peak_raw
176What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_peak_raw
177What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_peak_raw
178KernelVersion:	2.6.36
179Contact:	linux-iio@vger.kernel.org
180Description:
181		Highest value since some reset condition.  These
182		attributes allow access to this and are otherwise
183		the direct equivalent of the <type>Y[_name]_raw attributes.
184
185What:		/sys/bus/iio/devices/iio:deviceX/in_accel_xyz_squared_peak_raw
186KernelVersion:	2.6.36
187Contact:	linux-iio@vger.kernel.org
188Description:
189		A computed peak value based on the sum squared magnitude of
190		the underlying value in the specified directions.
191
192What:		/sys/bus/iio/devices/iio:deviceX/in_accel_offset
193What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_offset
194What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_offset
195What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_offset
196What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_offset
197What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_offset
198What:		/sys/bus/iio/devices/iio:deviceX/in_tempY_offset
199What:		/sys/bus/iio/devices/iio:deviceX/in_temp_offset
200KernelVersion:	2.6.35
201Contact:	linux-iio@vger.kernel.org
202Description:
203		If known for a device, offset to be added to <type>[Y]_raw prior
204		to scaling by <type>[Y]_scale in order to obtain value in the
205		<type> units as specified in <type>[Y]_raw documentation.
206		Not present if the offset is always 0 or unknown. If Y or
207		axis <x|y|z> is not present, then the offset applies to all
208		in channels of <type>.
209		May be writable if a variable offset can be applied on the
210		device. Note that this is different to calibbias which
211		is for devices (or drivers) that apply offsets to compensate
212		for variation between different instances of the part, typically
213		adjusted by using some hardware supported calibration procedure.
214		Calibbias is applied internally, offset is applied in userspace
215		to the _raw output.
216
217What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_scale
218What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_scale
219What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_scale
220What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_scale
221What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_scale
222What:		/sys/bus/iio/devices/iio:deviceX/in_accel_scale
223What:		/sys/bus/iio/devices/iio:deviceX/in_accel_peak_scale
224What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_scale
225What:		/sys/bus/iio/devices/iio:deviceX/in_magn_scale
226What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_scale
227What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_scale
228What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_scale
229KernelVersion:	2.6.35
230Contact:	linux-iio@vger.kernel.org
231Description:
232		If known for a device, scale to be applied to <type>Y[_name]_raw
233		post addition of <type>[Y][_name]_offset in order to obtain the
234		measured value in <type> units as specified in
235		<type>[Y][_name]_raw documentation.  If shared across all in
236		channels then Y and <x|y|z> are not present and the value is
237		called <type>[Y][_name]_scale. The peak modifier means this
238		value is applied to <type>Y[_name]_peak_raw values.
239
240What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_calibbias
241What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_calibbias
242What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_calibbias
243What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibbias
244What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibbias
245What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibbias
246What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibbias
247What:		/sys/bus/iio/devices/iio:deviceX/in_proximity0_calibbias
248KernelVersion:	2.6.35
249Contact:	linux-iio@vger.kernel.org
250Description:
251		Hardware applied calibration offset (assumed to fix production
252		inaccuracies).
253
254What		/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale
255What		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_calibscale
256What		/sys/bus/iio/devices/iio:deviceX/in_voltage_calibscale
257What		/sys/bus/iio/devices/iio:deviceX/in_accel_x_calibscale
258What		/sys/bus/iio/devices/iio:deviceX/in_accel_y_calibscale
259What		/sys/bus/iio/devices/iio:deviceX/in_accel_z_calibscale
260What		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibscale
261What		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibscale
262What		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibscale
263what		/sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibscale
264what		/sys/bus/iio/devices/iio:deviceX/in_proximity0_calibscale
265KernelVersion:	2.6.35
266Contact:	linux-iio@vger.kernel.org
267Description:
268		Hardware applied calibration scale factor (assumed to fix
269		production inaccuracies).  If shared across all channels,
270		<type>_calibscale is used.
271
272What:		/sys/bus/iio/devices/iio:deviceX/in_accel_scale_available
273What:		/sys/.../iio:deviceX/in_voltageX_scale_available
274What:		/sys/.../iio:deviceX/in_voltage-voltage_scale_available
275What:		/sys/.../iio:deviceX/out_voltageX_scale_available
276What:		/sys/.../iio:deviceX/out_altvoltageX_scale_available
277What:		/sys/.../iio:deviceX/in_capacitance_scale_available
278KernelVersion:	2.6.35
279Contact:	linux-iio@vger.kernel.org
280Description:
281		If a discrete set of scale values is available, they
282		are listed in this attribute.
283
284What		/sys/bus/iio/devices/iio:deviceX/out_voltageY_hardwaregain
285KernelVersion:	2.6.35
286Contact:	linux-iio@vger.kernel.org
287Description:
288		Hardware applied gain factor. If shared across all channels,
289		<type>_hardwaregain is used.
290
291What:		/sys/.../in_accel_filter_low_pass_3db_frequency
292What:		/sys/.../in_magn_filter_low_pass_3db_frequency
293What:		/sys/.../in_anglvel_filter_low_pass_3db_frequency
294KernelVersion:	3.2
295Contact:	linux-iio@vger.kernel.org
296Description:
297		If a known or controllable low pass filter is applied
298		to the underlying data channel, then this parameter
299		gives the 3dB frequency of the filter in Hz.
300
301What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_raw
302What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_raw
303KernelVersion:	2.6.37
304Contact:	linux-iio@vger.kernel.org
305Description:
306		Raw (unscaled, no bias etc.) output voltage for
307		channel Y.  The number must always be specified and
308		unique if the output corresponds to a single channel.
309		While DAC like devices typically use out_voltage,
310		a continuous frequency generating device, such as
311		a DDS or PLL should use out_altvoltage.
312
313What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY&Z_raw
314What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY&Z_raw
315KernelVersion:	2.6.37
316Contact:	linux-iio@vger.kernel.org
317Description:
318		Raw (unscaled, no bias etc.) output voltage for an aggregate of
319		channel Y, channel Z, etc.  This interface is available in cases
320		where a single output sets the value for multiple channels
321		simultaneously.
322
323What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown_mode
324What:		/sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown_mode
325What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown_mode
326What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown_mode
327KernelVersion:	2.6.38
328Contact:	linux-iio@vger.kernel.org
329Description:
330		Specifies the output powerdown mode.
331		DAC output stage is disconnected from the amplifier and
332		1kohm_to_gnd: connected	to ground via an 1kOhm resistor,
333		6kohm_to_gnd: connected to ground via a 6kOhm resistor,
334		20kohm_to_gnd: connected to ground via a 20kOhm resistor,
335		100kohm_to_gnd: connected to ground via an 100kOhm resistor,
336		three_state: left floating.
337		For a list of available output power down options read
338		outX_powerdown_mode_available. If Y is not present the
339		mode is shared across all outputs.
340
341What:		/sys/.../iio:deviceX/out_votlageY_powerdown_mode_available
342What:		/sys/.../iio:deviceX/out_voltage_powerdown_mode_available
343What:		/sys/.../iio:deviceX/out_altvotlageY_powerdown_mode_available
344What:		/sys/.../iio:deviceX/out_altvoltage_powerdown_mode_available
345KernelVersion:	2.6.38
346Contact:	linux-iio@vger.kernel.org
347Description:
348		Lists all available output power down modes.
349		If Y is not present the mode is shared across all outputs.
350
351What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown
352What:		/sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown
353What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown
354What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown
355KernelVersion:	2.6.38
356Contact:	linux-iio@vger.kernel.org
357Description:
358		Writing 1 causes output Y to enter the power down mode specified
359		by the corresponding outY_powerdown_mode. DAC output stage is
360		disconnected from the amplifier. Clearing returns to normal
361		operation. Y may be suppressed if all outputs are controlled
362		together.
363
364What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency
365KernelVersion:	3.4.0
366Contact:	linux-iio@vger.kernel.org
367Description:
368		Output frequency for channel Y in Hz. The number must always be
369		specified and unique if the output corresponds to a single
370		channel.
371
372What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_phase
373KernelVersion:	3.4.0
374Contact:	linux-iio@vger.kernel.org
375Description:
376		Phase in radians of one frequency/clock output Y
377		(out_altvoltageY) relative to another frequency/clock output
378		(out_altvoltageZ) of the device X. The number must always be
379		specified and unique if the output corresponds to a single
380		channel.
381
382What:		/sys/bus/iio/devices/iio:deviceX/events
383KernelVersion:	2.6.35
384Contact:	linux-iio@vger.kernel.org
385Description:
386		Configuration of which hardware generated events are passed up
387		to user-space.
388
389What:		/sys/.../iio:deviceX/events/in_accel_x_thresh_rising_en
390What:		/sys/.../iio:deviceX/events/in_accel_x_thresh_falling_en
391What:		/sys/.../iio:deviceX/events/in_accel_y_thresh_rising_en
392What:		/sys/.../iio:deviceX/events/in_accel_y_thresh_falling_en
393What:		/sys/.../iio:deviceX/events/in_accel_z_thresh_rising_en
394What:		/sys/.../iio:deviceX/events/in_accel_z_thresh_falling_en
395What:		/sys/.../iio:deviceX/events/in_anglvel_x_thresh_rising_en
396What:		/sys/.../iio:deviceX/events/in_anglvel_x_thresh_falling_en
397What:		/sys/.../iio:deviceX/events/in_anglvel_y_thresh_rising_en
398What:		/sys/.../iio:deviceX/events/in_anglvel_y_thresh_falling_en
399What:		/sys/.../iio:deviceX/events/in_anglvel_z_thresh_rising_en
400What:		/sys/.../iio:deviceX/events/in_anglvel_z_thresh_falling_en
401What:		/sys/.../iio:deviceX/events/in_magn_x_thresh_rising_en
402What:		/sys/.../iio:deviceX/events/in_magn_x_thresh_falling_en
403What:		/sys/.../iio:deviceX/events/in_magn_y_thresh_rising_en
404What:		/sys/.../iio:deviceX/events/in_magn_y_thresh_falling_en
405What:		/sys/.../iio:deviceX/events/in_magn_z_thresh_rising_en
406What:		/sys/.../iio:deviceX/events/in_magn_z_thresh_falling_en
407What:		/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_rising_en
408What:		/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_falling_en
409What:		/sys/.../iio:deviceX/events/in_voltageY_thresh_rising_en
410What:		/sys/.../iio:deviceX/events/in_voltageY_thresh_falling_en
411What:		/sys/.../iio:deviceX/events/in_tempY_thresh_rising_en
412What:		/sys/.../iio:deviceX/events/in_tempY_thresh_falling_en
413KernelVersion:	2.6.37
414Contact:	linux-iio@vger.kernel.org
415Description:
416		Event generated when channel passes a threshold in the specified
417		(_rising|_falling) direction. If the direction is not specified,
418		then either the device will report an event which ever direction
419		a single threshold value is passed in (e.g.
420		<type>[Y][_name]_<raw|input>_thresh_value) or
421		<type>[Y][_name]_<raw|input>_thresh_rising_value and
422		<type>[Y][_name]_<raw|input>_thresh_falling_value may take
423		different values, but the device can only enable both thresholds
424		or neither.
425		Note the driver will assume the last p events requested are
426		to be enabled where p is how many it supports (which may vary
427		depending on the exact set requested. So if you want to be
428		sure you have set what you think you have, check the contents of
429		these attributes after everything is configured. Drivers may
430		have to buffer any parameters so that they are consistent when
431		a given event type is enabled at a future point (and not those for
432		whatever event was previously enabled).
433
434What:		/sys/.../iio:deviceX/events/in_accel_x_roc_rising_en
435What:		/sys/.../iio:deviceX/events/in_accel_x_roc_falling_en
436What:		/sys/.../iio:deviceX/events/in_accel_y_roc_rising_en
437What:		/sys/.../iio:deviceX/events/in_accel_y_roc_falling_en
438What:		/sys/.../iio:deviceX/events/in_accel_z_roc_rising_en
439What:		/sys/.../iio:deviceX/events/in_accel_z_roc_falling_en
440What:		/sys/.../iio:deviceX/events/in_anglvel_x_roc_rising_en
441What:		/sys/.../iio:deviceX/events/in_anglvel_x_roc_falling_en
442What:		/sys/.../iio:deviceX/events/in_anglvel_y_roc_rising_en
443What:		/sys/.../iio:deviceX/events/in_anglvel_y_roc_falling_en
444What:		/sys/.../iio:deviceX/events/in_anglvel_z_roc_rising_en
445What:		/sys/.../iio:deviceX/events/in_anglvel_z_roc_falling_en
446What:		/sys/.../iio:deviceX/events/in_magn_x_roc_rising_en
447What:		/sys/.../iio:deviceX/events/in_magn_x_roc_falling_en
448What:		/sys/.../iio:deviceX/events/in_magn_y_roc_rising_en
449What:		/sys/.../iio:deviceX/events/in_magn_y_roc_falling_en
450What:		/sys/.../iio:deviceX/events/in_magn_z_roc_rising_en
451What:		/sys/.../iio:deviceX/events/in_magn_z_roc_falling_en
452What:		/sys/.../iio:deviceX/events/in_voltageY_supply_roc_rising_en
453What:		/sys/.../iio:deviceX/events/in_voltageY_supply_roc_falling_en
454What:		/sys/.../iio:deviceX/events/in_voltageY_roc_rising_en
455What:		/sys/.../iio:deviceX/events/in_voltageY_roc_falling_en
456What:		/sys/.../iio:deviceX/events/in_tempY_roc_rising_en
457What:		/sys/.../iio:deviceX/events/in_tempY_roc_falling_en
458KernelVersion:	2.6.37
459Contact:	linux-iio@vger.kernel.org
460Description:
461		Event generated when channel passes a threshold on the rate of
462		change (1st differential) in the specified (_rising|_falling)
463		direction. If the direction is not specified, then either the
464		device will report an event which ever direction a single
465		threshold value is passed in (e.g.
466		<type>[Y][_name]_<raw|input>_roc_value) or
467		<type>[Y][_name]_<raw|input>_roc_rising_value and
468		<type>[Y][_name]_<raw|input>_roc_falling_value may take
469		different values, but the device can only enable both rate of
470		change thresholds or neither.
471		Note the driver will assume the last p events requested are
472		to be enabled where p is however many it supports (which may
473		vary depending on the exact set requested. So if you want to be
474		sure you have set what you think you have, check the contents of
475		these attributes after everything is configured. Drivers may
476		have to buffer any parameters so that they are consistent when
477		a given event type is enabled a future point (and not those for
478		whatever event was previously enabled).
479
480What:		/sys/.../events/in_accel_x_raw_thresh_rising_value
481What:		/sys/.../events/in_accel_x_raw_thresh_falling_value
482What:		/sys/.../events/in_accel_y_raw_thresh_rising_value
483What:		/sys/.../events/in_accel_y_raw_thresh_falling_value
484What:		/sys/.../events/in_accel_z_raw_thresh_rising_value
485What:		/sys/.../events/in_accel_z_raw_thresh_falling_value
486What:		/sys/.../events/in_anglvel_x_raw_thresh_rising_value
487What:		/sys/.../events/in_anglvel_x_raw_thresh_falling_value
488What:		/sys/.../events/in_anglvel_y_raw_thresh_rising_value
489What:		/sys/.../events/in_anglvel_y_raw_thresh_falling_value
490What:		/sys/.../events/in_anglvel_z_raw_thresh_rising_value
491What:		/sys/.../events/in_anglvel_z_raw_thresh_falling_value
492What:		/sys/.../events/in_magn_x_raw_thresh_rising_value
493What:		/sys/.../events/in_magn_x_raw_thresh_falling_value
494What:		/sys/.../events/in_magn_y_raw_thresh_rising_value
495What:		/sys/.../events/in_magn_y_raw_thresh_falling_value
496What:		/sys/.../events/in_magn_z_raw_thresh_rising_value
497What:		/sys/.../events/in_magn_z_raw_thresh_falling_value
498What:		/sys/.../events/in_voltageY_supply_raw_thresh_rising_value
499What:		/sys/.../events/in_voltageY_supply_raw_thresh_falling_value
500What:		/sys/.../events/in_voltageY_raw_thresh_rising_value
501What:		/sys/.../events/in_voltageY_raw_thresh_falling_value
502What:		/sys/.../events/in_tempY_raw_thresh_rising_value
503What:		/sys/.../events/in_tempY_raw_thresh_falling_value
504What:		/sys/.../events/in_illuminance0_thresh_falling_value
505what:		/sys/.../events/in_illuminance0_thresh_rising_value
506what:		/sys/.../events/in_proximity0_thresh_falling_value
507what:		/sys/.../events/in_proximity0_thresh_rising_value
508KernelVersion:	2.6.37
509Contact:	linux-iio@vger.kernel.org
510Description:
511		Specifies the value of threshold that the device is comparing
512		against for the events enabled by
513		<type>Y[_name]_thresh[_rising|falling]_en.
514		If separate attributes exist for the two directions, but
515		direction is not specified for this attribute, then a single
516		threshold value applies to both directions.
517		The raw or input element of the name indicates whether the
518		value is in raw device units or in processed units (as _raw
519		and _input do on sysfs direct channel read attributes).
520
521What:		/sys/.../events/in_accel_x_raw_roc_rising_value
522What:		/sys/.../events/in_accel_x_raw_roc_falling_value
523What:		/sys/.../events/in_accel_y_raw_roc_rising_value
524What:		/sys/.../events/in_accel_y_raw_roc_falling_value
525What:		/sys/.../events/in_accel_z_raw_roc_rising_value
526What:		/sys/.../events/in_accel_z_raw_roc_falling_value
527What:		/sys/.../events/in_anglvel_x_raw_roc_rising_value
528What:		/sys/.../events/in_anglvel_x_raw_roc_falling_value
529What:		/sys/.../events/in_anglvel_y_raw_roc_rising_value
530What:		/sys/.../events/in_anglvel_y_raw_roc_falling_value
531What:		/sys/.../events/in_anglvel_z_raw_roc_rising_value
532What:		/sys/.../events/in_anglvel_z_raw_roc_falling_value
533What:		/sys/.../events/in_magn_x_raw_roc_rising_value
534What:		/sys/.../events/in_magn_x_raw_roc_falling_value
535What:		/sys/.../events/in_magn_y_raw_roc_rising_value
536What:		/sys/.../events/in_magn_y_raw_roc_falling_value
537What:		/sys/.../events/in_magn_z_raw_roc_rising_value
538What:		/sys/.../events/in_magn_z_raw_roc_falling_value
539What:		/sys/.../events/in_voltageY_supply_raw_roc_rising_value
540What:		/sys/.../events/in_voltageY_supply_raw_roc_falling_value
541What:		/sys/.../events/in_voltageY_raw_roc_rising_value
542What:		/sys/.../events/in_voltageY_raw_roc_falling_value
543What:		/sys/.../events/in_tempY_raw_roc_rising_value
544What:		/sys/.../events/in_tempY_raw_roc_falling_value
545KernelVersion:	2.6.37
546Contact:	linux-iio@vger.kernel.org
547Description:
548		Specifies the value of rate of change threshold that the
549		device is comparing against for the events enabled by
550		<type>[Y][_name]_roc[_rising|falling]_en.
551		If separate attributes exist for the two directions,
552		but direction is not specified for this attribute,
553		then a single threshold value applies to both directions.
554		The raw or input element of the name indicates whether the
555		value is in raw device units or in processed units (as _raw
556		and _input do on sysfs direct channel read attributes).
557
558What:		/sys/.../events/in_accel_x_thresh_rising_period
559What:		/sys/.../events/in_accel_x_thresh_falling_period
560hat:		/sys/.../events/in_accel_x_roc_rising_period
561What:		/sys/.../events/in_accel_x_roc_falling_period
562What:		/sys/.../events/in_accel_y_thresh_rising_period
563What:		/sys/.../events/in_accel_y_thresh_falling_period
564What:		/sys/.../events/in_accel_y_roc_rising_period
565What:		/sys/.../events/in_accel_y_roc_falling_period
566What:		/sys/.../events/in_accel_z_thresh_rising_period
567What:		/sys/.../events/in_accel_z_thresh_falling_period
568What:		/sys/.../events/in_accel_z_roc_rising_period
569What:		/sys/.../events/in_accel_z_roc_falling_period
570What:		/sys/.../events/in_anglvel_x_thresh_rising_period
571What:		/sys/.../events/in_anglvel_x_thresh_falling_period
572What:		/sys/.../events/in_anglvel_x_roc_rising_period
573What:		/sys/.../events/in_anglvel_x_roc_falling_period
574What:		/sys/.../events/in_anglvel_y_thresh_rising_period
575What:		/sys/.../events/in_anglvel_y_thresh_falling_period
576What:		/sys/.../events/in_anglvel_y_roc_rising_period
577What:		/sys/.../events/in_anglvel_y_roc_falling_period
578What:		/sys/.../events/in_anglvel_z_thresh_rising_period
579What:		/sys/.../events/in_anglvel_z_thresh_falling_period
580What:		/sys/.../events/in_anglvel_z_roc_rising_period
581What:		/sys/.../events/in_anglvel_z_roc_falling_period
582What:		/sys/.../events/in_magn_x_thresh_rising_period
583What:		/sys/.../events/in_magn_x_thresh_falling_period
584What:		/sys/.../events/in_magn_x_roc_rising_period
585What:		/sys/.../events/in_magn_x_roc_falling_period
586What:		/sys/.../events/in_magn_y_thresh_rising_period
587What:		/sys/.../events/in_magn_y_thresh_falling_period
588What:		/sys/.../events/in_magn_y_roc_rising_period
589What:		/sys/.../events/in_magn_y_roc_falling_period
590What:		/sys/.../events/in_magn_z_thresh_rising_period
591What:		/sys/.../events/in_magn_z_thresh_falling_period
592What:		/sys/.../events/in_magn_z_roc_rising_period
593What:		/sys/.../events/in_magn_z_roc_falling_period
594What:		/sys/.../events/in_voltageY_supply_thresh_rising_period
595What:		/sys/.../events/in_voltageY_supply_thresh_falling_period
596What:		/sys/.../events/in_voltageY_supply_roc_rising_period
597What:		/sys/.../events/in_voltageY_supply_roc_falling_period
598What:		/sys/.../events/in_voltageY_thresh_rising_period
599What:		/sys/.../events/in_voltageY_thresh_falling_period
600What:		/sys/.../events/in_voltageY_roc_rising_period
601What:		/sys/.../events/in_voltageY_roc_falling_period
602What:		/sys/.../events/in_tempY_thresh_rising_period
603What:		/sys/.../events/in_tempY_thresh_falling_period
604What:		/sys/.../events/in_tempY_roc_rising_period
605What:		/sys/.../events/in_tempY_roc_falling_period
606What:		/sys/.../events/in_accel_x&y&z_mag_falling_period
607What:		/sys/.../events/in_intensity0_thresh_period
608What:		/sys/.../events/in_proximity0_thresh_period
609KernelVersion:	2.6.37
610Contact:	linux-iio@vger.kernel.org
611Description:
612		Period of time (in seconds) for which the condition must be
613		met before an event is generated. If direction is not
614		specified then this period applies to both directions.
615
616What:		/sys/.../iio:deviceX/events/in_accel_mag_en
617What:		/sys/.../iio:deviceX/events/in_accel_mag_rising_en
618What:		/sys/.../iio:deviceX/events/in_accel_mag_falling_en
619What:		/sys/.../iio:deviceX/events/in_accel_x_mag_en
620What:		/sys/.../iio:deviceX/events/in_accel_x_mag_rising_en
621What:		/sys/.../iio:deviceX/events/in_accel_x_mag_falling_en
622What:		/sys/.../iio:deviceX/events/in_accel_y_mag_en
623What:		/sys/.../iio:deviceX/events/in_accel_y_mag_rising_en
624What:		/sys/.../iio:deviceX/events/in_accel_y_mag_falling_en
625What:		/sys/.../iio:deviceX/events/in_accel_z_mag_en
626What:		/sys/.../iio:deviceX/events/in_accel_z_mag_rising_en
627What:		/sys/.../iio:deviceX/events/in_accel_z_mag_falling_en
628What:		/sys/.../iio:deviceX/events/in_accel_x&y&z_mag_rising_en
629What:		/sys/.../iio:deviceX/events/in_accel_x&y&z_mag_falling_en
630KernelVersion:	2.6.37
631Contact:	linux-iio@vger.kernel.org
632Description:
633		Similar to in_accel_x_thresh[_rising|_falling]_en, but here the
634		magnitude of the channel is compared to the threshold, not its
635		signed value.
636
637What:		/sys/.../events/in_accel_raw_mag_value
638What:		/sys/.../events/in_accel_x_raw_mag_rising_value
639What:		/sys/.../events/in_accel_y_raw_mag_rising_value
640What:		/sys/.../events/in_accel_z_raw_mag_rising_value
641KernelVersion:	2.6.37
642Contact:	linux-iio@vger.kernel.org
643Description:
644		The value to which the magnitude of the channel is compared. If
645		number or direction is not specified, applies to all channels of
646		this type.
647
648What:		/sys/bus/iio/devices/iio:deviceX/trigger/current_trigger
649KernelVersion:	2.6.35
650Contact:	linux-iio@vger.kernel.org
651Description:
652		The name of the trigger source being used, as per string given
653		in /sys/class/iio/triggerY/name.
654
655What:		/sys/bus/iio/devices/iio:deviceX/buffer/length
656KernelVersion:	2.6.35
657Contact:	linux-iio@vger.kernel.org
658Description:
659		Number of scans contained by the buffer.
660
661What:		/sys/bus/iio/devices/iio:deviceX/buffer/bytes_per_datum
662KernelVersion:	2.6.37
663Contact:	linux-iio@vger.kernel.org
664Description:
665		Bytes per scan.  Due to alignment fun, the scan may be larger
666		than implied directly by the scan_element parameters.
667
668What:		/sys/bus/iio/devices/iio:deviceX/buffer/enable
669KernelVersion:	2.6.35
670Contact:	linux-iio@vger.kernel.org
671Description:
672		Actually start the buffer capture up.  Will start trigger
673		if first device and appropriate.
674
675What:		/sys/bus/iio/devices/iio:deviceX/buffer/scan_elements
676KernelVersion:	2.6.37
677Contact:	linux-iio@vger.kernel.org
678Description:
679		Directory containing interfaces for elements that will be
680		captured for a single triggered sample set in the buffer.
681
682What:		/sys/.../buffer/scan_elements/in_accel_x_en
683What:		/sys/.../buffer/scan_elements/in_accel_y_en
684What:		/sys/.../buffer/scan_elements/in_accel_z_en
685What:		/sys/.../buffer/scan_elements/in_anglvel_x_en
686What:		/sys/.../buffer/scan_elements/in_anglvel_y_en
687What:		/sys/.../buffer/scan_elements/in_anglvel_z_en
688What:		/sys/.../buffer/scan_elements/in_magn_x_en
689What:		/sys/.../buffer/scan_elements/in_magn_y_en
690What:		/sys/.../buffer/scan_elements/in_magn_z_en
691What:		/sys/.../buffer/scan_elements/in_timestamp_en
692What:		/sys/.../buffer/scan_elements/in_voltageY_supply_en
693What:		/sys/.../buffer/scan_elements/in_voltageY_en
694What:		/sys/.../buffer/scan_elements/in_voltageY-voltageZ_en
695What:		/sys/.../buffer/scan_elements/in_incli_x_en
696What:		/sys/.../buffer/scan_elements/in_incli_y_en
697KernelVersion:	2.6.37
698Contact:	linux-iio@vger.kernel.org
699Description:
700		Scan element control for triggered data capture.
701
702What:		/sys/.../buffer/scan_elements/in_accel_type
703What:		/sys/.../buffer/scan_elements/in_anglvel_type
704What:		/sys/.../buffer/scan_elements/in_magn_type
705What:		/sys/.../buffer/scan_elements/in_incli_type
706What:		/sys/.../buffer/scan_elements/in_voltageY_type
707What:		/sys/.../buffer/scan_elements/in_voltage_type
708What:		/sys/.../buffer/scan_elements/in_voltageY_supply_type
709What:		/sys/.../buffer/scan_elements/in_timestamp_type
710KernelVersion:	2.6.37
711Contact:	linux-iio@vger.kernel.org
712Description:
713		Description of the scan element data storage within the buffer
714		and hence the form in which it is read from user-space.
715		Form is [be|le]:[s|u]bits/storagebits[>>shift].
716		be or le specifies big or little endian. s or u specifies if
717		signed (2's complement) or unsigned. bits is the number of bits
718		of data and storagebits is the space (after padding) that it
719		occupies in the buffer. shift if specified, is the shift that
720		needs to be applied prior to masking out unused bits. Some
721		devices put their data in the middle of the transferred elements
722		with additional information on both sides.  Note that some
723		devices will have additional information in the unused bits
724		so to get a clean value, the bits value must be used to mask
725		the buffer output value appropriately.  The storagebits value
726		also specifies the data alignment.  So s48/64>>2 will be a
727		signed 48 bit integer stored in a 64 bit location aligned to
728		a 64 bit boundary. To obtain the clean value, shift right 2
729		and apply a mask to zero the top 16 bits of the result.
730		For other storage combinations this attribute will be extended
731		appropriately.
732
733What:		/sys/.../buffer/scan_elements/in_accel_type_available
734KernelVersion:	2.6.37
735Contact:	linux-iio@vger.kernel.org
736Description:
737		If the type parameter can take one of a small set of values,
738		this attribute lists them.
739
740What:		/sys/.../buffer/scan_elements/in_voltageY_index
741What:		/sys/.../buffer/scan_elements/in_voltageY_supply_index
742What:		/sys/.../buffer/scan_elements/in_accel_x_index
743What:		/sys/.../buffer/scan_elements/in_accel_y_index
744What:		/sys/.../buffer/scan_elements/in_accel_z_index
745What:		/sys/.../buffer/scan_elements/in_anglvel_x_index
746What:		/sys/.../buffer/scan_elements/in_anglvel_y_index
747What:		/sys/.../buffer/scan_elements/in_anglvel_z_index
748What:		/sys/.../buffer/scan_elements/in_magn_x_index
749What:		/sys/.../buffer/scan_elements/in_magn_y_index
750What:		/sys/.../buffer/scan_elements/in_magn_z_index
751What:		/sys/.../buffer/scan_elements/in_incli_x_index
752What:		/sys/.../buffer/scan_elements/in_incli_y_index
753What:		/sys/.../buffer/scan_elements/in_timestamp_index
754KernelVersion:	2.6.37
755Contact:	linux-iio@vger.kernel.org
756Description:
757		A single positive integer specifying the position of this
758		scan element in the buffer. Note these are not dependent on
759		what is enabled and may not be contiguous. Thus for user-space
760		to establish the full layout these must be used in conjunction
761		with all _en attributes to establish which channels are present,
762		and the relevant _type attributes to establish the data storage
763		format.
764
765What:		/sys/.../iio:deviceX/in_anglvel_z_quadrature_correction_raw
766KernelVersion:	2.6.38
767Contact:	linux-iio@vger.kernel.org
768Description:
769		This attribute is used to read the amount of quadrature error
770		present in the device at a given time.
771