diff options
author | Patrice Chotard <patrice.chotard@st.com> | 2020-07-28 09:13:35 +0200 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2020-08-22 07:58:39 -0600 |
commit | 02291d83fdaaf30e355eb7cef05581ec086962bd (patch) | |
tree | 7b58343da8db2a695c480c711b0bf7b880ecaa3c | |
parent | e37d4c4fd2c8b3db43faa4e36641b72a2c0ea69f (diff) |
doc: add bind/unbind command documentation
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>
Reviewed-by: Simon Glass <sjg@chromium.org>
-rw-r--r-- | doc/driver-model/bind.rst | 49 | ||||
-rw-r--r-- | doc/driver-model/index.rst | 1 |
2 files changed, 50 insertions, 0 deletions
diff --git a/doc/driver-model/bind.rst b/doc/driver-model/bind.rst new file mode 100644 index 0000000000..e3e9cb4d3c --- /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 +========================== + +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 f17c72ce69..c9faf0a591 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 |