Return to site

Embedded linux usb gadget pid and vid

broken image

The question you likely ask yourself is whether your machine has a UDC. It is exactly this case we will be talking about in this post. One way of implementing a USB device is to have a machine running Linux, equipped with a special piece of hardware called USB Device Controller (UDC), and appropriate software running on it. The bus is host-centric, which means that all the activities happening on it are decided and directed by the host. On a given USB bus there can be only one host and many (up to 127) devices. The purpose of USB is to extend the host with some functionalities provided by devices: be it a mass storage device, an Ethernet card on USB, a sound card or the like. In USB there are two distinct roles: a host and a device. In order to understand what is a USB gadget we need to have a look at a broader picture.

broken image

A look at how to implement USB gadget devices on Linux machines which have the necessary UDC hardware, automate the manual configfs process via declarative gadget 'schemes', and use systemd for gadget composition at boot time.

broken image