Hi Heinrich On 4/30/20 11:31 AM, Heinrich Schuchardt wrote: > 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.chot...@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.chot...@st.com> >> + >> +Binding/unbinding a driver >> +========================= > The title underline is too short. > > Please, use 'make htmldocs' for testing.
Thanks for the tips Patrice > > 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 >>