[PATCH v3 5/5] doc: add bind/unbind command documentation

Patrice Chotard patrice.chotard at st.com
Thu Apr 30 10:52:26 CEST 2020

Add documentation in doc/drivel-model for the bind/unbind command.
Part of this documentation is extracted from original patch commit
commit 49c752c93a78 ("cmd: Add bind/unbind commands to bind a device to a driver from the command line")

Signed-off-by: Patrice Chotard <patrice.chotard at st.com>


Changes in v3:
 - fix typo
 - add bind/unbind parameters description and how to find them

Changes in v2: None

 doc/driver-model/bind.rst  | 49 ++++++++++++++++++++++++++++++++++++++
 doc/driver-model/index.rst |  1 +
 2 files changed, 50 insertions(+)
 create mode 100644 doc/driver-model/bind.rst

diff --git a/doc/driver-model/bind.rst b/doc/driver-model/bind.rst
new file mode 100644
index 0000000000..dfe8fd57dd
--- /dev/null
+++ b/doc/driver-model/bind.rst
@@ -0,0 +1,49 @@
+.. SPDX-License-Identifier: GPL-2.0+
+.. sectionauthor:: Patrice Chotard <patrice.chotard at st.com>
+Binding/unbinding a driver
+This document aims to describe the bind and unbind commands.
+For debugging purpose, it should be useful to bind or unbind a driver from
+the U-boot command line.
+The unbind command calls the remove device driver callback and unbind the
+device from its driver.
+The bind command binds a device to its driver.
+In some cases it can be useful to be able to bind a device to a driver from
+the command line.
+The obvious example is for versatile devices such as USB gadget.
+Another use case is when the devices are not yet ready at startup and
+require some setup before the drivers are bound (ex: FPGA which bitsream is
+fetched from a mass storage or ethernet)
+bind <node path> <driver>
+bind <class> <index> <driver>
+unbind <node path>
+unbind <class> <index>
+unbind <class> <index> <driver>
+ - <node path> is the node's device tree path
+ - <class> is one of the class available in the list given by the "dm uclass"
+   command or first column of "dm tree" command.
+ - <index> is the index of the parent's node (second column of "dm tree" output).
+ - <driver> is the driver name to bind given by the "dm drivers" command or the by
+   the fourth column of "dm tree" output.
+bind usb_dev_generic 0 usb_ether
+unbind usb_dev_generic 0 usb_ether
+unbind eth 1
+bind /ocp/omap_dwc3 at 48380000/usb at 48390000 usb_ether
+unbind /ocp/omap_dwc3 at 48380000/usb at 48390000
diff --git a/doc/driver-model/index.rst b/doc/driver-model/index.rst
index b9df221627..37ef3721df 100644
--- a/doc/driver-model/index.rst
+++ b/doc/driver-model/index.rst
@@ -6,6 +6,7 @@ Driver Model
 .. toctree::
    :maxdepth: 2
+   bind

More information about the U-Boot mailing list