diff options
Diffstat (limited to 'doc/driver-model/bind.rst')
-rw-r--r-- | doc/driver-model/bind.rst | 49 |
1 files changed, 49 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 |