What:		/sys/bus/iio/devices/iio:deviceX
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Hardware chip or device accessed by one communication port.
		Corresponds to a grouping of sensor channels. X is the IIO
		index of the device.

What:		/sys/bus/iio/devices/triggerX
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		An event driven driver of data capture to an in kernel buffer.
		May be provided by a device driver that also has an IIO device
		based on hardware generated events (e.g. data ready) or
		provided by a separate driver for other hardware (e.g.
		periodic timer, GPIO or high resolution timer).

		Contains trigger type specific elements. These do not
		generalize well and hence are not documented in this file.
		X is the IIO index of the trigger.

What:		/sys/bus/iio/devices/iio:deviceX/buffer
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Directory of attributes relating to the buffer for the device.

What:		/sys/bus/iio/devices/iio:deviceX/name
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Description of the physical chip / device for device X.
		Typically a part number.

What:		/sys/bus/iio/devices/iio:deviceX/label
KernelVersion:	5.8
Contact:	linux-iio@vger.kernel.org
Description:
		Optional symbolic label for a device.
		This is useful for userspace to be able to better identify an
		individual device.

		The contents of the label are free-form, but there are some
		standardized uses:

		For proximity sensors which give the proximity (of a person) to
		a certain wlan or wwan antenna the following standardized labels
		are used:

		* "proximity-wifi"
		* "proximity-lte"
		* "proximity-wifi-lte"
		* "proximity-wifi-left"
		* "proximity-wifi-right"

		These are used to indicate to userspace that these proximity
		sensors may be used to tune transmit power to ensure that
		Specific Absorption Rate (SAR) limits are honored.
		The "-left" and "-right" labels are for devices with multiple
		antennas.

		In some laptops/tablets the standardized proximity sensor labels
		instead	indicate proximity to a specific part of the device:

		* "proximity-palmrest" indicates proximity to the keyboard's palmrest
		* "proximity-palmrest-left" indicates proximity to the left part of the palmrest
		* "proximity-palmrest-right" indicates proximity to the right part of the palmrest
		* "proximity-lap" indicates the device is being used on someone's lap

		Note "proximity-lap" is special in that its value may be
		calculated by firmware from other sensor readings, rather then
		being a raw sensor reading.

		For accelerometers used in 2-in-1s with 360° (yoga-style) hinges,
		which have an accelerometer in both their base and their display,
		the following standardized labels are used:

		* "accel-base"
		* "accel-display"

		For devices where an accelerometer is housed in the swivel camera subassembly
		(for AR application), the following standardized label is used:

		* "accel-camera"

What:		/sys/bus/iio/devices/iio:deviceX/current_timestamp_clock
KernelVersion:	4.5
Contact:	linux-iio@vger.kernel.org
Description:
		String identifying current posix clock used to timestamp
		buffered samples and events for device X.

What:		/sys/bus/iio/devices/iio:deviceX/sampling_frequency
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency
What:		/sys/bus/iio/devices/iio:deviceX/buffer/sampling_frequency
What:		/sys/bus/iio/devices/iio:deviceX/events/sampling_frequency
What:		/sys/bus/iio/devices/triggerX/sampling_frequency
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Some devices have internal clocks.  This parameter sets the
		resulting sampling frequency.  In many devices this
		parameter has an effect on input filters etc. rather than
		simply controlling when the input is sampled.  As this
		affects data ready triggers, hardware buffers and the sysfs
		direct access interfaces, it may be found in any of the
		relevant directories.  If it affects all of the above
		then it is to be found in the base device directory.

		The stm32-timer-trigger has the additional characteristic that
		a sampling_frequency of 0 is defined to stop sampling.

What:		/sys/bus/iio/devices/iio:deviceX/sampling_frequency_available
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency_available
What:		/sys/bus/iio/devices/iio:deviceX/in_proximity_sampling_frequency_available
What:		/sys/.../iio:deviceX/buffer/sampling_frequency_available
What:		/sys/bus/iio/devices/triggerX/sampling_frequency_available
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		When the internal sampling clock can only take a specific set of
		frequencies, we can specify the available values with:

		- a small discrete set of values like "0 2 4 6 8"
		- a range with minimum, step and maximum frequencies like
		  "[min step max]"

What:		/sys/bus/iio/devices/iio:deviceX/oversampling_ratio
KernelVersion:	2.6.38
Contact:	linux-iio@vger.kernel.org
Description:
		Hardware dependent ADC oversampling. Controls the sampling ratio
		of the digital filter if available.

What:		/sys/bus/iio/devices/iio:deviceX/oversampling_ratio_available
KernelVersion:	2.6.38
Contact:	linux-iio@vger.kernel.org
Description:
		Hardware dependent values supported by the oversampling filter.

What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_raw
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled no bias removal etc.) voltage measurement from
		channel Y. In special cases where the channel does not
		correspond to externally available input one of the named
		versions may be used. The number must always be specified and
		unique to allow association with event codes. Units after
		application of scale and offset are millivolts.

		Channels with 'i' and 'q' modifiers always exist in pairs and both
		channels refer to the same signal. The 'i' channel contains the in-phase
		component of the signal while the 'q' channel contains the quadrature
		component.

What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY-voltageZ_raw
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled) differential voltage measurement equivalent to
		channel Y - channel Z where these channel numbers apply to the
		physically equivalent inputs when non differential readings are
		separately available. In differential only parts, then all that
		is required is a consistent labeling.  Units after application
		of scale and offset are millivolts.

What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltageY_rms_raw
KernelVersion:	6.18
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled) Root Mean Square (RMS) voltage measurement from
		channel Y. Units after application of scale and offset are
		millivolts.

What:		/sys/bus/iio/devices/iio:deviceX/in_powerY_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_powerY_active_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_powerY_reactive_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_powerY_apparent_raw
KernelVersion:	4.5
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled no bias removal etc.) power measurement from
		channel Y. The number must always be specified and
		unique to allow association with event codes. Units after
		application of scale and offset are milliwatts.

What:		/sys/bus/iio/devices/iio:deviceX/in_powerY_powerfactor
KernelVersion:	6.18
Contact:	linux-iio@vger.kernel.org
Description:
		Power factor measurement from channel Y. Power factor is the
		ratio of active power to apparent power. The value is unitless.

What:		/sys/bus/iio/devices/iio:deviceX/in_capacitanceY_raw
KernelVersion:	3.2
Contact:	linux-iio@vger.kernel.org
Description:
		Raw capacitance measurement from channel Y. Units after
		application of scale and offset are nanofarads.

What:		/sys/.../iio:deviceX/in_capacitanceY-capacitanceZ_raw
KernelVersion:	3.2
Contact:	linux-iio@vger.kernel.org
Description:
		Raw differential capacitance measurement equivalent to
		channel Y - channel Z where these channel numbers apply to the
		physically equivalent inputs when non differential readings are
		separately available. In differential only parts, then all that
		is required is a consistent labeling.  Units after application
		of scale and offset are nanofarads.

What:		/sys/.../iio:deviceX/in_capacitanceY-capacitanceZ_zeropoint
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		For differential channels, this an offset that is applied
		equally to both inputs. As the reading is of the difference
		between the two inputs, this should not be applied to the _raw
		reading by userspace (unlike _offset) and unlike calibbias
		it does not affect the differential value measured because
		the effect of _zeropoint cancels out across the two inputs
		that make up the differential pair. It's purpose is to bring
		the individual signals, before the differential is measured,
		within the measurement range of the device. The naming is
		chosen because if the separate inputs that make the
		differential pair are drawn on a graph in their
		_raw  units, this is the value that the zero point on the
		measurement axis represents. It is expressed with the
		same scaling as _raw.

What:		/sys/bus/iio/devices/iio:deviceX/in_temp_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_tempY_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_temp_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_temp_y_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_temp_ambient_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_temp_object_raw
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled no bias removal etc.) temperature measurement.
		If an axis is specified it generally means that the temperature
		sensor is associated with one part of a compound device (e.g.
		a gyroscope axis). The ambient and object modifiers distinguish
		between ambient (reference) and distant temperature for contact-
		less measurements. Units after application of scale and offset
		are milli degrees Celsius.

What:		/sys/bus/iio/devices/iio:deviceX/in_tempY_input
What:		/sys/bus/iio/devices/iio:deviceX/in_temp_input
KernelVersion:	2.6.38
Contact:	linux-iio@vger.kernel.org
Description:
		Scaled temperature measurement in milli degrees Celsius.

What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_raw
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Acceleration in direction x, y or z (may be arbitrarily assigned
		but should match other such assignments on device).
		Has all of the equivalent parameters as per voltageY. Units
		after application of scale and offset are m/s^2.

What:		/sys/bus/iio/devices/iio:deviceX/in_accel_linear_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_linear_y_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_linear_z_raw
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		As per in_accel_X_raw attributes, but minus the
		acceleration due to gravity.

What:		/sys/bus/iio/devices/iio:deviceX/in_gravity_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_gravity_y_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_gravity_z_raw
KernelVersion:	4.11
Contact:	linux-iio@vger.kernel.org
Description:
		Gravity in direction x, y or z (may be arbitrarily assigned
		but should match other such assignments on device).
		Units after application of scale and offset are m/s^2.

What:		/sys/bus/iio/devices/iio:deviceX/in_deltaangl_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_deltaangl_y_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_deltaangl_z_raw
KernelVersion:	6.5
Contact:	linux-iio@vger.kernel.org
Description:
		Angular displacement between two consecutive samples on x, y or
		z (may be arbitrarily assigned but should match other such
		assignments on device).
		In order to compute the total angular displacement during a
		desired period of time, the application should sum-up the delta
		angle samples acquired during that time.
		Units after application of scale and offset are radians.

What:		/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_y_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_z_raw
KernelVersion:	6.5
Contact:	linux-iio@vger.kernel.org
Description:
		The linear velocity change between two consecutive samples on x,
		y or z (may be arbitrarily assigned but should match other such
		assignments on device).
		In order to compute the total linear velocity change during a
		desired period of time, the application should sum-up the delta
		velocity samples acquired during that time.
		Units after application of scale and offset are meters per
		second.

What:		/sys/bus/iio/devices/iio:deviceX/in_angl_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_anglY_raw
KernelVersion:	4.17
Contact:	linux-iio@vger.kernel.org
Description:
		Angle of rotation. Units after application of scale and offset
		are radians.

What:		/sys/bus/iio/devices/iio:deviceX/in_positionrelative_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_positionrelative_y_raw
KernelVersion:	4.19
Contact:	linux-iio@vger.kernel.org
Description:
		Relative position in direction x or y on a pad (may be
		arbitrarily assigned but should match other such assignments on
		device).
		Units after application of scale and offset are milli percents
		from the pad's size in both directions. Should be calibrated by
		the consumer.

What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_raw
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Angular velocity about axis x, y or z (may be arbitrarily
		assigned). Has all the equivalent parameters as	per voltageY.
		Units after application of scale and offset are	radians per
		second.

What:		/sys/bus/iio/devices/iio:deviceX/in_incli_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_incli_y_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_incli_z_raw
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Inclination raw reading about axis x, y or z (may be
		arbitrarily assigned). Data converted by application of offset
		and scale to degrees.

