Skip to content

Commit bd74278

Browse files
doc/configuration: update/fix driver bindings
Initially, all driver bindings were documented with their respective binding key. This wasn't documented consistently since then. Especially when using multiple instances of a single driver class, the bindings are needed to specify on which resource or other driver the driver should bind on. Until now, most binding keys had to be looked up in the source code. So improve this situation by fixing and adding binding keys as well as also adding all Remote/Network resource variants a driver is able to bind to. Signed-off-by: Bastian Krause <bst@pengutronix.de>
1 parent ae46e67 commit bd74278

1 file changed

Lines changed: 75 additions & 16 deletions

File tree

doc/configuration.rst

Lines changed: 75 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1531,7 +1531,7 @@ local usage and will not work with an exporter.
15311531
ModbusRTUDriver: {}
15321532
15331533
Binds to:
1534-
port:
1534+
resource:
15351535
- `ModbusRTU`_
15361536

15371537
Implements:
@@ -1692,7 +1692,8 @@ This driver needs the following features activated in U-Boot to work:
16921692
- The U-Boot must support the "bootm" command to boot from a memory location.
16931693

16941694
Binds to:
1695-
- :any:`ConsoleProtocol` (see `SerialDriver`_)
1695+
console:
1696+
- :any:`ConsoleProtocol` (see `SerialDriver`_)
16961697

16971698
Implements:
16981699
- :any:`CommandProtocol`
@@ -1743,6 +1744,9 @@ ExternalConsoleDriver
17431744
An ExternalConsoleDriver implements the `ConsoleProtocol` on top of a command
17441745
executed on the local computer.
17451746

1747+
Binds to:
1748+
- None
1749+
17461750
Implements:
17471751
- :any:`ConsoleProtocol`
17481752

@@ -1764,7 +1768,9 @@ network fastboot state.
17641768
Binds to:
17651769
fastboot:
17661770
- `AndroidUSBFastboot`_
1771+
- RemoteAndroidUSBFastboot
17671772
- `AndroidNetFastboot`_
1773+
- RemoteAndroidNetFastboot
17681774

17691775
Implements:
17701776
- None (yet)
@@ -1792,6 +1798,7 @@ Upgrade) mode.
17921798
Binds to:
17931799
dfu:
17941800
- `DFUDevice`_
1801+
- NetworkDFUDevice
17951802

17961803
Implements:
17971804
- None (yet)
@@ -1818,7 +1825,9 @@ Consider updating your OpenOCD version when using multiple USB Blasters.
18181825
Binds to:
18191826
interface:
18201827
- `AlteraUSBBlaster`_
1828+
- NetworkAlteraUSBBlaster
18211829
- `USBDebugger`_
1830+
- NetworkUSBDebugger
18221831

18231832
Implements:
18241833
- :any:`BootstrapProtocol`
@@ -1849,7 +1858,9 @@ A QuartusHPSDriver controls the "Quartus Prime Programmer and Tools" to flash
18491858
a target's QSPI.
18501859

18511860
Binds to:
1852-
- `AlteraUSBBlaster`_
1861+
interface:
1862+
- `AlteraUSBBlaster`_
1863+
- NetworkAlteraUSBBlaster
18531864

18541865
Implements:
18551866
- None
@@ -1868,6 +1879,9 @@ control is available.
18681879

18691880
The driver's name will be displayed during interaction.
18701881

1882+
Binds to:
1883+
- None
1884+
18711885
Implements:
18721886
- :any:`PowerProtocol`
18731887
- :any:`ResetProtocol`
@@ -1884,6 +1898,9 @@ ExternalPowerDriver
18841898
~~~~~~~~~~~~~~~~~~~
18851899
An ExternalPowerDriver is used to control a target power state via an external command.
18861900

1901+
Binds to:
1902+
- None
1903+
18871904
Implements:
18881905
- :any:`PowerProtocol`
18891906
- :any:`ResetProtocol`
@@ -1955,6 +1972,7 @@ target power state without user interaction.
19551972
Binds to:
19561973
port:
19571974
- `YKUSHPowerPort`_
1975+
- `NetworkYKUSHPowerPort`_
19581976

