History | View | Annotate | Download (15.1 kB)
usb: convert to QEMU Object Model
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
usb-desc: USBEndpoint support
Initialize USBEndpoint structs from USBDesc* data.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
usb: add max_packet_size to USBEndpoint
usb: track configuration and interface count in USBDevice.
Move fields from USBHostDevice to USBDevice.Add bits to usb-desc.c to fill them for emulated devices too.Also allow to set configuration 0 (== None) for emulated devices.
usb: track altsetting in USBDevice
Also handle {GET,SET}_INTERFACE in common code (usb-desc.c).
usb-desc: audio endpoint support
Add support for audio endpoints which have two more fields in thedescriptor. Also add support for extra class specific endpointdescriptors.
Use glib memory allocation and free functions
qemu_malloc/qemu_free no longer exist after this commit.
usb: ignore USB_DT_DEBUG
usb: Add a speedmask to devices
This is used to indicate at which speed[s] the device can operate,so that this can be checked to match the ports capabilities when it getsattached to a bus.
Note that currently all usb1 emulated device claim to be fullspeed, this...
usb: remove fallback to bNumInterfaces if no .nif
All callers have been updated.
Signed-off-by: Brad Hards <bradh@frogmouth.net>Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
usb: add support for "grouped" interfaces and the Interface Association Descriptor
This is used for some devices that have multiple interfaces that form a logicdevice. An example is Video Class, which has a Control interface and aStreaming interface. There can be additional interfaces on the same (physical)...
usb: Pass the packet to the device's handle_control callback
This allows using the generic usb_generic_handle_packet function fromdevice code which does ASYNC control requests (such as the linux hostpass through code).
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
usb: add usb_desc_attach
Add usb_desc_attach() which sets up the device according to the speedthe usb port is able to handle. This function can be hooked into thehandle_attach callback.
usb: add device qualifier support
Add support for device_qualifier and other_speed_config descriptors.These are used to query the "other speed" configuration of usb 2.0devices, i.e. in high-speed mode they return the full-speedconfiguration and visa versa....
usb: move USB_REQ_SET_ADDRESS handling to common code
USB_REQ_SET_ADDRESS handling is identical in all emulated devices.Move it to common code.
usb: move USB_REQ_{GET,SET}_CONFIGURATION handling to common code
This patch adds fields to the USBDevice struct for the currentspeed (hard-wired to full speed for now) and current deviceconfiguration. Also a init function is added which inializesthese fields. This allows USB_REQ_{GET,SET}_CONFIGURATION...
usb: move remote wakeup handling to common code
This patch moves setting and clearing the remote_wakeup featurebit (via USB_REQ_{SET,CLEAR}_FEATURE) to common code. AlsoUSB_REQ_GET_STATUS handling is moved to common code.
usb: data structs and helpers for usb descriptors.
This patch adds hw/usb-desc.[ch] files. They carry data structuresfor various usb descriptors and helper functions to generate usbpackets from the structures.
The intention is to have a internal representation of the device...
usb descriptors: add settable strings.
This patch allows to set usb descriptor strings per device instance.