What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_raw
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Magnetic field along axis x, y or z (may be arbitrarily
		assigned).  Data converted by application of offset
		then scale to Gauss.

What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_peak_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_peak_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_peak_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_peak_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_temp_peak_raw
KernelVersion:	2.6.36
Contact:	linux-iio@vger.kernel.org
Description:
		Highest value since some reset condition. These
		attributes allow access to this and are otherwise
		the direct equivalent of the <type>Y[_name]_raw attributes.

What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_trough_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_temp_trough_raw
KernelVersion:	6.7
Contact:	linux-iio@vger.kernel.org
Description:
		Lowest value since some reset condition. These
		attributes allow access to this and are otherwise
		the direct equivalent of the <type>Y[_name]_raw attributes.

What:		/sys/bus/iio/devices/iio:deviceX/in_accel_xyz_squared_peak_raw
KernelVersion:	2.6.36
Contact:	linux-iio@vger.kernel.org
Description:
		A computed peak value based on the sum squared magnitude of
		the underlying value in the specified directions.

What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_raw
KernelVersion:	3.8
Contact:	linux-iio@vger.kernel.org
Description:
		Raw pressure measurement from channel Y. Units after
		application of scale and offset are kilopascal.

What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_input
What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_input
KernelVersion:	3.8
Contact:	linux-iio@vger.kernel.org
Description:
		Scaled pressure measurement from channel Y, in kilopascal.

What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_raw
KernelVersion:	3.14
Contact:	linux-iio@vger.kernel.org
Description:
		Raw humidity measurement of air. Units after application of
		scale and offset are milli percent.

What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_input
KernelVersion:	3.14
Contact:	linux-iio@vger.kernel.org
Description:
		Scaled humidity measurement in milli percent.

What:		/sys/bus/iio/devices/iio:deviceX/in_Y_mean_raw
KernelVersion:	3.5
Contact:	linux-iio@vger.kernel.org
Description:
		Averaged raw measurement from channel Y. The number of values
		used for averaging is device specific. The converting rules for
		normal raw values also applies to the averaged raw values.

What:		/sys/bus/iio/devices/iio:deviceX/in_accel_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage_q_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage_i_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_current_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_tempY_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_temp_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_rot_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_angl_offset
What:		/sys/bus/iio/devices/iio:deviceX/in_capacitanceY_offset
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		If known for a device, offset to be added to <type>[Y]_raw prior
		to scaling by <type>[Y]_scale in order to obtain value in the
		<type> units as specified in <type>[Y]_raw documentation.
		Not present if the offset is always 0 or unknown. If Y or
		axis <x|y|z> is not present, then the offset applies to all
		in channels of <type>.
		May be writable if a variable offset can be applied on the
		device. Note that this is different to calibbias which
		is for devices (or drivers) that apply offsets to compensate
		for variation between different instances of the part, typically
		adjusted by using some hardware supported calibration procedure.
		Calibbias is applied internally, offset is applied in userspace
		to the _raw output.

What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_voltage-voltage_scale
What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_scale
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_supply_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_current_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_current_q_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_peak_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_energy_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_distance_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_countY_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_deltaangl_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_angl_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_x_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_y_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_z_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_red_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_green_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_blue_scale
What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_co2_scale
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		If known for a device, scale to be applied to <type>Y[_name]_raw
		post addition of <type>[Y][_name]_offset in order to obtain the
		measured value in <type> units as specified in
		<type>[Y][_name]_raw documentation.  If shared across all in
		channels then Y and <x|y|z> are not present and the value is
		called <type>[Y][_name]_scale. The peak modifier means this
		value is applied to <type>Y[_name]_peak_raw values.

What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltageY_i_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltageY_q_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_capacitance_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_intensityY_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_proximity_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_proximity0_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_resistance_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_temp_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/out_currentY_calibbias
What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_calibbias
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Hardware applied calibration offset (assumed to fix production
		inaccuracies).
		icm42600: For this device values are real physical offsets
		expressed in SI units (m/s^2 for accelerometers and rad/s
		for gyroscope)/

What:		/sys/bus/iio/devices/iio:deviceX/in_accel_calibbias_available
What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_calibbias_available
What:		/sys/bus/iio/devices/iio:deviceX/in_temp_calibbias_available
What:		/sys/bus/iio/devices/iio:deviceX/in_proximity_calibbias_available
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibbias_available
What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_calibbias_available
KernelVersion:  5.8
Contact:        linux-iio@vger.kernel.org
Description:
		Available values of calibbias. Maybe expressed as either of:

		- a small discrete set of values like "0 2 4 6 8"
		- a range specified as "[min step max]"

What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_convdelay
KernelVersion:	6.17
Contact:	linux-iio@vger.kernel.org
Description:
		Delay of start of conversion from common reference point shared
		by all channels. Can be writable when used to compensate for
		delay variation introduced by external filters feeding a
		simultaneous sampling ADC.

		E.g., for the ad7606 ADC series, this value is intended as a
		configurable time delay in seconds, to correct delay introduced
		by an optional external filtering circuit.

What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_convdelay_available
KernelVersion:	6.16
Contact:	linux-iio@vger.kernel.org
Description:
		Available values of convdelay. Maybe expressed as:

		- a range specified as "[min step max]"

		If shared across all channels, <type>_convdelay_available
		is used.

What:		/sys/bus/iio/devices/iio:deviceX/in_accel_x_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_y_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_accel_z_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_capacitance_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_both_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_ir_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_pressure_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_pressureY_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_proximity0_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_voltage_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/out_currentY_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_calibscale
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Hardware applied calibration scale factor (assumed to fix
		production inaccuracies).  If shared across all channels,
		<type>_calibscale is used.

What:		/sys/bus/iio/devices/iio:deviceX/in_illuminanceY_calibscale_available
What:		/sys/bus/iio/devices/iio:deviceX/in_intensityY_calibscale_available
What:		/sys/bus/iio/devices/iio:deviceX/in_proximityY_calibscale_available
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale_available
KernelVersion:	4.8
Contact:	linux-iio@vger.kernel.org
Description:
		Available values of calibscale. Maybe expressed as either of:

		- a small discrete set of values like "1 8 16"
		- a range specified as "[min step max]"

		If shared across all channels, <type>_calibscale_available is used.

What:		/sys/bus/iio/devices/iio:deviceX/in_activity_calibgender
What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibgender
What:		/sys/bus/iio/devices/iio:deviceX/in_distance_calibgender
What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_calibgender
KernelVersion:	4.0
Contact:	linux-iio@vger.kernel.org
Description:
		Gender of the user (e.g.: male, female) used by some pedometers
		to compute the stride length, distance, speed and activity
		type.

What:		/sys/bus/iio/devices/iio:deviceX/in_activity_calibgender_available
What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibgender_available
What:		/sys/bus/iio/devices/iio:deviceX/in_distance_calibgender_available
What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_calibgender_available
KernelVersion:	4.0
Contact:	linux-iio@vger.kernel.org
Description:
		Lists all available gender values (e.g.: male, female).

What:		/sys/bus/iio/devices/iio:deviceX/in_activity_calibheight
What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibheight
What:		/sys/bus/iio/devices/iio:deviceX/in_distance_calibheight
What:		/sys/bus/iio/devices/iio:deviceX/in_velocity_calibheight
KernelVersion:	3.19
Contact:	linux-iio@vger.kernel.org
Description:
		Height of the user (in meters) used by some pedometers
		to compute the stride length, distance, speed and activity
		type.

What:		/sys/bus/iio/devices/iio:deviceX/in_energy_calibweight
KernelVersion:	4.0
Contact:	linux-iio@vger.kernel.org
Description:
		Weight of the user (in kg). It is needed by some pedometers
		to compute the calories burnt by the user.

What:		/sys/bus/iio/devices/iio:deviceX/in_accel_scale_available
What:		/sys/.../iio:deviceX/in_anglvel_scale_available
What:		/sys/.../iio:deviceX/in_magn_scale_available
What:		/sys/.../iio:deviceX/in_illuminance_scale_available
What:		/sys/.../iio:deviceX/in_intensity_scale_available
What:		/sys/.../iio:deviceX/in_proximity_scale_available
What:		/sys/.../iio:deviceX/in_voltageY_scale_available
What:		/sys/.../iio:deviceX/in_voltage-voltage_scale_available
What:		/sys/.../iio:deviceX/out_voltageY_scale_available
What:		/sys/.../iio:deviceX/out_altvoltageY_scale_available
What:		/sys/.../iio:deviceX/in_capacitance_scale_available
What:		/sys/.../iio:deviceX/in_pressure_scale_available
What:		/sys/.../iio:deviceX/in_pressureY_scale_available
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		If a discrete set of scale values is available, they
		are listed in this attribute. Unlike illumination,
		multiplying intensity by intensity_scale does not
		yield value with any standardized unit.

What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_hardwaregain
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_hardwaregain
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_red_hardwaregain
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_green_hardwaregain
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_blue_hardwaregain
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_clear_hardwaregain
What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance_hardwaregain
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Hardware applied gain factor. If shared across all channels,
		<type>_hardwaregain is used.

What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_hardwaregain_available
KernelVersion:	5.10
Contact:	linux-iio@vger.kernel.org
Description:
		Lists all available hardware applied gain factors. Shared across all
		channels.

What:		/sys/.../in_accel_filter_low_pass_3db_frequency
What:		/sys/.../in_magn_filter_low_pass_3db_frequency
What:		/sys/.../in_anglvel_filter_low_pass_3db_frequency
KernelVersion:	3.2
Contact:	linux-iio@vger.kernel.org
Description:
		If a known or controllable low pass filter is applied
		to the underlying data channel, then this parameter
		gives the 3dB frequency of the filter in Hz.

What:		/sys/.../in_accel_filter_high_pass_3db_frequency
What:		/sys/.../in_anglvel_filter_high_pass_3db_frequency
What:		/sys/.../in_magn_filter_high_pass_3db_frequency
KernelVersion:	4.2
Contact:	linux-iio@vger.kernel.org
Description:
		If a known or controllable high pass filter is applied
		to the underlying data channel, then this parameter
		gives the 3dB frequency of the filter in Hz.

What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_raw
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_raw
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled, no bias etc.) output voltage for
		channel Y.  The number must always be specified and
		unique if the output corresponds to a single channel.
		While DAC like devices typically use out_voltage,
		a continuous frequency generating device, such as
		a DDS or PLL should use out_altvoltage.

What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY&Z_raw
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY&Z_raw
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled, no bias etc.) output voltage for an aggregate of
		channel Y, channel Z, etc.  This interface is available in cases
		where a single output sets the value for multiple channels
		simultaneously.

