Lines Matching refs:gadget
2 Linux USB gadget configured through configfs
18 A gadget is seen by its host as a set of configurations, each of which contains
19 a number of interfaces which, from the gadget's perspective, are known as
24 Creating a gadget means deciding what configurations there will be
31 It also describes how configfs integration into gadget is designed.
62 For each gadget to be created its corresponding directory must be created::
64 $ mkdir $CONFIGFS_HOME/usb_gadget/<gadget name>
76 Each gadget needs to have its vendor id <VID> and product id <PID> specified::
81 A gadget also needs its serial number, manufacturer and product strings.
96 Each gadget will consist of a number of configurations, their corresponding
126 The gadget will provide some functions, for each function its corresponding
143 Please refer to Documentation/ABI/testing/configfs-usb-gadget for more information.
164 5. Enabling the gadget
167 All the above steps serve the purpose of composing the gadget of
203 Such a gadget must be finally enabled so that the USB host can enumerate it.
205 In order to enable the gadget it must be bound to a UDC (USB Device
216 6. Disabling the gadget
275 Remove strings directories in the gadget::
283 and finally remove the gadget::
286 $ rmdir <gadget name>
361 1. A gadget has its config group, which has some attributes (idVendor,
370 gadget's UDC attribute is written to, which means binding the gadget
371 to the UDC. The code in drivers/usb/gadget/configfs.c iterates over
373 functions and binds them. This way the whole gadget is bound.
375 3. The file drivers/usb/gadget/configfs.c contains code for
377 - gadget's config_group
378 - gadget's default groups (configs, functions, strings)
383 in the functions implementation files drivers/usb/gadget/f_*.c.
390 after a gadget is disabled and torn down, the modules remain loaded.