History | View | Annotate | Download (59.8 kB)
usb-redir: Add support for migration
Signed-off-by: Hans de Goede <hdegoede@redhat.com>Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
usb-redir: Add chardev open / close debug logging
usb-redir: Revert usb-redir part of commit 93bfef4c
Commit 93bfef4c6e4b23caea9d51e1099d06433d8835a4 makes qemu-deviceswhich report the qemu version string to the guest in some way use aqemu_get_version function which reports a machine-specific version string....
usb-redir: Change cancelled packet code into a generic packet-id queue
usb-redir: Add an already_in_flight packet-id queue
After a live migration, the usb-hcd will re-queue all packets bywalking over the schedule in the guest memory again, but requests whichwere encountered on the migration source before will already be in flight,...
usb-redir: Store max_packet_size in endp_data
So that we've a place to migrate it to / from to allow restoring it aftermigration.
usb-redir: Don't delay handling of open events to a bottom half
There is no need for this, and doing so means that a backend trying towrite immediately after an open event will see qemu_chr_be_can_writereturning 0, which not all backends handle well as there is no wakeup...
usb-redir: Get rid of async-struct get member
This is a preparation patch for completely getting rid of the async-packetstruct in usb-redir, instead relying on the (new) per ep queues in theqemu usb core.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>...
usb-redir: Get rid of local shadow copy of packet headers
The shadow copy only serves as an extra check (besides the packet-id) toensure the packet we get back is a reply to the packet we think it is.
This check has never triggered in all the time usb-redir is in use now,...
usb-redir: Get rid of unused async-struct dev member
usb-redir: Move to core packet id and queue handling
usb-redir: Return babble when getting more bulk data then requested
Babble is the appropriate error in this case (rather then signalling a stall).
usb-redir: Convert to new libusbredirparser 0.5 API
This gives us support for 64 bit ids which is needed for using XHCI withthe new hcd generated ids.
usb-redir: Set ep max_packet_size if available
This is needed for usb-redir to work properly with the xhci emulation.
usb-redir: Add a usbredir_reject_device helper function
usb-redir: Ensure our peer has the necessary caps when redirecting to XHCI
In order for redirection to work properly when redirecting to an emulatedXHCI controller, the usb-redir-host must support bothusb_redir_cap_ep_info_max_packet_size and usb_redir_cap_64bits_ids,...
usb-redir: Enable pipelining for bulk endpoints
usb-redir: Never return USB_RET_NAK for async handled packets
USB_RET_NAK is not a valid response for async handled packets (and willtrigger an assert as such).
Also drop the warning when receiving a status of cancelled for packets notcancelled by qemu itself, this can happen when a device gets unredirected...
usb-redir: Correctly handle the usb_redir_babble usbredir status
Allow machines to configure the QEMU_VERSION that's exposed via hardware
QEMU exposes its version to the guest's hardware and in some cases that is wrong(e.g. Windows prints messages about driver updates when you switchthe QEMU version).There is a new field now on the struct QEmuMachine, hw_version, which may...
usb-redir: An interface count of 0 is a valid value
An interface-count of 0 happens when a device is in unconfigured state whenit gets redirected. So we should not use 0 to detect not having receivedinterface info from our peer.
usb-redir: Reset device address and speed on disconnect
Without this disconnected devices look like the last redirected devicein the monitor in "info usb".
usb-redir: Not finding an async urb id is not an error
We clear our pending async urb list on device disconnect and we may stillreceive "packet complete" packets from our peer after this, which will thenrefer to packet ids no longer in our list.
usb-redir: Notify our peer when we reject a device due to a speed mismatch
Also cleanup (reset) our device state when we reject a device due to aspeed mismatch.
Add bootindex support to usb-host and usb-redir
When passing through a usb pendrive seabios will present it in the F12boot menu and will happily boot from it.
This patch adds bootorder support so you can even make it the defaultboot device.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
usb: the big rename
Reorganize usb source files. Create a new hw/usb/ directory and moveall usb source code to that place. Also make filenames a bit moredescriptive. Host adapters are prefixed with "hch-" now, usb deviceemulations are prefixed with "dev-". Fixup paths Makefile and include...