Commit 6771fb0b authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge tag 'iio-for-5.14a' of...

Merge tag 'iio-for-5.14a' of https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next

Jonathan writes:

1st set of new IIO/counter device support, features and cleanup for 5.14

There are a couple of large cleanup sets in here alongside a number of new
drivers.

Note an immutable branch merged to add a stub for i2c_verify_client()
as needed to avoid a build issue in the fxls8962af driver as a result of a
workaround for a device errata that only applies when i2c interface is used.

Counters
========

New device support
* intel,quadrature encoder peripheral found on Elkhart Lake platforms.
  - New driver.

IIO
===

New device support
* amstaos,tsl2591 ambient light sensor.
  - New driver + bindings
  - Follow up fix to ensure some local variables are suitable for error
    handling.
* fsl,fxls8962af + fsl,fxls8964af accelerometers
  - New driver + bindings
  - Includes an errata work around that cause a build bot failure fixed
    by adding a stub to i2c.
* kionix,kxcjk-1013
  - Add support for KX023-1025 device.  Mostly a different register map
    that needed to be supported.
* murata,sca3300 accelerometer
  - New driver + bindings
* st,lsm9ds0 IMU
  - Rework of st,sensors driver to cleanly support this new glue driver
    that enables the two parts of the LSM9DS0.
* ti,tsc2046 touchscreen controller ADC.
  - New driver. Intent here is to use this with existing IIO consumer
    drivers such as resistive-adc-touch.
  - Follow up fix to avoid an issue with unsigned subtraction in error
    check.
* ti,tmp117 digital temperature sensor
  - New driver + bindings

Features
* adi,ad5755
  - Add missing dt-binding doc
* adi,ad7298
  - Add ACPI ID used on Intel Galileo Gen 1 boards.
  - Add missing dt-binding doc
* adi,ad7476
  - Add missing dt-binding doc
* adi,ad7746
  - Add missing dt-binding doc for this driver that will hopefully move out
    of staging shortly. Update staging driver to use the binding instead of
    platform data.
* adi,adis16201 + adis16209
  - Add missing dt-binding doc
* adi,adis16480
  - Support burst mode for adis16495 and adis16497 parts.
* bosch,bma220
  - Add missing dt-binding doc
* fsl,mma7455
  - Add missing dt-binding doc
* iio-rescale
  - Support handling of processed channels from provider.  Some ADCs
    require (typically non linear) calibration functions to be applied,
    and so provide only IIO_CHAN_INFO_PROCESSED read back. They can be
    used as providers to the iio-rescale driver which needs to handle them
    somewhat differently from IIO_CHAN_INFO_RAW
* sensiron,sps30
  - Support the serial interface.  Note this required significant
    refactoring of existing driver.
* st,st-sensors
  - Add mount matrix support for normal dt-binding whilst continuing to
    support the odd ACPI approach for accelerometers.
* ti,dac082s085 + similar
  - Add missing dt-binding doc
* trivial-devices - add entries for
  - memsic,mx4005, memsic,mx6255 and memsic,mxc6655
  - sensortek,stk8312 and sensortek,stk8ba50

Cleanup / minor fixes
* core
  - Use devm_add_action_or_reset() to replace boilerplate in several
    driver and core IIO devm_* functions.
  - Fix an error path issue introduced by above, that could return an
    error pointer rather than the expected null from dev_iio_device_alloc()
  - Move more IIO internals related fields from struct iio_dev to
    struct iio_dev_opaque.
  - Drop unused final update of in_loc in demux setup.
