.. SPDX-License-Identifier: GPL-2.0-only

=============
AD7380 driver
=============

ADC driver for Analog Devices Inc. AD7380 and similar devices. The module name
is ``ad7380``.


Supported devices
=================

The following chips are supported by this driver:

* `AD7380 <https://www.analog.com/en/products/ad7380.html>`_
* `AD7381 <https://www.analog.com/en/products/ad7381.html>`_
* `AD7383 <https://www.analog.com/en/products/ad7383.html>`_
* `AD7384 <https://www.analog.com/en/products/ad7384.html>`_
* `AD7386 <https://www.analog.com/en/products/ad7386.html>`_
* `AD7387 <https://www.analog.com/en/products/ad7387.html>`_
* `AD7388 <https://www.analog.com/en/products/ad7388.html>`_
* `AD7380-4 <https://www.analog.com/en/products/ad7380-4.html>`_
* `AD7381-4 <https://www.analog.com/en/products/ad7381-4.html>`_
* `AD7383-4 <https://www.analog.com/en/products/ad7383-4.html>`_
* `AD7384-4 <https://www.analog.com/en/products/ad7384-4.html>`_
* `AD7386-4 <https://www.analog.com/en/products/ad7386-4.html>`_
* `AD7387-4 <https://www.analog.com/en/products/ad7387-4.html>`_
* `AD7388-4 <https://www.analog.com/en/products/ad7388-4.html>`_


Supported features
==================

SPI wiring modes
----------------

ad738x ADCs can output data on several SDO lines (1/2/4). The driver currently
supports only 1 SDO line.

Reference voltage
-----------------

ad7380-4
~~~~~~~~

ad7380-4 supports only an external reference voltage (2.5V to 3.3V). It must be
declared in the device tree as ``refin-supply``.

All other devices from ad738x family
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

All other devices from ad738x support 2 possible reference voltage sources:

- Internal reference (2.5V)
- External reference (2.5V to 3.3V)

The source is determined by the device tree. If ``refio-supply`` is present,
then it is used as external reference, else the internal reference is used.

Oversampling and resolution boost
---------------------------------

This family supports 2 types of oversampling: normal average and rolling
average. Only normal average is supported by the driver, as rolling average can
be achieved by processing a captured data buffer. The following ratios are
available: 1 (oversampling disabled)/2/4/8/16/32.

When the on-chip oversampling function is enabled the performance of the ADC can
exceed the default resolution. To accommodate the performance boost achievable,
it is possible to enable an additional two bits of resolution. Because the
resolution boost feature can only be enabled when oversampling is enabled and
oversampling is not as useful without the resolution boost, the driver
automatically enables the resolution boost if and only if oversampling is
enabled.

Since the resolution boost feature causes 16-bit chips to now have 18-bit data
which means the storagebits has to change from 16 to 32 bits, we use the new
ext_scan_type feature to allow changing the scan_type at runtime. Unfortunately
libiio does not support it. So when enabling or disabling oversampling, user
must restart iiod using the following command:

.. code-block:: bash

	root:~# systemctl restart iiod

Channel selection and sequencer (single-end chips only)
-------------------------------------------------------

Single-ended chips of this family (ad7386/7/8(-4)) have a 2:1 multiplexer in
front of each ADC. They also include additional configuration registers that
allow for either manual selection or automatic switching (sequencer mode), of
the multiplexer inputs.

From an IIO point of view, all inputs are exported, i.e ad7386/7/8
export 4 channels and ad7386-4/7-4/8-4 export 8 channels.

Inputs ``AinX0`` of multiplexers correspond to the first half of IIO channels (i.e
0-1 or 0-3) and inputs ``AinX1`` correspond to second half (i.e 2-3 or 4-7).
Example for AD7386/7/8 (2 channels parts):

.. code-block::

	   IIO   | AD7386/7/8
	         |         +----------------------------
	         |         |     _____        ______
	         |         |    |     |      |      |
	voltage0 | AinA0 --|--->|     |      |      |
	         |         |    | mux |----->| ADCA |---
	voltage2 | AinA1 --|--->|     |      |      |
	         |         |    |_____|      |_____ |
	         |         |     _____        ______
	         |         |    |     |      |      |
	voltage1 | AinB0 --|--->|     |      |      |
	         |         |    | mux |----->| ADCB |---
	voltage3 | AinB1 --|--->|     |      |      |
	         |         |    |_____|      |______|
	         |         |
	         |         +----------------------------


When enabling sequencer mode, the effective sampling rate is divided by two.

Unimplemented features
----------------------

- 2/4 SDO lines
- Rolling average oversampling
- Power down mode
- CRC indication
- Alert


Device buffers
==============

This driver supports IIO triggered buffers.

See :doc:`iio_devbuf` for more information.
