Skip to content

Commit 7399617

Browse files
committed
doc/configuration: document FTDI GPIO outputs
Document FTDIGPIO and NetworkFTDIGPIO resources for FTDI asynchronous bit-bang data-bus outputs. Signed-off-by: Ozan Durgut <ozan.durgut@analog.com>
1 parent 8a15633 commit 7399617

1 file changed

Lines changed: 59 additions & 0 deletions

File tree

doc/configuration.rst

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -575,6 +575,43 @@ Arguments:
575575
Used by:
576576
- `HIDRelayDriver`_
577577

578+
FTDIGPIO
579+
++++++++
580+
An :any:`FTDIGPIO` resource describes a single FTDI data-bus GPIO line.
581+
This uses FTDI bit-bang mode for the 8-bit data bus exposed by the selected
582+
interface, not CBUS ``ftdi-cbus`` gpiochips or EEPROM-configured ACBUS
583+
functions.
584+
585+
Supported devices are FT2232-style devices (``0403:6010``, interfaces 1..2),
586+
FT4232H (``0403:6011``, interfaces 1..4), and FT232H (``0403:6014``,
587+
interface 1). For each interface, ``index`` selects bit ``0`` to ``7`` on
588+
that interface's data bus.
589+
Writes use a read-modify-write cycle on the selected 8-bit interface to avoid
590+
changing unrelated bits managed by labgrid.
591+
592+
.. code-block:: yaml
593+
594+
FTDIGPIO:
595+
index: 0
596+
interface: 1
597+
invert: false
598+
match:
599+
ID_PATH: 'pci-0000:00:14.0-usb-0:2'
600+
601+
Arguments:
602+
- index (int): GPIO bit number to use, from ``0`` to ``7``
603+
- interface (int, default=1): FTDI interface/channel number to use
604+
- invert (bool, default=False): whether to invert the logical GPIO value
605+
- match (dict): key and value pairs for a udev match, see `udev Matching`_
606+
607+
Used by:
608+
- `FTDIGPIODriver`_
609+
610+
NetworkFTDIGPIO
611+
+++++++++++++++
612+
A :any:`NetworkFTDIGPIO` describes an `FTDIGPIO`_ resource available on a
613+
remote computer.
614+
578615
HttpDigitalOutput
579616
+++++++++++++++++
580617
An :any:`HttpDigitalOutput` resource describes a generic digital output that
@@ -2584,6 +2621,28 @@ Implements:
25842621
Arguments:
25852622
- None
25862623

2624+
FTDIGPIODriver
2625+
~~~~~~~~~~~~~~
2626+
The :any:`FTDIGPIODriver` controls one `FTDIGPIO`_ or `NetworkFTDIGPIO`_ line
2627+
via FTDI bit-bang GPIO output mode.
2628+
2629+
The FTDI serial kernel driver must not be bound to the same interface.
2630+
2631+
Binds to:
2632+
gpio:
2633+
- `FTDIGPIO`_
2634+
- `NetworkFTDIGPIO`_
2635+
2636+
Implements:
2637+
- :any:`DigitalOutputProtocol`
2638+
2639+
.. code-block:: yaml
2640+
2641+
FTDIGPIODriver: {}
2642+
2643+
Arguments:
2644+
- None
2645+
25872646
SerialPortDigitalOutputDriver
25882647
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25892648
The :any:`SerialPortDigitalOutputDriver` makes it possible to use a UART

0 commit comments

Comments
 (0)