mirror of
https://github.com/torvalds/linux.git
synced 2024-11-22 04:02:20 +00:00
Documentation: Add AD4000 documentation
Reviewed-by: David Lechner <dlechner@baylibre.com> Signed-off-by: Marcelo Schmitt <marcelo.schmitt@analog.com> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Tested-by: David Lechner <dlechner@baylibre.com> Link: https://patch.msgid.link/aeee5fd9deccf85beadecf58c9b938b97a3aeba5.1720810545.git.marcelo.schmitt@analog.com Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This commit is contained in:
parent
938fd562b9
commit
dfcc937a00
131
Documentation/iio/ad4000.rst
Normal file
131
Documentation/iio/ad4000.rst
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
.. SPDX-License-Identifier: GPL-2.0-only
|
||||||
|
|
||||||
|
=============
|
||||||
|
AD4000 driver
|
||||||
|
=============
|
||||||
|
|
||||||
|
Device driver for Analog Devices Inc. AD4000 series of ADCs.
|
||||||
|
|
||||||
|
Supported devices
|
||||||
|
=================
|
||||||
|
|
||||||
|
* `AD4000 <https://www.analog.com/AD4000>`_
|
||||||
|
* `AD4001 <https://www.analog.com/AD4001>`_
|
||||||
|
* `AD4002 <https://www.analog.com/AD4002>`_
|
||||||
|
* `AD4003 <https://www.analog.com/AD4003>`_
|
||||||
|
* `AD4004 <https://www.analog.com/AD4004>`_
|
||||||
|
* `AD4005 <https://www.analog.com/AD4005>`_
|
||||||
|
* `AD4006 <https://www.analog.com/AD4006>`_
|
||||||
|
* `AD4007 <https://www.analog.com/AD4007>`_
|
||||||
|
* `AD4008 <https://www.analog.com/AD4008>`_
|
||||||
|
* `AD4010 <https://www.analog.com/AD4010>`_
|
||||||
|
* `AD4011 <https://www.analog.com/AD4011>`_
|
||||||
|
* `AD4020 <https://www.analog.com/AD4020>`_
|
||||||
|
* `AD4021 <https://www.analog.com/AD4021>`_
|
||||||
|
* `AD4022 <https://www.analog.com/AD4022>`_
|
||||||
|
* `ADAQ4001 <https://www.analog.com/ADAQ4001>`_
|
||||||
|
* `ADAQ4003 <https://www.analog.com/ADAQ4003>`_
|
||||||
|
|
||||||
|
Wiring connections
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Devices of the AD4000 series can be connected to the SPI host controller in a
|
||||||
|
few different modes.
|
||||||
|
|
||||||
|
CS mode, 3-wire turbo mode
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
Datasheet "3-wire" mode is what most resembles standard SPI connection which,
|
||||||
|
for these devices, comprises of connecting the controller CS line to device CNV
|
||||||
|
pin and other SPI lines as usual. This configuration is (misleadingly) called
|
||||||
|
"CS Mode, 3-Wire Turbo Mode" connection in datasheets.
|
||||||
|
NOTE: The datasheet definition of 3-wire mode for the AD4000 series is NOT the
|
||||||
|
same of standard spi-3wire mode.
|
||||||
|
This is the only connection mode that allows configuration register access but
|
||||||
|
it requires the SPI controller to support the ``SPI_MOSI_IDLE_HIGH`` feature.
|
||||||
|
|
||||||
|
Omit the ``adi,sdi-pin`` property in device tree to select this mode.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
+-------------+
|
||||||
|
+ ----------------------------------| SDO |
|
||||||
|
| | |
|
||||||
|
| +-------------------| CS |
|
||||||
|
| v | |
|
||||||
|
| +--------------------+ | HOST |
|
||||||
|
| | CNV | | |
|
||||||
|
+--->| SDI AD4000 SDO |-------->| SDI |
|
||||||
|
| SCK | | |
|
||||||
|
+--------------------+ | |
|
||||||
|
^ | |
|
||||||
|
+--------------------| SCLK |
|
||||||
|
+-------------+
|
||||||
|
|
||||||
|
CS mode, 3-wire, without busy indicator
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
Another wiring configuration supported as "3-wire" mode has the SDI pin
|
||||||
|
hard-wired to digital input/output interface supply (VIO). In this setup, the
|
||||||
|
controller is not required to support ``SPI_MOSI_IDLE_HIGH`` but register access
|
||||||
|
is not possible. This connection mode saves one wire and works with any SPI
|
||||||
|
controller.
|
||||||
|
|
||||||
|
Set the ``adi,sdi-pin`` device tree property to ``"high"`` to select this mode.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
+-------------+
|
||||||
|
+--------------------| CS |
|
||||||
|
v | |
|
||||||
|
VIO +--------------------+ | HOST |
|
||||||
|
| | CNV | | |
|
||||||
|
+--->| SDI AD4000 SDO |-------->| SDI |
|
||||||
|
| SCK | | |
|
||||||
|
+--------------------+ | |
|
||||||
|
^ | |
|
||||||
|
+--------------------| SCLK |
|
||||||
|
+-------------+
|
||||||
|
|
||||||
|
Alternatively, a GPIO may be connected to the device CNV pin. This is similar to
|
||||||
|
the previous wiring configuration but saves the use of a CS line.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
+-------------+
|
||||||
|
+--------------------| GPIO |
|
||||||
|
v | |
|
||||||
|
VIO +--------------------+ | HOST |
|
||||||
|
| | CNV | | |
|
||||||
|
+--->| SDI AD4000 SDO |-------->| SDI |
|
||||||
|
| SCK | | |
|
||||||
|
+--------------------+ | |
|
||||||
|
^ | |
|
||||||
|
+--------------------| SCLK |
|
||||||
|
+-------------+
|
||||||
|
|
||||||
|
CS mode, 4-wire without busy indicator
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
In datasheet "4-wire" mode, the controller CS line is connected to the ADC SDI
|
||||||
|
pin and a GPIO is connected to the ADC CNV pin. This connection mode may better
|
||||||
|
suit scenarios where multiple ADCs can share one CNV trigger.
|
||||||
|
|
||||||
|
Set ``adi,sdi-pin`` to ``"cs"`` to select this mode.
|
||||||
|
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
+-------------+
|
||||||
|
+ ----------------------------------| CS |
|
||||||
|
| | |
|
||||||
|
| +-------------------| GPIO |
|
||||||
|
| v | |
|
||||||
|
| +--------------------+ | HOST |
|
||||||
|
| | CNV | | |
|
||||||
|
+--->| SDI AD4000 SDO |-------->| SDI |
|
||||||
|
| SCK | | |
|
||||||
|
+--------------------+ | |
|
||||||
|
^ | |
|
||||||
|
+--------------------| SCLK |
|
||||||
|
+-------------+
|
@ -18,6 +18,7 @@ Industrial I/O Kernel Drivers
|
|||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
ad4000
|
||||||
ad4695
|
ad4695
|
||||||
ad7380
|
ad7380
|
||||||
ad7944
|
ad7944
|
||||||
|
@ -1220,6 +1220,7 @@ L: linux-iio@vger.kernel.org
|
|||||||
S: Supported
|
S: Supported
|
||||||
W: https://ez.analog.com/linux-software-drivers
|
W: https://ez.analog.com/linux-software-drivers
|
||||||
F: Documentation/devicetree/bindings/iio/adc/adi,ad4000.yaml
|
F: Documentation/devicetree/bindings/iio/adc/adi,ad4000.yaml
|
||||||
|
F: Documentation/iio/ad4000.rst
|
||||||
F: drivers/iio/adc/ad4000.c
|
F: drivers/iio/adc/ad4000.c
|
||||||
|
|
||||||
ANALOG DEVICES INC AD4130 DRIVER
|
ANALOG DEVICES INC AD4130 DRIVER
|
||||||
|
Loading…
Reference in New Issue
Block a user