* Docs
  - Move some docs from driver specific to core dos to avoid replication
    of names which the documentation builder does not allow.
    Note this means adding a few device specific notes to the general docs
    to cover the more unusual uses of the ABI.
  - ABI: Move old buffer/* and scan_elements/* docs to obsolete as now we
    have the bufferX/* variant.  Not we are not getting rid of these
    interfaces, just encouraging new code to use the new interface.
* IIO wide:
  - Tidy up new cases of dev.parent etc being set in drivers as the core
    now does it.
  - Fix more cases of possible miss-aligned buffers when passed to
    iio_push_to_buffers_with_timestamp().  Note we only have one known
    instance of anyone seeing this bug actually happening, so this has been
    a low priority cleanup effort for several cycles.
  - sysfs_emit() used in more drivers.
  - Runtime pm tidy up and use of pm_runtime_resume_and_get()
  - Buffer alignment fixes as iio_push_to_buffers_with_timestamp requires
    that the timestamp when inserted by naturally aligned + consumers can
    assume that all fields are naturally aligned. Part of a long running
    effort, with at least 2 more series to come tackling additional
    variants.
  - Stop specifying "mount-matrix" property name in every lookup of the
    mount matrix from firmware by hard coding it in the core.
* adi,ad7476
  - Handle the variety of different regulators used by the parts supported
    by this driver (came up in dt-binding review)
* adi,ad7746
  - Trivial drop of if (ret) return ret; return 0; pattern
  - Tidy up comments
  - Pull capdac setup out to own function.
* adi,ad7766
  - Trivial drop of if (ret) return ret; return 0; pattern
* adi,adis
  - Avoid returning error codes in interrupt handlers.
  - Handle a failure in spi_write in the trigger handler.
  - Rework to add updating of device page after changing it.
  - Don't push data to IIO buffers when read failed.
  - Add configuration of burst max speed to core avoid handling this in
    each driver.
  - Use the adis_dev_lock() helper in adis16260 and adis16136 drivers.
  - Excessive includes cleanup via include-what-you-use static checker
    after zero day highlighted that these needed updating.
* afe
  - Amend binding to add #io-channel-cells, thus allowing this IIO
    consumer to also be an IIO provider.
* aosong,am2315
  - Drop ACPI id. Unlikely this one is in the wild and it isn't valid
    ACPI naming.
* bosch,bma180
  - Adding missing bandwidth settings (500, 1000 Hz)
* bosch,bme680
  - Drop ACPI id. Unlikely this one is in the wild and it isn't valid
    ACPI naming.
* ep93xx_adc,
  - Drop a redundant error print.
* maxim,max118
  - Convert remainder of probe() to devm_ managed functions.
  - Avoid some repeated jumping back and forth between iio_dev and
    spi structures.
* maxim,max11100
  - Use get_unaligned_be16() instead of open coding.
  - Convert remainder of probe() to devm_ managed functions.
* samsung,exynos_adc
  - Unused error value dropped.
* sensiron,sgp30
  - Drop use of %hx in favor of %x and letting the normal type conversion
    work.
* sensortek,stk8312
  - Add lowercase device id and note uppercase version deprecated.
  - Drop ACPI id. Unlikely this one is in the wild and it isn't valid
    ACPI naming.
* sprx,sc72xx_adc
  - add MODULE_DEVICE_TABLE
* st,lsm6dsx
  - Fix docs of valid ODRs
* st,sensors
  - dt-binding rework.  Two efforts on this crossed in a previous cycle
    so this update cherry picks the best of the two yaml conversions.
  - Don't copy the channel spec array as now ext_info is no longer modified.
* st,stm32-adc
  - tidy up some docs that were marked as kernel-doc but aren't.
* ti,adc081c, ti,adc0832, ti,adc108s102 and ti,adc161s626
  - Convert remainder of probe() functions to devm_ managed functions
    to simplify error handing and remove paths.

* tag 'iio-for-5.14a' of https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio: (171 commits)
  i2c: core: Add stub for i2c_verify_client() if !CONFIG_I2C
  iio: adis: Cleanout unused headers
  iio: accel: bma180: Add missing 500 Hz / 1000 Hz bandwidth
  counter: Add support for Intel Quadrature Encoder Peripheral
  staging: iio: cdc: ad7746: extract capac setup to own function
  staging: iio: cdc: ad7746: clean up probe return
  staging: iio: cdc: ad7746: remove ordinary comments
  iio: adc: ti-adc161s626: Use devm managed functions for all of probe.
  iio: adc: ti-adc108s102: Use devm managed functions for all of probe()
  iio: adc: ti-adc0832: Use devm managed functions for all of probe()
  iio: adc: ti-adc081c: Use devm managed functions for all of probe()
  iio: adc: max1118: Avoid jumping back and forth between spi and iio structures
  iio: adc: max1118: Use devm_ managed functions for all of probe
  iio: adc: max11100: Use devm_ functions for rest of probe()
  iio: adc: max11100: Use get_unaligned_be16() rather than opencoding.
  iio: chemical: sgp30: Drop use of %hx in format string.
  iio: gyro: st_gyro: Support mount matrix
  iio: magnetometer: st_magn: Support mount matrix
  iio: accel: st_sensors: Stop copying channels
  iio: accel: st_sensors: Support generic mounting matrix
  ...
parents 54fd727f 41340965
Loading
Loading
Loading
Loading
+182 −0
Original line number Diff line number Diff line
What:		/sys/bus/iio/devices/iio:deviceX/buffer/length
KernelVersion:	2.6.35
Contact:	linux-iio@vger.kernel.org
Description:
		Number of scans contained by the buffer.

		Since Kernel 5.11, multiple buffers are supported.
		so, it is better to use, instead:
			/sys/bus/iio/devices/iio:deviceX/bufferY/length

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

		Since Kernel 5.11, multiple buffers are supported.
		so, it is better to use, instead:
			/sys/bus/iio/devices/iio:deviceX/bufferY/enable

What:		/sys/bus/iio/devices/iio:deviceX/scan_elements
KernelVersion:	2.6.37
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/scan_elements/in_accel_x_en
What:		/sys/.../iio:deviceX/scan_elements/in_accel_y_en
What:		/sys/.../iio:deviceX/scan_elements/in_accel_z_en
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_x_en
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_y_en
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_z_en
What:		/sys/.../iio:deviceX/scan_elements/in_magn_x_en
What:		/sys/.../iio:deviceX/scan_elements/in_magn_y_en
What:		/sys/.../iio:deviceX/scan_elements/in_magn_z_en
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_en
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_en
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_en
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_en
What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY-voltageZ_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_en
What:		/sys/.../iio:deviceX/scan_elements/in_incli_x_en
What:		/sys/.../iio:deviceX/scan_elements/in_incli_y_en
What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_en
What:		/sys/.../iio:deviceX/scan_elements/in_pressure_en
What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_en
What:		/sys/.../iio:deviceX/scan_elements/in_proximity_en
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		Scan element control for triggered data capture.

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

What:		/sys/.../iio:deviceX/scan_elements/in_accel_type
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_type
What:		/sys/.../iio:deviceX/scan_elements/in_magn_type
What:		/sys/.../iio:deviceX/scan_elements/in_incli_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_type
What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_type
What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_type
What:		/sys/.../iio:deviceX/scan_elements/in_pressure_type
What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_type
What:		/sys/.../iio:deviceX/scan_elements/in_proximity_type
KernelVersion:	2.6.37
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.

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

What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_index
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_index
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_index
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_index
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_index
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_index
What:		/sys/.../iio:deviceX/scan_elements/in_accel_x_index
What:		/sys/.../iio:deviceX/scan_elements/in_accel_y_index
What:		/sys/.../iio:deviceX/scan_elements/in_accel_z_index
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_x_index
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_y_index
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_z_index
What:		/sys/.../iio:deviceX/scan_elements/in_magn_x_index
What:		/sys/.../iio:deviceX/scan_elements/in_magn_y_index
What:		/sys/.../iio:deviceX/scan_elements/in_magn_z_index
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_index
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_index
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_index
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_index
What:		/sys/.../iio:deviceX/scan_elements/in_incli_x_index
What:		/sys/.../iio:deviceX/scan_elements/in_incli_y_index
What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_index
What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_index
What:		/sys/.../iio:deviceX/scan_elements/in_pressure_index
What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_index
What:		/sys/.../iio:deviceX/scan_elements/in_proximity_index
KernelVersion:	2.6.37
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.

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

What:		/sys/bus/iio/devices/iio:deviceX/buffer/watermark
KernelVersion:	4.2
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.

		Since Kernel 5.11, multiple buffers are supported.
		so, it is better to use, instead:
			/sys/bus/iio/devices/iio:deviceX/bufferY/watermark

What:		/sys/bus/iio/devices/iio:deviceX/buffer/data_available
KernelVersion: 4.16
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.

		Since Kernel 5.11, multiple buffers are supported.
		so, it is better to use, instead:
			/sys/bus/iio/devices/iio:deviceX/bufferY/data_available
+9 −0
Original line number Diff line number Diff line
@@ -193,6 +193,15 @@ Description:
		both edges:
			Any state transition.

What:		/sys/bus/counter/devices/counterX/countY/spike_filter_ns
KernelVersion:	5.14
Contact:	linux-iio@vger.kernel.org
Description:
		If the counter device supports programmable spike filter this
		attribute indicates the value in nanoseconds where noise pulses
		shorter or equal to configured value are ignored. Value 0 means
		filter is disabled.

What:		/sys/bus/counter/devices/counterX/name
KernelVersion:	5.2
Contact:	linux-iio@vger.kernel.org
+43 −82
Original line number Diff line number Diff line
@@ -455,6 +455,19 @@ 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
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_calibscale
What:		/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_calibscale
@@ -652,6 +665,25 @@ 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/out_altvoltageY_phase
KernelVersion:	3.4.0
@@ -663,6 +695,17 @@ Description:
		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
@@ -1195,16 +1238,12 @@ 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/buffer/length
KernelVersion:	2.6.35
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/buffer/enable
KernelVersion:	2.6.35
What:		/sys/bus/iio/devices/iio:deviceX/bufferY/enable
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
@@ -1212,8 +1251,6 @@ Description:
		Actually start the buffer capture up.  Will start trigger
		if first device and appropriate.

What:		/sys/bus/iio/devices/iio:deviceX/scan_elements
KernelVersion:	2.6.37
What:		/sys/bus/iio/devices/iio:deviceX/bufferY
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
@@ -1224,34 +1261,6 @@ Description:
		Since kernel 5.11 the scan_elements attributes are merged into
		the bufferY directory, to be configurable per buffer.

What:		/sys/.../iio:deviceX/scan_elements/in_accel_x_en
What:		/sys/.../iio:deviceX/scan_elements/in_accel_y_en
What:		/sys/.../iio:deviceX/scan_elements/in_accel_z_en
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_x_en
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_y_en
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_z_en
What:		/sys/.../iio:deviceX/scan_elements/in_magn_x_en
What:		/sys/.../iio:deviceX/scan_elements/in_magn_y_en
What:		/sys/.../iio:deviceX/scan_elements/in_magn_z_en
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_en
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_en
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_en
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_en
What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY-voltageZ_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_en
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_en
What:		/sys/.../iio:deviceX/scan_elements/in_incli_x_en
What:		/sys/.../iio:deviceX/scan_elements/in_incli_y_en
What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_en
What:		/sys/.../iio:deviceX/scan_elements/in_pressure_en
What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_en
What:		/sys/.../iio:deviceX/scan_elements/in_proximity_en
KernelVersion:	2.6.37
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
@@ -1284,23 +1293,6 @@ Contact: linux-iio@vger.kernel.org
Description:
		Scan element control for triggered data capture.

What:		/sys/.../iio:deviceX/scan_elements/in_accel_type
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_type
What:		/sys/.../iio:deviceX/scan_elements/in_magn_type
What:		/sys/.../iio:deviceX/scan_elements/in_incli_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_type
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_type
What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_type
What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_type
What:		/sys/.../iio:deviceX/scan_elements/in_pressure_type
What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_type
What:		/sys/.../iio:deviceX/scan_elements/in_proximity_type
KernelVersion:	2.6.37
What:		/sys/.../iio:deviceX/bufferY/in_accel_type
What:		/sys/.../iio:deviceX/bufferY/in_anglvel_type
What:		/sys/.../iio:deviceX/bufferY/in_magn_type
@@ -1347,33 +1339,6 @@ Description:
		If the type parameter can take one of a small set of values,
		this attribute lists them.

What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_index
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_supply_index
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_i_index
What:		/sys/.../iio:deviceX/scan_elements/in_voltageY_q_index
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_i_index
What:		/sys/.../iio:deviceX/scan_elements/in_voltage_q_index
What:		/sys/.../iio:deviceX/scan_elements/in_accel_x_index
What:		/sys/.../iio:deviceX/scan_elements/in_accel_y_index
What:		/sys/.../iio:deviceX/scan_elements/in_accel_z_index
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_x_index
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_y_index
What:		/sys/.../iio:deviceX/scan_elements/in_anglvel_z_index
What:		/sys/.../iio:deviceX/scan_elements/in_magn_x_index
What:		/sys/.../iio:deviceX/scan_elements/in_magn_y_index
What:		/sys/.../iio:deviceX/scan_elements/in_magn_z_index
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_index
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_index
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_index
What:		/sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_index
What:		/sys/.../iio:deviceX/scan_elements/in_incli_x_index
What:		/sys/.../iio:deviceX/scan_elements/in_incli_y_index
What:		/sys/.../iio:deviceX/scan_elements/in_timestamp_index
What:		/sys/.../iio:deviceX/scan_elements/in_pressureY_index
What:		/sys/.../iio:deviceX/scan_elements/in_pressure_index
What:		/sys/.../iio:deviceX/scan_elements/in_rot_quaternion_index
What:		/sys/.../iio:deviceX/scan_elements/in_proximity_index
KernelVersion:	2.6.37
What:		/sys/.../iio:deviceX/bufferY/in_voltageY_index
What:		/sys/.../iio:deviceX/bufferY/in_voltageY_supply_index
What:		/sys/.../iio:deviceX/bufferY/in_voltageY_i_index
@@ -1613,8 +1578,6 @@ 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/buffer/watermark
KernelVersion:	4.2
What:		/sys/bus/iio/devices/iio:deviceX/bufferY/watermark
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
@@ -1633,8 +1596,6 @@ Description:
		the available samples after the timeout expires and thus have a
		maximum delay guarantee.

What:		/sys/bus/iio/devices/iio:deviceX/buffer/data_available
KernelVersion: 4.16
What:		/sys/bus/iio/devices/iio:deviceX/bufferY/data_available
KernelVersion:	5.11
Contact:	linux-iio@vger.kernel.org
+0 −33
Original line number Diff line number Diff line
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency
KernelVersion:
Contact:	linux-iio@vger.kernel.org
Description:
		Stores the PLL frequency in Hz for channel Y.
		Reading returns the actual frequency in Hz.
		The 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/out_altvoltageY_name
KernelVersion:
Contact:	linux-iio@vger.kernel.org
@@ -34,11 +9,3 @@ Description:
		  out_altvoltage2_name: RF16x
		  out_altvoltage3_name: RF32x
What:		/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown
KernelVersion:
Contact:	linux-iio@vger.kernel.org
Description:
		This attribute allows the user to power down the PLL and it's
		RFOut buffers.
		Writing 1 causes the specified channel to power down.
		Clearing returns to normal operation.
+2 −8
Original line number Diff line number Diff line
@@ -18,6 +18,8 @@ Description:
		respectively which simply helper channels containing the
		calculated difference in the value of stage 1 - 2 and 3 - 4.
		The values are expressed in 24-bit twos complement.
		The LED current for the stage is controlled via
		out_currentY_raw.

What:		/sys/bus/iio/devices/iio:deviceX/in_intensityY_offset
Date:		May 2016
@@ -35,11 +37,3 @@ Contact: Andrew F. Davis <afd@ti.com>
Description:
		Get and set the resistance and the capacitance settings for the
		Transimpedance Amplifier during the associated stage.

What:		/sys/bus/iio/devices/iio:deviceX/out_currentY_raw
Date:		May 2016
KernelVersion:
Contact:	Andrew F. Davis <afd@ti.com>
Description:
		Get and set the LED current for the specified LED active during
		this stage. Y is the specific stage number.
Loading