What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown_mode
What:		/sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown_mode
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown_mode
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown_mode
KernelVersion:	2.6.38
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies the output powerdown mode.
		DAC output stage is disconnected from the amplifier and
		1kohm_to_gnd: connected to ground via an 1kOhm resistor,
		2.5kohm_to_gnd: connected to ground via a 2.5kOhm resistor,
		6kohm_to_gnd: connected to ground via a 6kOhm resistor,
		7.7kohm_to_gnd: connected to ground via a 7.7kOhm resistor,
		20kohm_to_gnd: connected to ground via a 20kOhm resistor,
		32kohm_to_gnd: connected to ground via a 32kOhm resistor,
		42kohm_to_gnd: connected to ground via a 42kOhm resistor,
		90kohm_to_gnd: connected to ground via a 90kOhm resistor,
		100kohm_to_gnd: connected to ground via an 100kOhm resistor,
		125kohm_to_gnd: connected to ground via an 125kOhm resistor,
		500kohm_to_gnd: connected to ground via a 500kOhm resistor,
		640kohm_to_gnd: connected to ground via a 640kOhm resistor,
		three_state: left floating.
		For a list of available output power down options read
		outX_powerdown_mode_available. If Y is not present the
		mode is shared across all outputs.

What:		/sys/.../iio:deviceX/out_voltageY_powerdown_mode_available
What:		/sys/.../iio:deviceX/out_voltage_powerdown_mode_available
What:		/sys/.../iio:deviceX/out_altvoltageY_powerdown_mode_available
What:		/sys/.../iio:deviceX/out_altvoltage_powerdown_mode_available
KernelVersion:	2.6.38
Contact:	linux-iio@vger.kernel.org
Description:
		Lists all available output power down modes.
		If Y is not present the mode is shared across all outputs.

What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown
What:		/sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown
KernelVersion:	2.6.38
Contact:	linux-iio@vger.kernel.org
Description:
		Writing 1 causes output Y to enter the power down mode specified
		by the corresponding outY_powerdown_mode. DAC output stage is
		disconnected from the amplifier. Clearing returns to normal
		operation. Y may be suppressed if all outputs are controlled
		together.

What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency
KernelVersion:	3.4.0
Contact:	linux-iio@vger.kernel.org
Description:
		Output frequency for channel Y in Hz. The number must always be
		specified and unique if the output corresponds to a single
		channel.
		Some drivers have additional constraints:
		ADF4371 has an integrated VCO with fundamendal output
		frequency ranging from 4000000000 Hz 8000000000 Hz.

		out_altvoltage0_frequency:
			A divide by 1, 2, 4, 8, 16, 32 or circuit generates
			frequencies from 62500000 Hz to 8000000000 Hz.
		out_altvoltage1_frequency:
			This channel duplicates the channel 0 frequency
		out_altvoltage2_frequency:
			A frequency doubler generates frequencies from
			8000000000 Hz to 16000000000 Hz.
		out_altvoltage3_frequency:
			A frequency quadrupler generates frequencies from
			16000000000 Hz to 32000000000 Hz.

		Note: writes to one of the channels will affect the frequency of
		all the other channels, since it involves changing the VCO
		fundamental output frequency.

What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltageY_i_phase
What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltageY_q_phase
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_phase
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_i_phase
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_q_phase
KernelVersion:	3.4.0
Contact:	linux-iio@vger.kernel.org
Description:
		Phase in radians of one frequency/clock output Y
		(out_altvoltageY) relative to another frequency/clock output
		(out_altvoltageZ) of the device X. The number must always be
		specified and unique if the output corresponds to a single
		channel.

What:		/sys/bus/iio/devices/iio:deviceX/out_currentY_raw
Date:		May 2012
KernelVersion:	3.5
Contact:	Johan Hovold <jhovold@gmail.com>
Description:
		Set/get output current for channel Y. Units after application
		of scale and offset are milliamps.
		For some devices current channels are used to specify
		current supplied to elements used in taking a measurement
		of a different type. E.g. LED currents.

What:		/sys/bus/iio/devices/iio:deviceX/events
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Configuration of which hardware generated events are passed up
		to user-space.

