Commit 41edd08b authored by Uwe Kleine-König's avatar Uwe Kleine-König Committed by Greg Kroah-Hartman
Browse files

docs: usb: gadget: Reindent numbered list



Paragraphs that are part of a numbered list must be indented to render
correctly in html. Do that right here. There are only whitespace changes
in this patch.

Signed-off-by: default avatarUwe Kleine-König <u.kleine-koenig@baylibre.com>
Reviewed-by: default avatarBagas Sanjaya <bagasdotme@gmail.com>
Link: https://lore.kernel.org/r/20250607224747.3653041-2-u.kleine-koenig@baylibre.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 783e15dd
Loading
Loading
Loading
Loading
+17 −18
Original line number Diff line number Diff line
@@ -370,17 +370,17 @@ The concepts described above translate to USB gadgets like this:

1. A gadget has its config group, which has some attributes (idVendor,
   idProduct etc) and default sub-groups (configs, functions, strings).
Writing to the attributes causes the information to be stored in
appropriate locations. In the configs, functions and strings sub-groups
a user can create their sub-groups to represent configurations, functions,
and groups of strings in a given language.
   Writing to the attributes causes the information to be stored in appropriate
   locations. In the configs, functions and strings sub-groups a user can
   create their sub-groups to represent configurations, functions, and groups
   of strings in a given language.

2. The user creates configurations and functions, in the configurations
   creates symbolic links to functions. This information is used when the
gadget's UDC attribute is written to, which means binding the gadget
to the UDC. The code in drivers/usb/gadget/configfs.c iterates over
all configurations, and in each configuration it iterates over all
functions and binds them. This way the whole gadget is bound.
   gadget's UDC attribute is written to, which means binding the gadget to the
   UDC. The code in drivers/usb/gadget/configfs.c iterates over all
   configurations, and in each configuration it iterates over all functions and
   binds them. This way the whole gadget is bound.

3. The file drivers/usb/gadget/configfs.c contains code for

@@ -388,13 +388,12 @@ functions and binds them. This way the whole gadget is bound.
	- gadget's default groups (configs, functions, strings)
	- associating functions with configurations (symlinks)

4. Each USB function naturally has its own view of what it wants
configured, so config_groups for particular functions are defined
in the functions implementation files drivers/usb/gadget/f_*.c.
4. Each USB function naturally has its own view of what it wants configured, so
   config_groups for particular functions are defined in the functions
   implementation files drivers/usb/gadget/f_*.c.

5. Function's code is written in such a way that it uses

usb_get_function_instance(), which, in turn, calls request_module.
So, provided that modprobe works, modules for particular functions
are loaded automatically. Please note that the converse is not true:
after a gadget is disabled and torn down, the modules remain loaded.
   usb_get_function_instance(), which, in turn, calls request_module.  So,
   provided that modprobe works, modules for particular functions are loaded
   automatically. Please note that the converse is not true: after a gadget is
   disabled and torn down, the modules remain loaded.