
On 30.04.20 10:52, Patrice Chotard wrote:
Add documentation in doc/drivel-model for the bind/unbind command. Part of this documentation is extracted from original patch commit message: 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@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@st.com
+Binding/unbinding a driver +=========================
The title underline is too short.
Please, use 'make htmldocs' for testing.
Best regards
Heinrich
+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)
+usage:
+bind <node path> <driver> +bind <class> <index> <driver>
+unbind <node path> +unbind <class> <index> +unbind <class> <index> <driver>
+Where:
- <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.
+example:
+bind usb_dev_generic 0 usb_ether +unbind usb_dev_generic 0 usb_ether +or +unbind eth 1
+bind /ocp/omap_dwc3@48380000/usb@48390000 usb_ether +unbind /ocp/omap_dwc3@48380000/usb@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 debugging design ethernet