What:		/sys/.../iio:deviceX/events/in_accel_x_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_x_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_accel_y_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_y_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_accel_z_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_z_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_anglvel_x_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_anglvel_x_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_anglvel_y_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_anglvel_y_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_anglvel_z_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_anglvel_z_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_magn_x_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_magn_x_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_magn_y_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_magn_y_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_magn_z_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_magn_z_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_voltageY_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_voltageY_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_voltageY_thresh_either_en
What:		/sys/.../iio:deviceX/events/in_tempY_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_tempY_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_capacitanceY_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_capacitanceY_thresh_falling_en
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		Event generated when channel passes a threshold in the specified
		(_rising|_falling) direction. If the direction is not specified,
		then either the device will report an event which ever direction
		a single threshold value is passed in (e.g.
		<type>[Y][_name]_<raw|input>_thresh_value) or
		<type>[Y][_name]_<raw|input>_thresh_rising_value and
		<type>[Y][_name]_<raw|input>_thresh_falling_value may take
		different values, but the device can only enable both thresholds
		or neither.

		Note the driver will assume the last p events requested are
		to be enabled where p is how many it supports (which may vary
		depending on the exact set requested. So if you want to be
		sure you have set what you think you have, check the contents of
		these attributes after everything is configured. Drivers may
		have to buffer any parameters so that they are consistent when
		a given event type is enabled at a future point (and not those for
		whatever event was previously enabled).

What:		/sys/.../iio:deviceX/events/in_accel_x_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_x_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_accel_y_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_y_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_accel_z_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_z_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_anglvel_x_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_anglvel_x_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_anglvel_y_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_anglvel_y_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_anglvel_z_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_anglvel_z_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_magn_x_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_magn_x_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_magn_y_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_magn_y_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_magn_z_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_magn_z_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_voltageY_supply_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_voltageY_supply_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_voltageY_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_voltageY_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_tempY_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_tempY_roc_falling_en
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		Event generated when channel passes a threshold on the rate of
		change (1st differential) in the specified (_rising|_falling)
		direction. If the direction is not specified, then either the
		device will report an event which ever direction a single
		threshold value is passed in (e.g.
		<type>[Y][_name]_<raw|input>_roc_value) or
		<type>[Y][_name]_<raw|input>_roc_rising_value and
		<type>[Y][_name]_<raw|input>_roc_falling_value may take
		different values, but the device can only enable both rate of
		change thresholds or neither.

		Note the driver will assume the last p events requested are
		to be enabled where p is however many it supports (which may
		vary depending on the exact set requested. So if you want to be
		sure you have set what you think you have, check the contents of
		these attributes after everything is configured. Drivers may
		have to buffer any parameters so that they are consistent when
		a given event type is enabled a future point (and not those for
		whatever event was previously enabled).

What:		/sys/.../events/in_capacitanceY_adaptive_thresh_rising_en
What:		/sys/.../events/in_capacitanceY_adaptive_thresh_falling_en
KernelVersion:	5.13
Contact:	linux-iio@vger.kernel.org
Description:
		Adaptive thresholds are similar to normal fixed thresholds
		but the value is expressed as an offset from a value which
		provides a low frequency approximation of the channel itself.
		Thus these detect if a rapid change occurs in the specified
		direction which crosses tracking value + offset.
		Tracking value calculation is devices specific.

What:		/sys/.../in_capacitanceY_adaptive_thresh_rising_timeout
What:		/sys/.../in_capacitanceY_adaptive_thresh_falling_timeout
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
Description:
		When adaptive thresholds are used, the tracking signal
		may adjust too slowly to step changes in the raw signal.
		Thus these specify the time in seconds for which the
		difference between the slow tracking signal and the raw
		signal is allowed to remain out-of-range before a reset
		event occurs in which the tracking signal is made equal
		to the raw signal, allowing slow tracking to resume and the
		adaptive threshold event detection to function as expected.

What:		/sys/.../events/in_accel_thresh_rising_value
What:		/sys/.../events/in_accel_thresh_falling_value
What:		/sys/.../events/in_accel_x_raw_thresh_rising_value
What:		/sys/.../events/in_accel_x_raw_thresh_falling_value
What:		/sys/.../events/in_accel_y_raw_thresh_rising_value
What:		/sys/.../events/in_accel_y_raw_thresh_falling_value
What:		/sys/.../events/in_accel_z_raw_thresh_rising_value
What:		/sys/.../events/in_accel_z_raw_thresh_falling_value
What:		/sys/.../events/in_anglvel_x_raw_thresh_rising_value
What:		/sys/.../events/in_anglvel_x_raw_thresh_falling_value
What:		/sys/.../events/in_anglvel_y_raw_thresh_rising_value
What:		/sys/.../events/in_anglvel_y_raw_thresh_falling_value
What:		/sys/.../events/in_anglvel_z_raw_thresh_rising_value
What:		/sys/.../events/in_anglvel_z_raw_thresh_falling_value
What:		/sys/.../events/in_magn_x_raw_thresh_rising_value
What:		/sys/.../events/in_magn_x_raw_thresh_falling_value
What:		/sys/.../events/in_magn_y_raw_thresh_rising_value
What:		/sys/.../events/in_magn_y_raw_thresh_falling_value
What:		/sys/.../events/in_magn_z_raw_thresh_rising_value
What:		/sys/.../events/in_magn_z_raw_thresh_falling_value
What:		/sys/.../events/in_rot_from_north_magnetic_raw_thresh_rising_value
What:		/sys/.../events/in_rot_from_north_magnetic_raw_thresh_falling_value
What:		/sys/.../events/in_rot_from_north_true_raw_thresh_rising_value
What:		/sys/.../events/in_rot_from_north_true_raw_thresh_falling_value
What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_rising_value
What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_falling_value
What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_rising_value
What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_falling_value
What:		/sys/.../events/in_voltageY_supply_raw_thresh_rising_value
What:		/sys/.../events/in_voltageY_supply_raw_thresh_falling_value
What:		/sys/.../events/in_voltageY_raw_thresh_rising_value
What:		/sys/.../events/in_voltageY_raw_thresh_falling_value
What:		/sys/.../events/in_tempY_raw_thresh_rising_value
What:		/sys/.../events/in_tempY_raw_thresh_falling_value
What:		/sys/.../events/in_illuminance0_thresh_falling_value
What:		/sys/.../events/in_illuminance0_thresh_rising_value
What:		/sys/.../events/in_proximity0_thresh_falling_value
What:		/sys/.../events/in_proximity0_thresh_rising_value
What:		/sys/.../events/in_illuminance_thresh_rising_value
What:		/sys/.../events/in_illuminance_thresh_falling_value
What:		/sys/.../events/in_capacitanceY_thresh_rising_value
What:		/sys/.../events/in_capacitanceY_thresh_falling_value
What:		/sys/.../events/in_capacitanceY_thresh_adaptive_rising_value
What:		/sys/.../events/in_capacitanceY_thresh_falling_rising_value
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies the value of threshold that the device is comparing
		against for the events enabled by
		<type>Y[_name]_thresh[_rising|falling]_en.

		If separate attributes exist for the two directions, but
		direction is not specified for this attribute, then a single
		threshold value applies to both directions.

		The raw or input element of the name indicates whether the
		value is in raw device units or in processed units (as _raw
		and _input do on sysfs direct channel read attributes).

What:		/sys/.../events/in_accel_scale
What:		/sys/.../events/in_accel_peak_scale
What:		/sys/.../events/in_anglvel_scale
What:		/sys/.../events/in_magn_scale
What:		/sys/.../events/in_rot_from_north_magnetic_scale
What:		/sys/.../events/in_rot_from_north_true_scale
What:		/sys/.../events/in_voltage_scale
What:		/sys/.../events/in_voltage_supply_scale
What:		/sys/.../events/in_temp_scale
What:		/sys/.../events/in_illuminance_scale
What:		/sys/.../events/in_proximity_scale
KernelVersion:	3.21
Contact:	linux-iio@vger.kernel.org
Description:
                Specifies the conversion factor from the standard units
                to device specific units used to set the event trigger
                threshold.

What:		/sys/.../events/in_accel_x_thresh_rising_hysteresis
What:		/sys/.../events/in_accel_x_thresh_falling_hysteresis
What:		/sys/.../events/in_accel_x_thresh_either_hysteresis
What:		/sys/.../events/in_accel_y_thresh_rising_hysteresis
What:		/sys/.../events/in_accel_y_thresh_falling_hysteresis
What:		/sys/.../events/in_accel_y_thresh_either_hysteresis
What:		/sys/.../events/in_accel_z_thresh_rising_hysteresis
What:		/sys/.../events/in_accel_z_thresh_falling_hysteresis
What:		/sys/.../events/in_accel_z_thresh_either_hysteresis
What:		/sys/.../events/in_anglvel_x_thresh_rising_hysteresis
What:		/sys/.../events/in_anglvel_x_thresh_falling_hysteresis
What:		/sys/.../events/in_anglvel_x_thresh_either_hysteresis
What:		/sys/.../events/in_anglvel_y_thresh_rising_hysteresis
What:		/sys/.../events/in_anglvel_y_thresh_falling_hysteresis
What:		/sys/.../events/in_anglvel_y_thresh_either_hysteresis
What:		/sys/.../events/in_anglvel_z_thresh_rising_hysteresis
What:		/sys/.../events/in_anglvel_z_thresh_falling_hysteresis
What:		/sys/.../events/in_anglvel_z_thresh_either_hysteresis
What:		/sys/.../events/in_magn_x_thresh_rising_hysteresis
What:		/sys/.../events/in_magn_x_thresh_falling_hysteresis
What:		/sys/.../events/in_magn_x_thresh_either_hysteresis
What:		/sys/.../events/in_magn_y_thresh_rising_hysteresis
What:		/sys/.../events/in_magn_y_thresh_falling_hysteresis
What:		/sys/.../events/in_magn_y_thresh_either_hysteresis
What:		/sys/.../events/in_magn_z_thresh_rising_hysteresis
What:		/sys/.../events/in_magn_z_thresh_falling_hysteresis
What:		/sys/.../events/in_magn_z_thresh_either_hysteresis
What:		/sys/.../events/in_rot_from_north_magnetic_thresh_rising_hysteresis
What:		/sys/.../events/in_rot_from_north_magnetic_thresh_falling_hysteresis
What:		/sys/.../events/in_rot_from_north_magnetic_thresh_either_hysteresis
What:		/sys/.../events/in_rot_from_north_true_thresh_rising_hysteresis
What:		/sys/.../events/in_rot_from_north_true_thresh_falling_hysteresis
What:		/sys/.../events/in_rot_from_north_true_thresh_either_hysteresis
What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_hysteresis
What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_hysteresis
What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_either_hysteresis
What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_hysteresis
What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_hysteresis
What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_either_hysteresis
What:		/sys/.../events/in_voltageY_thresh_rising_hysteresis
What:		/sys/.../events/in_voltageY_thresh_falling_hysteresis
What:		/sys/.../events/in_voltageY_thresh_either_hysteresis
What:		/sys/.../events/in_tempY_thresh_rising_hysteresis
What:		/sys/.../events/in_tempY_thresh_falling_hysteresis
What:		/sys/.../events/in_tempY_thresh_either_hysteresis
What:		/sys/.../events/in_illuminance0_thresh_falling_hysteresis
What:		/sys/.../events/in_illuminance0_thresh_rising_hysteresis
What:		/sys/.../events/in_illuminance0_thresh_either_hysteresis
What:		/sys/.../events/in_proximity0_thresh_falling_hysteresis
What:		/sys/.../events/in_proximity0_thresh_rising_hysteresis
What:		/sys/.../events/in_proximity0_thresh_either_hysteresis
KernelVersion:	3.13
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies the hysteresis of threshold that the device is comparing
		against for the events enabled by
		<type>Y[_name]_thresh[_(rising|falling)]_hysteresis.
		If separate attributes exist for the two directions, but
		direction is not specified for this attribute, then a single
		hysteresis value applies to both directions.

		For falling events the hysteresis is added to the _value attribute for
		this event to get the upper threshold for when the event goes back to
		normal, for rising events the hysteresis is subtracted from the _value
		attribute. E.g. if in_voltage0_raw_thresh_rising_value is set to 1200
		and in_voltage0_raw_thresh_rising_hysteresis is set to 50. The event
		will get activated once in_voltage0_raw goes above 1200 and will become
		deactivated again once the value falls below 1150.

What:		/sys/.../events/in_accel_x_raw_roc_rising_value
What:		/sys/.../events/in_accel_x_raw_roc_falling_value
What:		/sys/.../events/in_accel_y_raw_roc_rising_value
What:		/sys/.../events/in_accel_y_raw_roc_falling_value
What:		/sys/.../events/in_accel_z_raw_roc_rising_value
What:		/sys/.../events/in_accel_z_raw_roc_falling_value
What:		/sys/.../events/in_anglvel_x_raw_roc_rising_value
What:		/sys/.../events/in_anglvel_x_raw_roc_falling_value
What:		/sys/.../events/in_anglvel_y_raw_roc_rising_value
What:		/sys/.../events/in_anglvel_y_raw_roc_falling_value
What:		/sys/.../events/in_anglvel_z_raw_roc_rising_value
What:		/sys/.../events/in_anglvel_z_raw_roc_falling_value
What:		/sys/.../events/in_magn_x_raw_roc_rising_value
What:		/sys/.../events/in_magn_x_raw_roc_falling_value
What:		/sys/.../events/in_magn_y_raw_roc_rising_value
What:		/sys/.../events/in_magn_y_raw_roc_falling_value
What:		/sys/.../events/in_magn_z_raw_roc_rising_value
What:		/sys/.../events/in_magn_z_raw_roc_falling_value
What:		/sys/.../events/in_rot_from_north_magnetic_raw_roc_rising_value
What:		/sys/.../events/in_rot_from_north_magnetic_raw_roc_falling_value
What:		/sys/.../events/in_rot_from_north_true_raw_roc_rising_value
What:		/sys/.../events/in_rot_from_north_true_raw_roc_falling_value
What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_rising_value
What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_falling_value
What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_rising_value
What:		/sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_falling_value
What:		/sys/.../events/in_voltageY_supply_raw_roc_rising_value
What:		/sys/.../events/in_voltageY_supply_raw_roc_falling_value
What:		/sys/.../events/in_voltageY_raw_roc_rising_value
What:		/sys/.../events/in_voltageY_raw_roc_falling_value
What:		/sys/.../events/in_tempY_raw_roc_rising_value
What:		/sys/.../events/in_tempY_raw_roc_falling_value
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies the value of rate of change threshold that the
		device is comparing against for the events enabled by
		<type>[Y][_name]_roc[_rising|falling]_en.

		If separate attributes exist for the two directions,
		but direction is not specified for this attribute,
		then a single threshold value applies to both directions.
		The raw or input element of the name indicates whether the
		value is in raw device units or in processed units (as _raw
		and _input do on sysfs direct channel read attributes).

What:		/sys/.../events/in_accel_x_thresh_rising_period
What:		/sys/.../events/in_accel_x_thresh_falling_period
What:		/sys/.../events/in_accel_x_roc_rising_period
What:		/sys/.../events/in_accel_x_roc_falling_period
What:		/sys/.../events/in_accel_y_thresh_rising_period
What:		/sys/.../events/in_accel_y_thresh_falling_period
What:		/sys/.../events/in_accel_y_roc_rising_period
What:		/sys/.../events/in_accel_y_roc_falling_period
What:		/sys/.../events/in_accel_z_thresh_rising_period
What:		/sys/.../events/in_accel_z_thresh_falling_period
What:		/sys/.../events/in_accel_z_roc_rising_period
What:		/sys/.../events/in_accel_z_roc_falling_period
What:		/sys/.../events/in_anglvel_x_thresh_rising_period
What:		/sys/.../events/in_anglvel_x_thresh_falling_period
What:		/sys/.../events/in_anglvel_x_roc_rising_period
What:		/sys/.../events/in_anglvel_x_roc_falling_period
What:		/sys/.../events/in_anglvel_y_thresh_rising_period
What:		/sys/.../events/in_anglvel_y_thresh_falling_period
What:		/sys/.../events/in_anglvel_y_roc_rising_period
What:		/sys/.../events/in_anglvel_y_roc_falling_period
What:		/sys/.../events/in_anglvel_z_thresh_rising_period
What:		/sys/.../events/in_anglvel_z_thresh_falling_period
What:		/sys/.../events/in_anglvel_z_roc_rising_period
What:		/sys/.../events/in_anglvel_z_roc_falling_period
What:		/sys/.../events/in_magn_x_thresh_rising_period
What:		/sys/.../events/in_magn_x_thresh_falling_period
What:		/sys/.../events/in_magn_x_roc_rising_period
What:		/sys/.../events/in_magn_x_roc_falling_period
What:		/sys/.../events/in_magn_y_thresh_rising_period
What:		/sys/.../events/in_magn_y_thresh_falling_period
What:		/sys/.../events/in_magn_y_roc_rising_period
What:		/sys/.../events/in_magn_y_roc_falling_period
What:		/sys/.../events/in_magn_z_thresh_rising_period
What:		/sys/.../events/in_magn_z_thresh_falling_period
What:		/sys/.../events/in_magn_z_roc_rising_period
What:		/sys/.../events/in_magn_z_roc_falling_period
What:		/sys/.../events/in_rot_from_north_magnetic_thresh_rising_period
What:		/sys/.../events/in_rot_from_north_magnetic_thresh_falling_period
What:		/sys/.../events/in_rot_from_north_magnetic_roc_rising_period
What:		/sys/.../events/in_rot_from_north_magnetic_roc_falling_period
What:		/sys/.../events/in_rot_from_north_true_thresh_rising_period
What:		/sys/.../events/in_rot_from_north_true_thresh_falling_period
What:		/sys/.../events/in_rot_from_north_true_roc_rising_period
What:		/sys/.../events/in_rot_from_north_true_roc_falling_period
What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_period
What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_period
What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_rising_period
What:		/sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_falling_period
What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_period
What:		/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_period
What:		/sys/.../events/in_rot_from_north_true_tilt_comp_roc_rising_period
What:		/sys/.../events/in_rot_from_north_true_tilt_comp_roc_falling_period
What:		/sys/.../events/in_voltageY_supply_thresh_rising_period
What:		/sys/.../events/in_voltageY_supply_thresh_falling_period
What:		/sys/.../events/in_voltageY_supply_roc_rising_period
What:		/sys/.../events/in_voltageY_supply_roc_falling_period
What:		/sys/.../events/in_voltageY_thresh_rising_period
What:		/sys/.../events/in_voltageY_thresh_falling_period
What:		/sys/.../events/in_voltageY_roc_rising_period
What:		/sys/.../events/in_voltageY_roc_falling_period
What:		/sys/.../events/in_tempY_thresh_rising_period
What:		/sys/.../events/in_tempY_thresh_falling_period
What:		/sys/.../events/in_tempY_roc_rising_period
What:		/sys/.../events/in_tempY_roc_falling_period
What:		/sys/.../events/in_accel_x&y&z_mag_falling_period
What:		/sys/.../events/in_intensity0_thresh_period
What:		/sys/.../events/in_proximity0_thresh_period
What:		/sys/.../events/in_activity_still_thresh_rising_period
What:		/sys/.../events/in_activity_still_thresh_falling_period
What:		/sys/.../events/in_activity_walking_thresh_rising_period
What:		/sys/.../events/in_activity_walking_thresh_falling_period
What:		/sys/.../events/in_activity_jogging_thresh_rising_period
What:		/sys/.../events/in_activity_jogging_thresh_falling_period
What:		/sys/.../events/in_activity_running_thresh_rising_period
What:		/sys/.../events/in_activity_running_thresh_falling_period
What:		/sys/.../events/in_illuminance_thresh_either_period
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		Period of time (in seconds) for which the condition must be
		met before an event is generated. If direction is not
		specified then this period applies to both directions.

What:		/sys/.../events/in_accel_thresh_rising_low_pass_filter_3db
What:		/sys/.../events/in_anglvel_thresh_rising_low_pass_filter_3db
What:		/sys/.../events/in_magn_thresh_rising_low_pass_filter_3db
KernelVersion:	4.2
Contact:	linux-iio@vger.kernel.org
Description:
		If a low pass filter can be applied to the event generation
		this property gives its 3db frequency in Hz.
		A value of zero disables the filter.

What:		/sys/.../events/in_accel_thresh_rising_high_pass_filter_3db
What:		/sys/.../events/in_anglvel_thresh_rising_high_pass_filter_3db
What:		/sys/.../events/in_magn_thresh_rising_high_pass_filter_3db
KernelVersion:	4.2
Contact:	linux-iio@vger.kernel.org
Description:
		If a high pass filter can be applied to the event generation
		this property gives its 3db frequency in Hz.
		A value of zero disables the filter.

What:		/sys/.../events/in_activity_still_thresh_rising_en
What:		/sys/.../events/in_activity_still_thresh_falling_en
What:		/sys/.../events/in_activity_walking_thresh_rising_en
What:		/sys/.../events/in_activity_walking_thresh_falling_en
What:		/sys/.../events/in_activity_jogging_thresh_rising_en
What:		/sys/.../events/in_activity_jogging_thresh_falling_en
What:		/sys/.../events/in_activity_running_thresh_rising_en
What:		/sys/.../events/in_activity_running_thresh_falling_en
KernelVersion:	3.19
Contact:	linux-iio@vger.kernel.org
Description:
		Enables or disables activity events. Depending on direction
		an event is generated when sensor ENTERS or LEAVES a given state.

What:		/sys/.../events/in_activity_still_thresh_rising_value
What:		/sys/.../events/in_activity_still_thresh_falling_value
What:		/sys/.../events/in_activity_walking_thresh_rising_value
What:		/sys/.../events/in_activity_walking_thresh_falling_value
What:		/sys/.../events/in_activity_jogging_thresh_rising_value
What:		/sys/.../events/in_activity_jogging_thresh_falling_value
What:		/sys/.../events/in_activity_running_thresh_rising_value
What:		/sys/.../events/in_activity_running_thresh_falling_value
KernelVersion:	3.19
Contact:	linux-iio@vger.kernel.org
Description:
		Confidence value (in units as percentage) to be used
		for deciding when an event should be generated. E.g for
		running: If the confidence value reported by the sensor
		is greater than in_activity_running_thresh_rising_value
		then the sensor ENTERS running state. Conversely, if the
		confidence value reported by the sensor is lower than
		in_activity_running_thresh_falling_value then the sensor
		is LEAVING running state.

What:		/sys/.../iio:deviceX/events/in_accel_mag_en
What:		/sys/.../iio:deviceX/events/in_accel_mag_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_mag_falling_en
What:		/sys/.../iio:deviceX/events/in_accel_x_mag_en
What:		/sys/.../iio:deviceX/events/in_accel_x_mag_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_x_mag_falling_en
What:		/sys/.../iio:deviceX/events/in_accel_y_mag_en
What:		/sys/.../iio:deviceX/events/in_accel_y_mag_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_y_mag_falling_en
What:		/sys/.../iio:deviceX/events/in_accel_z_mag_en
What:		/sys/.../iio:deviceX/events/in_accel_z_mag_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_z_mag_falling_en
What:		/sys/.../iio:deviceX/events/in_accel_x&y&z_mag_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_x&y&z_mag_falling_en
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		Similar to in_accel_x_thresh[_rising|_falling]_en, but here the
		magnitude of the channel is compared to the threshold, not its
		signed value.

What:		/sys/.../events/in_accel_raw_mag_value
What:		/sys/.../events/in_accel_x_raw_mag_rising_value
What:		/sys/.../events/in_accel_y_raw_mag_rising_value
What:		/sys/.../events/in_accel_z_raw_mag_rising_value
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		The value to which the magnitude of the channel is compared. If
		number or direction is not specified, applies to all channels of
		this type.

What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_en
What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_falling_en
What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_en
What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_falling_en
KernelVersion:	5.18
Contact:	linux-iio@vger.kernel.org
Description:
		Similar to in_accel_mag[_y][_rising|_falling]_en, but the event
		value is relative to a reference magnitude. The reference magnitude
		includes the graviational acceleration.

What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_value
What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_rising_value
What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_falling_value
What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_value
What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_rising_value
What:		/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_falling_value
KernelVersion:	5.18
Contact:	linux-iio@vger.kernel.org
Description:
		The value to which the reference magnitude of the channel is
		compared. If the axis is not specified, it applies to all channels
		of this type.

What:		/sys/.../events/in_steps_change_en
KernelVersion:	4.0
Contact:	linux-iio@vger.kernel.org
Description:
		Event generated when channel passes a threshold on the absolute
		change in value. E.g. for steps: a step change event is
		generated each time the user takes N steps, where N is set using
		in_steps_change_value.

What:		/sys/.../events/in_steps_change_value
KernelVersion:	4.0
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies the value of change threshold that the
		device is comparing against for the events enabled by
		<type>[Y][_name]_roc[_rising|falling|]_en. E.g. for steps:
		if set to 3, a step change event will be generated every 3
		steps.

What:		/sys/bus/iio/devices/iio:deviceX/trigger/current_trigger
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		The name of the trigger source being used, as per string given
		in /sys/class/iio/triggerY/name.

What:		/sys/bus/iio/devices/iio:deviceX/bufferY/length
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
Description:
		Number of scans contained by the buffer.

What:		/sys/bus/iio/devices/iio:deviceX/bufferY/enable
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
Description:
		Actually start the buffer capture up.  Will start trigger
		if first device and appropriate.

		Note that it might be impossible to configure other attributes,
		(e.g.: events, scale, sampling rate) if they impact the currently
		active buffer capture session.

What:		/sys/bus/iio/devices/iio:deviceX/bufferY
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
Description:
		Directory containing interfaces for elements that will be
		captured for a single triggered sample set in the buffer.

		Since kernel 5.11 the scan_elements attributes are merged into
		the bufferY directory, to be configurable per buffer.

What:		/sys/.../iio:deviceX/bufferY/in_accel_x_en
What:		/sys/.../iio:deviceX/bufferY/in_accel_y_en
What:		/sys/.../iio:deviceX/bufferY/in_accel_z_en
What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_x_en
What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_y_en
What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_z_en
What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_x_en
What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_y_en
What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_z_en
What:		/sys/.../iio:deviceX/bufferY/in_anglvel_x_en
What:		/sys/.../iio:deviceX/bufferY/in_anglvel_y_en
What:		/sys/.../iio:deviceX/bufferY/in_anglvel_z_en
What:		/sys/.../iio:deviceX/bufferY/in_magn_x_en
What:		/sys/.../iio:deviceX/bufferY/in_magn_y_en
What:		/sys/.../iio:deviceX/bufferY/in_magn_z_en
What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_en
What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_en
What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_tilt_comp_en
What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_tilt_comp_en
What:		/sys/.../iio:deviceX/bufferY/in_timestamp_en
What:		/sys/.../iio:deviceX/bufferY/in_voltageY_supply_en
What:		/sys/.../iio:deviceX/bufferY/in_voltageY_en
What:		/sys/.../iio:deviceX/bufferY/in_voltageY-voltageZ_en
What:		/sys/.../iio:deviceX/bufferY/in_incli_x_en
What:		/sys/.../iio:deviceX/bufferY/in_incli_y_en
What:		/sys/.../iio:deviceX/bufferY/in_pressureY_en
What:		/sys/.../iio:deviceX/bufferY/in_pressure_en
What:		/sys/.../iio:deviceX/bufferY/in_rot_quaternion_en
What:		/sys/.../iio:deviceX/bufferY/in_proximity_en
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
Description:
		Scan element control for triggered data capture.

What:		/sys/.../iio:deviceX/bufferY/in_accel_type
What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_type
What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_type
What:		/sys/.../iio:deviceX/bufferY/in_anglvel_type
What:		/sys/.../iio:deviceX/bufferY/in_magn_type
What:		/sys/.../iio:deviceX/bufferY/in_incli_type
What:		/sys/.../iio:deviceX/bufferY/in_voltageY_type
What:		/sys/.../iio:deviceX/bufferY/in_voltage_type
What:		/sys/.../iio:deviceX/bufferY/in_voltageY_supply_type
What:		/sys/.../iio:deviceX/bufferY/in_timestamp_type
What:		/sys/.../iio:deviceX/bufferY/in_pressureY_type
What:		/sys/.../iio:deviceX/bufferY/in_pressure_type
What:		/sys/.../iio:deviceX/bufferY/in_rot_quaternion_type
What:		/sys/.../iio:deviceX/bufferY/in_proximity_type
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
Description:
		Description of the scan element data storage within the buffer
		and hence the form in which it is read from user-space.
		Form is [be|le]:[s|u]bits/storagebits[>>shift].
		be or le specifies big or little endian. s or u specifies if
		signed (2's complement) or unsigned. bits is the number of bits
		of data and storagebits is the space (after padding) that it
		occupies in the buffer. shift if specified, is the shift that
		needs to be applied prior to masking out unused bits. Some
		devices put their data in the middle of the transferred elements
		with additional information on both sides.  Note that some
		devices will have additional information in the unused bits
		so to get a clean value, the bits value must be used to mask
		the buffer output value appropriately.  The storagebits value
		also specifies the data alignment.  So s48/64>>2 will be a
		signed 48 bit integer stored in a 64 bit location aligned to
		a 64 bit boundary. To obtain the clean value, shift right 2
		and apply a mask to zero the top 16 bits of the result.
		For other storage combinations this attribute will be extended
		appropriately.

What:		/sys/.../iio:deviceX/scan_elements/in_accel_type_available
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		If the type parameter can take one of a small set of values,
		this attribute lists them.

What:		/sys/.../iio:deviceX/bufferY/in_voltageY_index
What:		/sys/.../iio:deviceX/bufferY/in_voltageY_supply_index
What:		/sys/.../iio:deviceX/bufferY/in_accel_x_index
What:		/sys/.../iio:deviceX/bufferY/in_accel_y_index
What:		/sys/.../iio:deviceX/bufferY/in_accel_z_index
What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_x_index
What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_y_index
What:		/sys/.../iio:deviceX/bufferY/in_deltaangl_z_index
What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_x_index
What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_y_index
What:		/sys/.../iio:deviceX/bufferY/in_deltavelocity_z_index
What:		/sys/.../iio:deviceX/bufferY/in_anglvel_x_index
What:		/sys/.../iio:deviceX/bufferY/in_anglvel_y_index
What:		/sys/.../iio:deviceX/bufferY/in_anglvel_z_index
What:		/sys/.../iio:deviceX/bufferY/in_magn_x_index
What:		/sys/.../iio:deviceX/bufferY/in_magn_y_index
What:		/sys/.../iio:deviceX/bufferY/in_magn_z_index
What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_index
What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_index
What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_tilt_comp_index
What:		/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_tilt_comp_index
What:		/sys/.../iio:deviceX/bufferY/in_incli_x_index
What:		/sys/.../iio:deviceX/bufferY/in_incli_y_index
What:		/sys/.../iio:deviceX/bufferY/in_timestamp_index
What:		/sys/.../iio:deviceX/bufferY/in_pressureY_index
What:		/sys/.../iio:deviceX/bufferY/in_pressure_index
What:		/sys/.../iio:deviceX/bufferY/in_rot_quaternion_index
What:		/sys/.../iio:deviceX/bufferY/in_proximity_index
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
Description:
		A single positive integer specifying the position of this
		scan element in the buffer. Note these are not dependent on
		what is enabled and may not be contiguous. Thus for user-space
		to establish the full layout these must be used in conjunction
		with all _en attributes to establish which channels are present,
		and the relevant _type attributes to establish the data storage
		format.

What:		/sys/.../iio:deviceX/in_activity_still_input
What:		/sys/.../iio:deviceX/in_activity_walking_input
What:		/sys/.../iio:deviceX/in_activity_jogging_input
What:		/sys/.../iio:deviceX/in_activity_running_input
KernelVersion:	3.19
Contact:	linux-iio@vger.kernel.org
Description:
		This attribute is used to read the confidence for an activity
		expressed in units as percentage.

What:		/sys/.../iio:deviceX/in_anglvel_z_quadrature_correction_raw
KernelVersion:	2.6.38
Contact:	linux-iio@vger.kernel.org
Description:
		This attribute is used to read the amount of quadrature error
		present in the device at a given time.

What:		/sys/.../iio:deviceX/in_accelY_power_mode
KernelVersion:	3.11
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies the chip power mode.
		low_noise: reduce noise level from ADC,
		low_power: enable low current consumption.
		For a list of available output power modes read
		in_accel_power_mode_available.

What:		/sys/.../iio:deviceX/in_energy_input
What:		/sys/.../iio:deviceX/in_energy_raw
What:		/sys/.../iio:deviceX/in_energyY_active_raw
What:		/sys/.../iio:deviceX/in_energyY_reactive_raw
What:		/sys/.../iio:deviceX/in_energyY_apparent_raw
KernelVersion:	4.0
Contact:	linux-iio@vger.kernel.org
Description:
		This attribute is used to read the energy value reported by the
		device (e.g.: human activity sensors report energy burnt by the
		user). Units after application of scale are Joules.

What:		/sys/.../iio:deviceX/in_distance_input
What:		/sys/.../iio:deviceX/in_distance_raw
KernelVersion:	4.0
Contact:	linux-iio@vger.kernel.org
Description:
		This attribute is used to read the measured distance to an object
		or the distance covered by the user since the last reboot while
		activated. Units after application of scale are meters.

What:		/sys/bus/iio/devices/iio:deviceX/store_eeprom
KernelVersion:	3.4.0
Contact:	linux-iio@vger.kernel.org
Description:
		Writing '1' stores the current device configuration into
		on-chip EEPROM. After power-up or chip reset the device will
		automatically load the saved configuration.

What:		/sys/.../iio:deviceX/in_proximity_raw
What:		/sys/.../iio:deviceX/in_proximity_input
What:		/sys/.../iio:deviceX/in_proximityY_raw
KernelVersion:	3.4
Contact:	linux-iio@vger.kernel.org
Description:
		Proximity measurement indicating that some
		object is near the sensor, usually by observing
		reflectivity of infrared or ultrasound emitted.

		Often these sensors are unit less and as such conversion
		to SI units is not possible. Higher proximity measurements
		indicate closer objects, and vice versa. Units after
		application of scale and offset are meters.

What:		/sys/.../iio:deviceX/in_illuminance_input
What:		/sys/.../iio:deviceX/in_illuminance_raw
What:		/sys/.../iio:deviceX/in_illuminanceY_input
What:		/sys/.../iio:deviceX/in_illuminanceY_raw
What:		/sys/.../iio:deviceX/in_illuminanceY_mean_raw
What:		/sys/.../iio:deviceX/in_illuminance_ir_raw
What:		/sys/.../iio:deviceX/in_illuminance_clear_raw
KernelVersion:	3.4
Contact:	linux-iio@vger.kernel.org
Description:
		Illuminance measurement, units after application of scale
		and offset are lux.

What:		/sys/.../iio:deviceX/in_intensityY_raw
What:		/sys/.../iio:deviceX/in_intensityY_ir_raw
What:		/sys/.../iio:deviceX/in_intensityY_both_raw
What:		/sys/.../iio:deviceX/in_intensityY_uv_raw
What:		/sys/.../iio:deviceX/in_intensityY_uva_raw
What:		/sys/.../iio:deviceX/in_intensityY_uvb_raw
What:		/sys/.../iio:deviceX/in_intensityY_duv_raw
What:		/sys/.../iio:deviceX/in_intensity_red_raw
What:		/sys/.../iio:deviceX/in_intensity_green_raw
What:		/sys/.../iio:deviceX/in_intensity_blue_raw
What:		/sys/.../iio:deviceX/in_intensity_clear_raw
KernelVersion:	3.4
Contact:	linux-iio@vger.kernel.org
Description:
		Unit-less light intensity. Modifiers both and ir indicate
		that measurements contain visible and infrared light
		components or just infrared light, respectively. Modifier
		uv indicates that measurements contain ultraviolet light
		components. Modifiers uva, uvb and duv indicate that
		measurements contain A, B or deep (C) ultraviolet light
		components respectively.

What:		/sys/.../iio:deviceX/in_uvindex_input
KernelVersion:	4.6
Contact:	linux-iio@vger.kernel.org
Description:
		UV light intensity index measuring the human skin's response to
		different wavelength of sunlight weighted according to the
		standardised CIE Erythemal Action Spectrum. UV index values range
		from 0 (low) to >=11 (extreme).

What:		/sys/.../iio:deviceX/in_intensity_integration_time
What:		/sys/.../iio:deviceX/in_intensity_red_integration_time
What:		/sys/.../iio:deviceX/in_intensity_green_integration_time
What:		/sys/.../iio:deviceX/in_intensity_blue_integration_time
What:		/sys/.../iio:deviceX/in_intensity_clear_integration_time
What:		/sys/.../iio:deviceX/in_illuminance_integration_time
KernelVersion:	3.12
Contact:	linux-iio@vger.kernel.org
Description:
		This attribute is used to get/set the integration time in
		seconds. If shared across all channels of a given type,
		<type>_integration_time is used.

What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_integration_time
KernelVersion:	4.0
Contact:	linux-iio@vger.kernel.org
Description:
		Number of seconds in which to compute speed.

What:		/sys/bus/iio/devices/iio:deviceX/in_rot_quaternion_raw
KernelVersion:	3.15
Contact:	linux-iio@vger.kernel.org
Description:
		Raw value of quaternion components using a format
		x y z w. Here x, y, and z component represents the axis about
		which a rotation will occur and w component represents the
		amount of rotation.

What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_raw
KernelVersion:	3.15
Contact:	linux-iio@vger.kernel.org
Description:
		Raw value of rotation from true/magnetic north measured with
		or without compensation from tilt sensors.

What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_supply_raw
KernelVersion:	3.17
Contact:	linux-iio@vger.kernel.org
Description:
		Raw current measurement from channel Y. Units are in milliamps
		after application of scale and offset. If no offset or scale is
		present, output should be considered as processed with the
		unit in milliamps. In special cases where the channel does not
		correspond to externally available input one of the named
		versions may be used.

		Channels with 'i' and 'q' modifiers always exist in pairs and both
		channels refer to the same signal. The 'i' channel contains the in-phase
		component of the signal while the 'q' channel contains the quadrature
		component.

What:		/sys/bus/iio/devices/iio:deviceX/in_altcurrentY_rms_raw
KernelVersion:	6.18
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled no bias removal etc.) Root Mean Square (RMS) current
		measurement from channel Y. Units after application of scale and
		offset are milliamps.

What:		/sys/.../iio:deviceX/in_energy_en
What:		/sys/.../iio:deviceX/in_distance_en
What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_en
What:		/sys/.../iio:deviceX/in_steps_en
KernelVersion:	3.19
Contact:	linux-iio@vger.kernel.org
Description:
		Activates a device feature that runs in firmware/hardware.
		E.g. for steps: the pedometer saves power while not used;
		when activated, it will count the steps taken by the user in
		firmware and export them through in_steps_input.

What:		/sys/.../iio:deviceX/in_steps_input
KernelVersion:	3.19
Contact:	linux-iio@vger.kernel.org
Description:
		This attribute is used to read the number of steps taken by the user
		since the last reboot while activated.

What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_input
What:		/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_raw
KernelVersion:	3.19
Contact:	linux-iio@vger.kernel.org
Description:
		This attribute is used to read the current speed value of the
		user (which is the norm or magnitude of the velocity vector).
		Units after application of scale are m/s.

What:		/sys/.../iio:deviceX/in_steps_debounce_count
KernelVersion:	4.0
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies the number of steps that must occur within
		in_steps_filter_debounce_time for the pedometer to decide the
		consumer is making steps.

What:		/sys/.../iio:deviceX/in_steps_debounce_time
KernelVersion:	4.0
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies number of seconds in which we compute the steps
		that occur in order to decide if the consumer is making steps.

What:		/sys/bus/iio/devices/iio:deviceX/bufferY/watermark
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
Description:
		A single positive integer specifying the maximum number of scan
		elements to wait for.

		Poll will block until the watermark is reached.

		Blocking read will wait until the minimum between the requested
		read amount or the low water mark is available.

		Non-blocking read will retrieve the available samples from the
		buffer even if there are less samples then watermark level. This
		allows the application to block on poll with a timeout and read
		the available samples after the timeout expires and thus have a
		maximum delay guarantee.

What:		/sys/bus/iio/devices/iio:deviceX/bufferY/data_available
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
Description:
		A read-only value indicating the bytes of data available in the
		buffer. In the case of an output buffer, this indicates the
		amount of empty space available to write data to. In the case of
		an input buffer, this indicates the amount of data available for
		reading.

What:		/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_enabled
KernelVersion: 4.2
Contact:	linux-iio@vger.kernel.org
Description:
		A read-only boolean value that indicates if the hardware fifo is
		currently enabled or disabled. If the device does not have a
		hardware fifo this entry is not present.
		The hardware fifo is enabled when the buffer is enabled if the
		current hardware fifo watermark level is set and other current
		device settings allows it (e.g. if a trigger is set that samples
		data differently that the hardware fifo does then hardware fifo
		will not enabled).

		If the hardware fifo is enabled and the level of the hardware
		fifo reaches the hardware fifo watermark level the device will
		flush its hardware fifo to the device buffer. Doing a non
		blocking read on the device when no samples are present in the
		device buffer will also force a flush.

		When the hardware fifo is enabled there is no need to use a
		trigger to use buffer mode since the watermark settings
		guarantees that the hardware fifo is flushed to the device
		buffer.

What:		/sys/bus/iio/devices/iio:device*/buffer/hwfifo_timeout
KernelVersion:	4.12
Contact:	linux-iio@vger.kernel.org
Description:
		A read/write property to provide capability to delay reporting of
		samples till a timeout is reached. This allows host processors to
		sleep, while the sensor is storing samples in its internal fifo.
		The maximum timeout in seconds can be specified by setting
		hwfifo_timeout.The current delay can be read by reading
		hwfifo_timeout. A value of 0 means that there is no timeout.

What:		/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark
KernelVersion: 4.2
Contact:	linux-iio@vger.kernel.org
Description:
		Read-only entry that contains a single integer specifying the
		current watermark level for the hardware fifo. If the device
		does not have a hardware fifo this entry is not present.
		The watermark level for the hardware fifo is set by the driver
		based on the value set by the user in buffer/watermark but
		taking into account hardware limitations (e.g. most hardware
		buffers are limited to 32-64 samples, some hardware buffers
		watermarks are fixed or have minimum levels).  A value of 0
		means that the hardware watermark is unset.

What:		/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_min
KernelVersion: 4.2
Contact:       linux-iio@vger.kernel.org
Description:
		A single positive integer specifying the minimum watermark level
		for the hardware fifo of this device. If the device does not
		have a hardware fifo this entry is not present.

		If the user sets buffer/watermark to a value less than this one,
		then the hardware watermark will remain unset.

What:	       /sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_max
KernelVersion: 4.2
Contact:       linux-iio@vger.kernel.org
Description:
		A single positive integer specifying the maximum watermark level
		for the hardware fifo of this device. If the device does not
		have a hardware fifo this entry is not present.

		If the user sets buffer/watermark to a value greater than this
		one, then the hardware watermark will be capped at this value.

What:	       /sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_available
KernelVersion: 4.2
Contact:       linux-iio@vger.kernel.org
Description:
		A list of positive integers specifying the available watermark
		levels for the hardware fifo. This entry is optional and if it
		is not present it means that all the values between
		hwfifo_watermark_min and hwfifo_watermark_max are supported.

		If the user sets buffer/watermark to a value greater than
		hwfifo_watermak_min but not equal to any of the values in this
		list, the driver will chose an appropriate value for the
		hardware fifo watermark level.

What:		/sys/bus/iio/devices/iio:deviceX/in_temp_calibemissivity
What:		/sys/bus/iio/devices/iio:deviceX/in_tempY_calibemissivity
What:		/sys/bus/iio/devices/iio:deviceX/in_temp_object_calibemissivity
What:		/sys/bus/iio/devices/iio:deviceX/in_tempY_object_calibemissivity
KernelVersion:	4.1
Contact:	linux-iio@vger.kernel.org
Description:
		The emissivity ratio of the surface in the field of view of the
		contactless temperature sensor.  Emissivity varies from 0 to 1,
		with 1 being the emissivity of a black body.

What:		/sys/bus/iio/devices/iio:deviceX/in_magn_x_oversampling_ratio
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_y_oversampling_ratio
What:		/sys/bus/iio/devices/iio:deviceX/in_magn_z_oversampling_ratio
KernelVersion:	4.2
Contact:	linux-iio@vger.kernel.org
Description:
		Hardware applied number of measurements for acquiring one
		data point. The HW will do <type>[_name]_oversampling_ratio
		measurements and return the average value as output data. Each
		value resulted from <type>[_name]_oversampling_ratio measurements
		is considered as one sample for <type>[_name]_sampling_frequency.

What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationY_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_co2_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationY_co2_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_ethanol_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationY_ethanol_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_h2_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationY_h2_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_o2_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationY_o2_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_concentration_voc_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_concentrationY_voc_raw
KernelVersion:	4.3
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled no offset etc.) reading of a substance. Units
		after application of scale and offset are percents.

What:		/sys/bus/iio/devices/iio:deviceX/in_resistance_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_resistanceY_raw
What:		/sys/bus/iio/devices/iio:deviceX/out_resistance_raw
What:		/sys/bus/iio/devices/iio:deviceX/out_resistanceY_raw
KernelVersion:	4.3
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled no offset etc.) resistance reading.
		Units after application of scale and offset are ohms.

