[Spice-commits] Changes to 'usb.3'
Gerd Hoffmann
kraxel at kemper.freedesktop.org
Fri Dec 17 02:30:17 PST 2010
New branch 'usb.3' available with the following commits:
commit 4822a4f216e30636af7e084a10173e795c711d58
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Dec 10 11:43:35 2010 +0100
usb: add port property.
This allows to explictily set the physical port where you want to
plug the usb device. Example:
-device usb-tablet,bus=usb.0,port=2
With explicit port addressing qemu can and will not automagically add
USB Hubs. This means that:
(a) You can plug two devices of your choice into the two uhci
root ports.
(b) If you want plug in more that two devices you have to care
about adding a hub yourself.
Plugging a hub works this way:
-device usb-hub,bus=usb.0,port=1
Use this to add a device to the hub:
-device usb-tablet,bus=usb.0,port=1.1
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 35bedc0ddf601ee0f1db681fd9efcefa18fce67e
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Dec 10 11:37:45 2010 +0100
usb: keep track of physical port address.
Add a path string to USBPort. Add usb_port_location() function to set
the physical location of the usb port. Update all drivers implementing
usb ports to call it. Update the monitor commands to print it. Wind it
up in qdev.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 82a42046117ecbbcc2decf1e29919d7b986a3215
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu Dec 9 23:31:49 2010 +0100
usb storage: handle long responses
The scsi layer may return us more data than the guests wants to have.
Handle this by just ignoring the extra bytes and calling the
{read,write}_data callback to finish the request.
Seen happening in real life with some extended inquiry command.
With this patch applied the linux kernel stops reseting the device
once at boot.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit c6936956dd725d6d6667d60b7659d8a500a678e2
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu Dec 9 10:36:35 2010 +0100
usb storage: fix status reporting
Change usb_msd_send_status() to take a pointer to the status packet
instead of writing the status to s->usb_buf which might not point
to the correct location.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit ef9c86d255141c4f882fb51735146917916dc3e5
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Dec 3 17:12:49 2010 +0100
usb storage: high speed support
Add high speed support to the usb mass storage device. With this patch
applied the linux kernel recognises the usb storage device as highspeed
capable device and suggests to connect it to a highspeed port instead of
the uhci. Tested with both uhci and (not-yet submitted) ehci.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 455e0e48c10741265299ad8df67b609e0514989d
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Dec 8 17:35:22 2010 +0100
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.0
devices, i.e. in high-speed mode they return the full-speed
configuration and visa versa.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit f3ff71a7bc17907afa73f248ab85b20452283221
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Dec 3 18:07:20 2010 +0100
usb: add usb_desc_attach
Add usb_desc_attach() which sets up the device according to the speed
the usb port is able to handle. This function can be hooked into the
handle_attach callback.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 798c08c8a2f1349f3d894d4aa082596191b736ab
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Dec 3 17:59:36 2010 +0100
usb: add attach callback
Add handle_attach() callback to USBDeviceInfo which is called by the
generic package handler when the device is attached to the usb bus
(i.e. plugged into a port).
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit d799eeca448eb457641a44e1e671ed9449580fcc
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Dec 3 17:30:13 2010 +0100
usb: add speed mask to ports
Add a field to usb ports indicating the speed(s) they are
able to handle.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit aa5dff82e98c6b43e6de0d16bd06fc7f7114e839
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue Dec 14 16:46:40 2010 +0100
usb: hid: change serial number to "42".
It would be nice to have some way to signal our hid devices support
remote wakeup. There is a descriptor bit for that of course. Problem
with using is one is that older qemu versions used to set the bit even
though they did *not* support remote wakeup. Bummer.
This patch changes the serial number of our hid devices from "1" to "42"
to signal "it is safe to enable remote wakeup". The serial number was
choosen because it isn't used for anything and it is available in sysfs
so it is easy to match it using udev rules like this:
ACTION=="add", SUBSYSTEM=="usb", \
ATTR{product}=="QEMU USB Tablet", ATTR{serial}=="42", \
RUN+="usb_enable_autosuspend %p"
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 1c6389ba4b9e53df149215209391c4040f87fe6b
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Dec 1 11:50:04 2010 +0100
usb: hid: remote wakeup support.
Add usb_wakeup() call to the hid driver so remote wakeup actually works.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 874131c6bf01a85ce927456c89880cedc99c0cd2
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Dec 15 12:26:59 2010 +0100
usb: hub: remote wakeup support.
This patch makes the usb hub handle remote wakeup requests from devices
properly by updating the port status register and forwarding the wakeup
to the upstream port.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 1d2d9c1ccf1bab68e9363d1a0a62db8d30e50343
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Dec 1 11:47:40 2010 +0100
usb: uhci: remote wakeup support.
Add support for remote wakeup to the UHCI adapter.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit e8d3415c8d174d7164a763ea7a8daaf9706aebef
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Dec 1 11:32:45 2010 +0100
usb: add usb_wakeup() + wakeup callback to port ops
Add wakeup callback to port ops for remote wakeup handling.
Also add a usb_wakeup() function for devices which want
trigger a remote wakeup.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit bfecf2124f63b7387ff977b5739b3a0623c917c3
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Dec 1 11:27:05 2010 +0100
usb: rework attach/detach workflow
Add separate detach callback to USBPortOps, split
uhci/ohci/musb/usbhub attach functions into two.
Move common code to the usb_attach() function, only
the hardware-specific bits remain in the attach/detach
callbacks.
Keep track of the port it is attached to for each usb device.
[ v3: fix tyops in usb-musb.c ]
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 18848279de245c61f45cdbf695acec54efc26c87
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Dec 1 11:08:44 2010 +0100
usb: create USBPortOps, move attach there.
Create USBPortOps struct, move the attach function to that struct.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit cef49ad2fc67e58930dfc8b35cf88cf8197a1809
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Tue Nov 30 17:35:34 2010 +0100
usb: move remote wakeup handling to common code
This patch moves setting and clearing the remote_wakeup feature
bit (via USB_REQ_{SET,CLEAR}_FEATURE) to common code. Also
USB_REQ_GET_STATUS handling is moved to common code.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit f2ce5aa18dc5134f325d612a22126b54d219c0ec
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Nov 26 20:20:41 2010 +0100
usb: move USB_REQ_{GET,SET}_CONFIGURATION handling to common code
This patch adds fields to the USBDevice struct for the current
speed (hard-wired to full speed for now) and current device
configuration. Also a init function is added which inializes
these fields. This allows USB_REQ_{GET,SET}_CONFIGURATION
handling to be moved to common code.
For most drivers the conversion is trivial ad they support a single
configuration only anyway. One exception is bluetooth where some
device-specific setup code runs after get/set configuration. The
other is usb-net which actually has two configurations so the
the code to check for the active configuration has been adapted.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit a2f116bff4eb9ac779bf5d68444771c85108aeb1
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Nov 26 12:35:10 2010 +0100
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.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 5c05748b281adf6009ddb9e6f25387bc48c50f82
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Nov 26 10:25:06 2010 +0100
usb network: use new descriptor infrastructure.
Switch the usb network driver over to the
new descriptor infrastructure.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit d59d7033852f7203c44b78aa978f11777c2734f7
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Nov 26 12:26:17 2010 +0100
usb storage: serial number support
If a serial number is present for the drive fill it into the usb
serialnumber string descriptor.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit c6abbb02ea2b469bded56d4070bc7c436d82b42b
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Nov 26 12:25:32 2010 +0100
usb descriptors: add settable strings.
This patch allows to set usb descriptor strings per device instance.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit a366675fbb36f4a3a36224cc04db6871642ee203
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Nov 26 13:13:22 2010 +0100
usb hub: use new descriptor infrastructure.
Switch the usb hub driver over to the
new descriptor infrastructure.
It also removes the nr_ports variable and MAX_PORTS define and
introduces a NUM_PORTS define instead. The numver of ports was
(and still is) fixed at 8 anyway.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 2576ee885bf650226ab15c65a9896b6a3ea1f351
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu Nov 25 16:12:18 2010 +0100
usb bluetooth: use new descriptor infrastructure.
Switch the usb bluetooth driver over to the
new descriptor infrastructure.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 30ae4930ab4830f903dbe0ac76bcf520f73bb4e6
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu Nov 25 16:12:06 2010 +0100
usb wacom: use new descriptor infrastructure.
Switch the usb wavom driver over to the
new descriptor infrastructure.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 3417868088126b4137e50305cae1257f5482ee2f
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Nov 17 11:05:41 2010 +0100
usb storage: use new descriptor infrastructure.
Switch the usb storage driver over to the
new descriptor infrastructure.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 34426930feea73378506e4feeb31a25b728674e6
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Nov 17 11:05:32 2010 +0100
usb serial: use new descriptor infrastructure.
Switch the usb serial drivers (serial, braille) over to the
new descriptor infrastructure.
Note that this removes the freely configurable vendor and product id
properties. I think the only reason this was configurable is that the
only difference between the serial and the braille device is the
vendor+product id. Of course the serial and braille devices keep their
different IDs, but they can't be overritten from the command line any
more.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 0442a3521c2690a043e0d5efbabb517206eadaad
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Nov 17 11:05:05 2010 +0100
usb hid: use new descriptor infrastructure.
Switch the usb hid drivers (keyboard, mouse, tablet) over to the
new descriptor infrastructure.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 8bd147ba456bba0e67f456ee839c134fe171ca91
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Nov 17 11:03:53 2010 +0100
usb: data structs and helpers for usb descriptors.
This patch adds hw/usb-desc.[ch] files. They carry data structures
for various usb descriptors and helper functions to generate usb
packets from the structures.
The intention is to have a internal representation of the device
desription which is more usable than the current char array blobs,
so we can have common code handle common usb device emulation using
the device description.
The usage of this infrastructure is optional for usb drivers as there
are cases such as pass-through where it probably isn't very useful.
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 7e9db3d40c605949083e8cb43698786894541def
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Dec 17 11:11:25 2010 +0100
usb: update MAINTAINERS
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
More information about the Spice-commits
mailing list