[virt-tools-list] [PATCH 1/2] Add a menu entry for USB device selection

Daniel P. Berrange berrange at redhat.com
Mon Feb 6 13:45:18 UTC 2012


On Mon, Feb 06, 2012 at 12:25:33PM +0000, Daniel P. Berrange wrote:
> On Wed, Feb 01, 2012 at 02:28:23PM +0100, Hans de Goede wrote:
> > Signed-off-by: Hans de Goede <hdegoede at redhat.com>
> > ---
> >  configure.ac                    |    2 +-
> >  src/virt-viewer-app.c           |    9 +++++++++
> >  src/virt-viewer-app.h           |    3 +++
> >  src/virt-viewer-session-spice.c |   39 +++++++++++++++++++++++++++++++++++----
> >  src/virt-viewer-session.c       |   13 +++++++++++++
> >  src/virt-viewer-session.h       |    4 ++++
> >  src/virt-viewer-window.c        |    9 +++++++++
> >  src/virt-viewer.xml             |   10 ++++++++++
> >  8 files changed, 84 insertions(+), 5 deletions(-)
> 
> I tried to test this against a SPICE configured QEMU VM, but it
> doesn't seem to show any USB menu. Is there something special
> I need to build or configure in the guest QEMU side, to get the
> client to operate ?  (I had assumed it'd just do any QEMU guest
> with SPICE)

Turns out I needed to enable USB2:

    <controller type='usb' index='0' model='ich9-ehci1'>
      <alias name='usb0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x7' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <alias name='usb0'/>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <alias name='usb0'/>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x1' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <alias name='usb0'/>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x2' multifunction='on'/>
    </controller>

And add some redirection ports

    <redirdev bus='usb' type='spicevmc'>
      <alias name='redir0'/>
      <address type='usb' bus='0' port='3'/>
    </redirdev>
    <redirdev bus='usb' type='spicevmc'>
      <alias name='redir1'/>
      <address type='usb' bus='0' port='4'/>
    </redirdev>
    <redirdev bus='usb' type='spicevmc'>
      <alias name='redir2'/>
      <address type='usb' bus='0' port='5'/>
    </redirdev>
    <redirdev bus='usb' type='spicevmc'>
      <alias name='redir3'/>
      <address type='usb' bus='0' port='6'/>
    </redirdev>

With this done, I successfully (but accidentally) redirected my local
keyboard device to the guest.

I guess we need to produce some better text descriptions of each
device. 'lsusb' seems to be giving me better descriptions than
the ones virt-viewer does, so the info must be there somewhere.

Regardless, I have pushed these two patches

Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the virt-tools-list mailing list