What:		/sys/bus/iio/devices/iio:deviceX/heater_enable
KernelVersion:	4.1.0
Contact:	linux-iio@vger.kernel.org
Description:
		'1' (enable) or '0' (disable) specifying the enable
		of heater function. Same reading values apply.

		This ABI is especially applicable for humidity sensors
		to heatup the device and get rid of any condensation
		in some humidity environment

What:		/sys/bus/iio/devices/iio:deviceX/in_ph_raw
KernelVersion:	4.5
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled no offset etc.) pH reading of a substance as a negative
		base-10 logarithm of hydrodium ions in a litre of water.

What:           /sys/bus/iio/devices/iio:deviceX/mount_matrix
What:           /sys/bus/iio/devices/iio:deviceX/in_mount_matrix
What:           /sys/bus/iio/devices/iio:deviceX/out_mount_matrix
What:           /sys/bus/iio/devices/iio:deviceX/in_anglvel_mount_matrix
What:           /sys/bus/iio/devices/iio:deviceX/in_accel_mount_matrix
KernelVersion:  4.6
Contact:        linux-iio@vger.kernel.org
Description:
		Mounting matrix for IIO sensors. This is a rotation matrix which
		informs userspace about sensor chip's placement relative to the
		main hardware it is mounted on.

		Main hardware placement is defined according to the local
		reference frame related to the physical quantity the sensor
		measures.

		Given that the rotation matrix is defined in a board specific
		way (platform data and / or device-tree), the main hardware
		reference frame definition is left to the implementor's choice
		(see below for a magnetometer example).

		Applications should apply this rotation matrix to samples so
		that when main hardware reference frame is aligned onto local
		reference frame, then sensor chip reference frame is also
		perfectly aligned with it.

		Matrix is a 3x3 unitary matrix and typically looks like
		[0, 1, 0; 1, 0, 0; 0, 0, -1]. Identity matrix
		[1, 0, 0; 0, 1, 0; 0, 0, 1] means sensor chip and main hardware
		are perfectly aligned with each other.

		For example, a mounting matrix for a magnetometer sensor informs
		userspace about sensor chip's ORIENTATION relative to the main
		hardware.

		More specifically, main hardware orientation is defined with
		respect to the LOCAL EARTH GEOMAGNETIC REFERENCE FRAME where :

		* Y is in the ground plane and positive towards magnetic North ;
		* X is in the ground plane, perpendicular to the North axis and
		  positive towards the East ;
		* Z is perpendicular to the ground plane and positive upwards.

		An implementor might consider that for a hand-held device, a
		'natural' orientation would be 'front facing camera at the top'.
		The main hardware reference frame could then be described as :

		* Y is in the plane of the screen and is positive towards the
		  top of the screen ;
		* X is in the plane of the screen, perpendicular to Y axis, and
		  positive towards the right hand side of the screen ;
		* Z is perpendicular to the screen plane and positive out of the
		  screen.

		Another example for a quadrotor UAV might be :

		* Y is in the plane of the propellers and positive towards the
		  front-view camera;
		* X is in the plane of the propellers, perpendicular to Y axis,
		  and positive towards the starboard side of the UAV ;
		* Z is perpendicular to propellers plane and positive upwards.

