mirror of
https://github.com/izzy2lost/xemu.git
synced 2026-07-06 00:20:22 -07:00
Merge tag 'kraxel-20220719-pull-request' of https://gitlab.com/kraxel/qemu into staging
ui: dbus-display fix, new gtk config options. usb: xhci fix, doc updates. microvm: no pcie io reservations. # gpg: Signature made Tue 19 Jul 2022 16:21:06 BST # gpg: using RSA key A0328CFFB93A17A79901FE7D4CB6D8EED3E87138 # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" [full] # gpg: aka "Gerd Hoffmann <gerd@kraxel.org>" [full] # gpg: aka "Gerd Hoffmann (private) <kraxel@gmail.com>" [full] # Primary key fingerprint: A032 8CFF B93A 17A7 9901 FE7D 4CB6 D8EE D3E8 7138 * tag 'kraxel-20220719-pull-request' of https://gitlab.com/kraxel/qemu: gtk: Add show_tabs=on|off command line option. usb: document pcap (aka usb traffic capture) usb: document guest-reset and guest-reset-all usb/hcd-xhci: check slotid in xhci_wakeup_endpoint() microvm: turn off io reservations for pcie root ports dbus-display: fix test race when initializing p2p connection Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
@@ -353,3 +353,44 @@ and also assign it to the correct USB bus in QEMU like this:
|
||||
-device usb-ehci,id=ehci \\
|
||||
-device usb-host,bus=usb-bus.0,hostbus=3,hostport=1 \\
|
||||
-device usb-host,bus=ehci.0,hostbus=1,hostport=1
|
||||
|
||||
``usb-host`` properties for reset behavior
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The ``guest-reset`` and ``guest-reset-all`` properties control
|
||||
whenever the guest is allowed to reset the physical usb device on the
|
||||
host. There are three cases:
|
||||
|
||||
``guest-reset=false``
|
||||
The guest is not allowed to reset the (physical) usb device.
|
||||
|
||||
``guest-reset=true,guest-resets-all=false``
|
||||
The guest is allowed to reset the device when it is not yet
|
||||
initialized (aka no usb bus address assigned). Usually this results
|
||||
in one guest reset being allowed. This is the default behavior.
|
||||
|
||||
``guest-reset=true,guest-resets-all=true``
|
||||
The guest is allowed to reset the device as it pleases.
|
||||
|
||||
The reason for this existing are broken usb devices. In theory one
|
||||
should be able to reset (and re-initialize) usb devices at any time.
|
||||
In practice that may result in shitty usb device firmware crashing and
|
||||
the device not responding any more until you power-cycle (aka un-plug
|
||||
and re-plug) it.
|
||||
|
||||
What works best pretty much depends on the behavior of the specific
|
||||
usb device at hand, so it's a trial-and-error game. If the default
|
||||
doesn't work, try another option and see whenever the situation
|
||||
improves.
|
||||
|
||||
record usb transfers
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
All usb devices have support for recording the usb traffic. This can
|
||||
be enabled using the ``pcap=<file>`` property, for example:
|
||||
|
||||
``-device usb-mouse,pcap=mouse.pcap``
|
||||
|
||||
The pcap files are compatible with the linux kernels usbmon. Many
|
||||
tools, including ``wireshark``, can decode and inspect these trace
|
||||
files.
|
||||
|
||||
Reference in New Issue
Block a user