u-boot/doc/driver-model/bind.rst
Patrice Chotard 02291d83fd 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 49c752c93a ("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>
2020-08-22 07:58:39 -06:00

49 lines
1.5 KiB
ReStructuredText

.. 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