What:		/sys/bus/iio/devices/iio:deviceX/in_electricalconductivity_raw
KernelVersion:	4.8
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled no offset etc.) electric conductivity reading.
		Units after application of scale and offset are siemens per
		meter.

What:		/sys/bus/iio/devices/iio:deviceX/in_countY_raw
KernelVersion:	4.10
Contact:	linux-iio@vger.kernel.org
Description:
		This interface is deprecated; please use the Counter subsystem.

		Raw counter device counts from channel Y. For quadrature
		counters, multiplication by an available [Y]_scale results in
		the counts of a single quadrature signal phase from channel Y.

What:		/sys/bus/iio/devices/iio:deviceX/in_indexY_raw
KernelVersion:	4.10
Contact:	linux-iio@vger.kernel.org
Description:
		This interface is deprecated; please use the Counter subsystem.

		Raw counter device index value from channel Y. This attribute
		provides an absolute positional reference (e.g. a pulse once per
		revolution) which may be used to home positional systems as
		required.

What:		/sys/bus/iio/devices/iio:deviceX/in_count_count_direction_available
KernelVersion:	4.12
Contact:	linux-iio@vger.kernel.org
Description:
		This interface is deprecated; please use the Counter subsystem.

		A list of possible counting directions which are:

		- "up"	: counter device is increasing.
		- "down": counter device is decreasing.