19591977
Implements:
19601978
- :any:`PowerProtocol`
@@ -1998,7 +2016,9 @@ A USBPowerDriver controls a `USBPowerPort`, allowing control of the target
19982016
power state without user interaction.
19992017

20002018
Binds to:
2001-
- `USBPowerPort`_
2019+
hub:
2020+
- `USBPowerPort`_
2021+
- NetworkUSBPowerPort
20022022

20032023
Implements:
20042024
- :any:`PowerProtocol`
@@ -2018,7 +2038,9 @@ A SiSPMPowerDriver controls a `SiSPMPowerPort`, allowing control of the target
20182038
power state without user interaction.
20192039

20202040
Binds to:
2021-
- `SiSPMPowerPort`_
2041+
port:
2042+
- `SiSPMPowerPort`_
2043+
- NetworkSiSPMPowerPort
20222044

20232045
Implements:
20242046
- :any:`PowerProtocol`
@@ -2038,7 +2060,8 @@ A TasmotaPowerDriver controls a `TasmotaPowerPort`, allowing the outlet to be
20382060
switched on and off.
20392061

20402062
Binds to:
2041-
- `TasmotaPowerPort`_
2063+
power:
2064+
- `TasmotaPowerPort`_
20422065

20432066
Implements:
20442067
- :any:`PowerProtocol`
@@ -2059,7 +2082,9 @@ This driver configures GPIO lines via `the sysfs kernel interface <https://www.k
20592082
While the driver automatically exports the GPIO, it does not configure it in any other way than as an output.
20602083

20612084
Binds to:
2062-
- `SysfsGPIO`_
2085+
gpio:
2086+
- `SysfsGPIO`_
2087+
- NetworkSysfsGPIO
20632088

20642089
Implements:
20652090
- :any:`DigitalOutputProtocol`
@@ -2079,6 +2104,10 @@ as a 1-Bit general-purpose digital output.
20792104
This driver acts on top of a SerialDriver and uses the its pyserial port to
20802105
control the flow control lines.
20812106

2107+
Binds to:
2108+
serial:
2109+
- `SerialDriver`_
2110+
20822111
Implements:
20832112
- :any:`DigitalOutputProtocol`
20842113

@@ -2109,6 +2138,9 @@ reading defaults to False.
21092138

21102139
A prime example for using this driver is Linux's sysfs.
21112140

2141+
Binds to:
2142+
- None
2143+
21122144
Implements:
21132145
- :any:`DigitalOutputProtocol`
21142146

@@ -2186,6 +2218,9 @@ A ManualSwitchDriver requires the user to control a switch or jumper on the
21862218
target. This can be used if a driver binds to a :any:`DigitalOutputProtocol`,
21872219
but no automatic control is available.
21882220

2221+
Binds to:
2222+
- None
2223+
21892224
Implements:
21902225
- :any:`DigitalOutputProtocol`
21912226

@@ -2205,6 +2240,7 @@ It can set and get the current state of the resource.
22052240
Binds to:
22062241
relais:
22072242
- `DeditecRelais8`_
2243+
- NetworkDeditecRelais8
22082244

22092245
Implements:
22102246
- :any:`DigitalOutputProtocol`
@@ -2254,6 +2290,8 @@ Binds to:
22542290
loader:
22552291
- `IMXUSBLoader`_
22562292
- `NetworkIMXUSBLoader`_
2293+
- `MXSUSBLoader`_
2294+
- `NetworkMXSUSBLoader`_
22572295

22582296
Implements:
22592297
- :any:`BootstrapProtocol`
@@ -2370,8 +2408,14 @@ A USBStorageDriver allows access to a USB stick or similar local or
23702408
remote device.
23712409

23722410
Binds to:
2373-
- `USBMassStorage`_
2374-
- `NetworkUSBMassStorage`_
2411+
storage:
2412+
- `USBMassStorage`_
2413+
- `NetworkUSBMassStorage`_
2414+
- `USBSDMuxDevice`_
2415+
- `NetworkUSBSDMuxDevice`_
2416+
- `USBSDWireDevice`_
2417+
- `NetworkUSBSDWireDevice`_
2418+
23752419

23762420
Implements:
23772421
- None (yet)
@@ -2538,8 +2582,8 @@ them during test runs.
25382582
Binds to:
25392583
sigrok:
25402584
- `SigrokUSBDevice`_
2541-
- `SigrokDevice`_
25422585
- `NetworkSigrokUSBDevice`_
2586+
- `SigrokDevice`_
25432587

25442588
Implements:
25452589
- None yet
@@ -2586,8 +2630,8 @@ It is known to work with Unit-T `UT61B` and `UT61C` devices but should also work
25862630
Binds to:
25872631
sigrok:
25882632
- `SigrokUSBDevice`_
2589-
- `SigrokUSBSerialDevice`_
25902633
- `NetworkSigrokUSBDevice`_
2634+
- `SigrokUSBSerialDevice`_
25912635
- NetworkSigrokUSBSerialDevice
25922636

25932637
Implements:
@@ -2616,6 +2660,11 @@ The :any:`USBSDMuxDriver` uses a USBSDMuxDevice resource to control a
26162660
USB-SD-Mux device via `usbsdmux <https://github.com/pengutronix/usbsdmux>`_
26172661
tool.
26182662