What:		/sys/bus/iio/devices/iio:deviceX/in_countY_count_direction
KernelVersion:	4.12
Contact:	linux-iio@vger.kernel.org
Description:
		This interface is deprecated; please use the Counter subsystem.

		Raw counter device counters direction for channel Y.

What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_label
What:		/sys/bus/iio/devices/iio:deviceX/out_voltageY_label
KernelVersion:	5.8
Contact:	linux-iio@vger.kernel.org
Description:
		Optional symbolic label to a device channel.
		If a label is defined for this channel add that to the channel
		specific attributes. This is useful for userspace to be able to
		better identify an individual channel.

What:		/sys/bus/iio/devices/iio:deviceX/in_phaseY_raw
KernelVersion:	4.18
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled) phase difference reading from channel Y.
		Units after application of scale and offset are radians.

What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm1_input
What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm1_input
What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm2p5_input
What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm2p5_input
What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm4_input
What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm4_input
What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm10_input
What:		/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm10_input
KernelVersion:	4.22
Contact:	linux-iio@vger.kernel.org
Description:
		Mass concentration reading of particulate matter in ug / m3.
		pmX consists of particles with aerodynamic diameter less or
		equal to X micrometers.

What:		/sys/bus/iio/devices/iio:deviceX/events/in_illuminance_period_available
Date:		November 2019
KernelVersion:	5.4
Contact:	linux-iio@vger.kernel.org
Description:
		List of valid periods (in seconds) for which the light intensity
		must be above the threshold level before interrupt is asserted.

What:		/sys/bus/iio/devices/iio:deviceX/in_filter_notch_center_frequency
KernelVersion:	5.5
Contact:	linux-iio@vger.kernel.org
Description:
		Center frequency in Hz for a notch filter. Used i.e. for line
		noise suppression.

What:		/sys/bus/iio/devices/iio:deviceX/in_temp_thermocouple_type
KernelVersion:	5.5
Contact:	linux-iio@vger.kernel.org
Description:
		One of the following thermocouple types: B, E, J, K, N, R, S, T.

What:		/sys/bus/iio/devices/iio:deviceX/in_temp_object_calibambient
What:		/sys/bus/iio/devices/iio:deviceX/in_tempY_object_calibambient
KernelVersion:	5.10
Contact:	linux-iio@vger.kernel.org
Description:
		Calibrated ambient temperature for object temperature
		calculation in milli degrees Celsius.

What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_y_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_z_raw
KernelVersion:	5.10
Contact:	linux-iio@vger.kernel.org
Description:
		Unscaled light intensity according to CIE 1931/DIN 5033 color space.
		Units after application of scale are nano nanowatts per square meter.

What:		/sys/bus/iio/devices/iio:deviceX/in_anglY_label
KernelVersion:	5.12
Contact:	linux-iio@vger.kernel.org
Description:
		Optional symbolic label for channel Y.
		For Intel hid hinge sensor, the label values are:
		hinge, keyboard, screen. It means the three channels
		each correspond respectively to hinge angle, keyboard angle,
		and screen angle.

What:		/sys/bus/iio/devices/iio:deviceX/in_illuminance_hysteresis_relative
What:		/sys/bus/iio/devices/iio:deviceX/in_intensity_hysteresis_relative
KernelVersion:	5.12
Contact:	linux-iio@vger.kernel.org
Description:
		Specify the percent for light sensor relative to the channel
		absolute value that a data field should change before an event
		is generated. Units are a percentage of the prior reading.

What:		/sys/bus/iio/devices/iio:deviceX/calibration_auto_enable
Date:		June 2020
KernelVersion:	5.8
Contact:	linux-iio@vger.kernel.org
Description:
		Some sensors have the ability to apply auto calibration at
		runtime. For example, it may be necessary to compensate for
		contaminant build-up in a measurement chamber or optical
		element deterioration that would otherwise lead to sensor drift.

		Writing 1 or 0 to this attribute will respectively activate or
		deactivate this auto calibration function.

		Upon reading, the current status is returned.

What:		/sys/bus/iio/devices/iio:deviceX/calibration_forced_value
Date:		June 2020
KernelVersion:	5.8
Contact:	linux-iio@vger.kernel.org
Description:
		Some sensors have the ability to apply a manual calibration using
		a known measurement value, perhaps obtained from an external
		reference device.

		Writing a value to this function will force such a calibration
		change. For the scd30 the value should be from the range
		[400 1 2000].

		Note for the scd30 that a valid value may only be obtained once
		it is has been written. Until then any read back of this value
		should be ignored. As for the scd4x an error will be returned
		immediately if the manual calibration has failed.

What:		/sys/bus/iio/devices/iio:deviceX/calibration_forced_value_available
KernelVersion:  5.15
Contact:        linux-iio@vger.kernel.org
Description:
		Available range for the forced calibration value, expressed as:

		- a range specified as "[min step max]"

What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_sampling_frequency
What:		/sys/bus/iio/devices/iio:deviceX/in_powerY_sampling_frequency
What:		/sys/bus/iio/devices/iio:deviceX/in_currentY_sampling_frequency
KernelVersion:	5.20
Contact:	linux-iio@vger.kernel.org
Description:
		Some devices have separate controls of sampling frequency for
		individual channels. If multiple channels are enabled in a scan,
		then the sampling_frequency of the scan may be computed from the
		per channel sampling frequencies.

What:		/sys/.../events/in_accel_gesture_singletap_en
What:		/sys/.../events/in_accel_gesture_doubletap_en
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Device generates an event on a single or double tap.

What:		/sys/.../events/in_accel_gesture_singletap_value
What:		/sys/.../events/in_accel_gesture_doubletap_value
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies the threshold value that the device is comparing
		against to generate the tap gesture event. The lower
		threshold value increases the sensitivity of tap detection.
		Units and the exact meaning of value are device-specific.

What:		/sys/.../events/in_accel_gesture_tap_value_available
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Lists all available threshold values which can be used to
		modify the sensitivity of the tap detection.

What:		/sys/.../events/in_accel_gesture_singletap_reset_timeout
What:		/sys/.../events/in_accel_gesture_doubletap_reset_timeout
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies the timeout value in seconds for the tap detector
		to not to look for another tap event after the event as
		occurred. Basically the minimum quiet time between the two
		single-tap's or two double-tap's.

What:		/sys/.../events/in_accel_gesture_tap_reset_timeout_available
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Lists all available tap reset timeout values. Units in seconds.

What:		/sys/.../events/in_accel_gesture_doubletap_tap2_min_delay
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies the minimum quiet time in seconds between the two
		taps of a double tap.

What:		/sys/.../events/in_accel_gesture_doubletap_tap2_min_delay_available
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Lists all available delay values between two taps in the double
		tap. Units in seconds.

What:		/sys/.../events/in_accel_gesture_tap_maxtomin_time
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies the maximum time difference allowed between upper
		and lower peak of tap to consider it as the valid tap event.
		Units in seconds.

What:		/sys/.../events/in_accel_gesture_tap_maxtomin_time_available
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Lists all available time values between upper peak to lower
		peak. Units in seconds.

What:		/sys/bus/iio/devices/iio:deviceX/in_rot_yaw_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_rot_pitch_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_rot_roll_raw
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Raw (unscaled) euler angles readings. Units after
		application of scale are deg.

What:		/sys/bus/iio/devices/iio:deviceX/serialnumber
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		An example format is 16-bytes, 2-digits-per-byte, HEX-string
		representing the sensor unique ID number.

What:		/sys/bus/iio/devices/iio:deviceX/filter_type_available
What:		/sys/bus/iio/devices/iio:deviceX/in_voltage-voltage_filter_type_available
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Reading returns a list with the possible filter modes. Options
		for the attribute:

		* "none" - Filter is disabled/bypassed.
		* "sinc1" - The digital sinc1 filter. Fast 1st
		  conversion time. Poor noise performance.
		* "sinc3" - The digital sinc3 filter. Moderate 1st
		  conversion time. Good noise performance.
		* "sinc3+pf1" - Sinc3 + device specific Post Filter 1.
		* "sinc3+pf2" - Sinc3 + device specific Post Filter 2.
		* "sinc3+pf3" - Sinc3 + device specific Post Filter 3.
		* "sinc3+pf4" - Sinc3 + device specific Post Filter 4.
		* "sinc3+rej60" - Sinc3 + 60Hz rejection.
		* "sinc3+sinc1" - Sinc3 + averaging by 8. Low 1st conversion
		  time.
		* "sinc4" - Sinc 4. Excellent noise performance. Long
		  1st conversion time.
		* "sinc4+lp" - Sinc4 + Low Pass Filter.
		* "sinc4+sinc1" - Sinc4 + averaging by 8. Low 1st conversion
		  time.
		* "sinc4+rej60" - Sinc4 + 60Hz rejection.
		* "sinc5" - The digital sinc5 filter. Excellent noise
		  performance
		* "sinc5+avg" - Sinc5 + averaging by 4.
		* "sinc5+pf1" - Sinc5 + device specific Post Filter 1.
		* "sinc5+sinc1" - Sinc5 + Sinc1.
		* "sinc5+sinc1+pf1" - Sinc5 + Sinc1 + device specific Post Filter 1.
		* "sinc5+sinc1+pf2" - Sinc5 + Sinc1 + device specific Post Filter 2.
		* "sinc5+sinc1+pf3" - Sinc5 + Sinc1 + device specific Post Filter 3.
		* "sinc5+sinc1+pf4" - Sinc5 + Sinc1 + device specific Post Filter 4.
		* "wideband" - filter with wideband low ripple passband
		  and sharp transition band.

What:		/sys/bus/iio/devices/iio:deviceX/filter_type
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY-voltageZ_filter_type
KernelVersion:	6.1
Contact:	linux-iio@vger.kernel.org
Description:
		Specifies which filter type apply to the channel. The possible
		values are given by the filter_type_available attribute.

What:		/sys/.../events/in_proximity_thresh_either_runningperiod
KernelVersion:	6.6
Contact:	linux-iio@vger.kernel.org
Description:
		A running period of time (in seconds) for which
		in_proximity_thresh_either_runningcount amount of conditions
		must occur before an event is generated. If direction is not
		specified then this period applies to both directions.

What:		/sys/.../events/in_proximity_thresh_either_runningcount
KernelVersion:	6.6
Contact:	linux-iio@vger.kernel.org
Description:
		Number of conditions that must occur, during a running
		period, before an event is generated.

What:		/sys/bus/iio/devices/iio:deviceX/in_colortemp_raw
KernelVersion:	6.7
Contact:	linux-iio@vger.kernel.org
Description:
		Represents light color temperature, which measures light color
		temperature in Kelvin.

What:		/sys/bus/iio/devices/iio:deviceX/in_chromaticity_x_raw
What:		/sys/bus/iio/devices/iio:deviceX/in_chromaticity_y_raw
KernelVersion:	6.7
Contact:	linux-iio@vger.kernel.org
Description:
		The x and y light color coordinate on the CIE 1931 chromaticity
		diagram.

What:		/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_mag_either_label
What:		/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_mag_rising_label
What:		/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_thresh_falling_label
What:		/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_thresh_rising_label
What:		/sys/bus/iio/devices/iio:deviceX/events/in_anglvelY_mag_rising_label
What:		/sys/bus/iio/devices/iio:deviceX/events/in_anglY_thresh_rising_label
What:		/sys/bus/iio/devices/iio:deviceX/events/in_phaseY_mag_rising_label
KernelVersion:	6.7
Contact:	linux-iio@vger.kernel.org
Description:
		Optional symbolic label to a device channel event.
		If a label is defined for this event add that to the event
		specific attributes. This is useful for userspace to be able to
		better identify an individual event.

What:		/sys/.../events/in_accel_gesture_tap_wait_timeout
KernelVersion:	6.7
Contact:	linux-iio@vger.kernel.org
Description:
		Enable tap gesture confirmation with timeout.

What:		/sys/.../events/in_accel_gesture_tap_wait_dur
KernelVersion:	6.7
Contact:	linux-iio@vger.kernel.org
Description:
		Timeout value in seconds for tap gesture confirmation.

What:		/sys/.../events/in_accel_gesture_tap_wait_dur_available
KernelVersion:	6.7
Contact:	linux-iio@vger.kernel.org
Description:
		List of available timeout value for tap gesture confirmation.

What:		/sys/.../iio:deviceX/in_shunt_resistor
What:		/sys/.../iio:deviceX/in_current_shunt_resistor
What:		/sys/.../iio:deviceX/in_power_shunt_resistor
KernelVersion:	6.10
Contact:	linux-iio@vger.kernel.org
Description:
		The value of current sense resistor in Ohms.

What:		/sys/.../iio:deviceX/in_attention_input
KernelVersion:	6.13
Contact:	linux-iio@vger.kernel.org
Description:
		Value representing the user's attention to the system expressed
		in units as percentage. This usually means if the user is
		looking at the screen or not.