2663+
Binds to:
2664+
mux:
2665+
- `USBSDMuxDevice`_
2666+
- `NetworkUSBSDMuxDevice`_
2667+
26192668
Implements:
26202669
- None yet
26212670

@@ -2631,6 +2680,11 @@ The :any:`LXAUSBMuxDriver` uses a LXAUSBMux resource to control a USB-Mux
26312680
device via the `usbmuxctl <https://github.com/linux-automation/usbmuxctl>`_
26322681
tool.
26332682

2683+
Binds to:
2684+
mux:
2685+
- `LXAUSBMux`_
2686+
- `NetworkLXAUSBMux`
2687+
26342688
Implements:
26352689
- None yet
26362690

@@ -2647,6 +2701,11 @@ The :any:`USBSDWireDriver` uses a USBSDWireDevice resource to control a
26472701
USB-SD-Wire device via `sd-mux-ctrl <https://wiki.tizen.org/SD_MUX#Software>`_
26482702
tool.
26492703

2704+
Binds to:
2705+
mux:
2706+
- `USBSDWireDevice`_
2707+
- `NetworkUSBSDWireDevice`
2708+
26502709
Implements:
26512710
- None yet
26522711

@@ -2696,7 +2755,7 @@ On the receiver, it either uses ``gst-launch`` for simple playback or
26962755
complex cases (such as measuring the current volume level).
26972756

26982757
Binds to:
2699-
video:
2758+
res:
27002759
- `USBAudioInput`_
27012760
- `NetworkUSBAudioInput`_
27022761

@@ -2781,7 +2840,7 @@ a device.
27812840
foo: ../images/flash_device.sh
27822841
27832842
Binds to:
2784-
flashabledevice_resource:
2843+
device:
27852844
- `USBFlashableDevice`_
27862845
- `NetworkUSBFlashableDevice`_
27872846

@@ -2844,7 +2903,7 @@ The :any:`DediprogFlashDriver` is used to flash an SPI device using DediprogFlas
28442903
foo: ../images/image_to_load.raw
28452904
28462905
Binds to:
2847-
DediprogFlasher_resource:
2906+
flasher:
28482907
- `DediprogFlasher`_
28492908
- `NetworkDediprogFlasher`_
28502909

@@ -2983,8 +3042,8 @@ It supports:
29833042
Binds to:
29843043
iface:
29853044
- `NetworkInterface`_
2986-
- `USBNetworkInterface`_
29873045
- `RemoteNetworkInterface`_
3046+
- `USBNetworkInterface`_
29883047

29893048
Implements:
29903049
- None yet
@@ -3027,8 +3086,8 @@ This might change in the future.
30273086
Binds to:
30283087
iface:
30293088
- `NetworkInterface`_
3030-
- `USBNetworkInterface`_
30313089
- `RemoteNetworkInterface`_
3090+
- `USBNetworkInterface`_
30323091

30333092
Implements:
30343093
- None yet

0 commit comments

Comments
 (0)