All of lore.kernel.org
 help / color / mirror / Atom feed
From: George Dunlap <george.dunlap@eu.citrix.com>
To: Ian Jackson <Ian.Jackson@eu.citrix.com>,
	Fabio Fantoni <fabio.fantoni@m2r.biz>
Cc: anthony.perard@citrix.com, xen-devel@lists.xensource.com,
	Ian.Campbell@citrix.com, Stefano.Stabellini@eu.citrix.com
Subject: Re: [PATCH v7 1/2] libxl: usb2 and usb3 controller support for upstream qemu
Date: Tue, 3 Dec 2013 16:55:19 +0000	[thread overview]
Message-ID: <529E0CF7.6070607@eu.citrix.com> (raw)
In-Reply-To: <21150.1056.362650.91700@mariner.uk.xensource.com>

On 12/03/2013 04:17 PM, Ian Jackson wrote:
> Fabio Fantoni writes ("[PATCH v7 1/2] libxl: usb2 and usb3 controller support for upstream qemu"):
>> Usage: usbversion=1|2|3 (default=0, no usb controller defined)
>> Specifies the type of an emulated USB bus in the guest. 1 for usb1,
>> 2 for usb2 and 3 for usb3, it is available only with upstream qemu.
>> The old usb and usbdevice parameters cannot be used with this.
>>
>> Changes from v6:
>> - now usbversion cannot be used with usb and usbdevice parameters
>> - now default is 0 (no usb controller defined)
>> Will be used only with usb redirection (from spice client) and
>> new usb passthrough (from dom0) with hotplug.
> ...
>> +=item B<usbversion=NUMBER>
>> +
>> +Specifies the type of an emulated USB bus in the guest. 1 for usb1,
>> +2 for usb2 and 3 for usb3, it is available only with upstream qemu.
>> +The old usb and usbdevice parameters cannot be used with this.
>> +Default is 0 (no usb controller defined).
>> +
>
> I've reread the thread and I don't understand the backwards
> compatibility implications here.
>
> What is wrong with the usb and usbdevice parameters. ?
>
> The "usb" parameter was able to turn on, and off, usb support in trad
> qemu (and that was always usb1).  The previous default appears to be
> 0, i.e. off.  But if you said "usb=1" you would get usb1.  There
> doesn't seem to be anything in your patch that makes that work with
> qemu-upstream; instead you simply invent a totally new mechanism.
>
> Why do you describe the usbdevice parameter as "old" ?

usbdevice basically accepts a string to be passed as-is to the qemu 
command-line after "-usbdevice".  This argement is now deprecated in 
qemu; although supported in a backwards-compatible fashion (and thus 
still works with qemu-upstream), it doesn't (I infer from Fabio's 
description) work with usb2 and usb3.  This is a qemu limitation, not a 
Xen limitation.

The "new" way of specifying devices (USB or otherwise) is qdev (the 
documentation for which is cleverly hidden in a text file the qemu 
source tree).  qdev specification is available both from the 
command-line, and over qmp.

Going forward, I think the thing we want to do is take my "usb hotplug" 
series which didn't make it into 4.3 and have it replace the "usbdevice" 
interface.  We should make the mechanism for adding USB devices take the 
same path at boot as during hot-plug -- similar to the way PCI devices 
take the same basic paths whether specified in the config file at boot 
or done after the VM is running.

I think at the moment to get a usb2/3 device, you'd have to manually 
craft your own qdev parameter and specify it via the "device_model_args" 
config parameter.

  -George

  reply	other threads:[~2013-12-03 16:55 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-19 15:20 [PATCH v7 1/2] libxl: usb2 and usb3 controller support for upstream qemu Fabio Fantoni
2013-11-19 15:20 ` [PATCH v7 2/2] libxl: spice usbredirection " Fabio Fantoni
2013-12-03 17:13   ` Ian Jackson
2013-12-05 14:22     ` George Dunlap
2013-12-05 14:29       ` Ian Jackson
2013-12-05 14:32       ` Ian Campbell
2013-12-05 14:40         ` David Vrabel
2013-12-05 14:44           ` Ian Campbell
2013-12-05 14:44         ` George Dunlap
2013-12-05 14:48           ` Ian Campbell
2013-12-06 13:23     ` Ian Campbell
2013-12-03 16:17 ` [PATCH v7 1/2] libxl: usb2 and usb3 controller " Ian Jackson
2013-12-03 16:55   ` George Dunlap [this message]
2013-12-03 16:58     ` Ian Jackson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=529E0CF7.6070607@eu.citrix.com \
    --to=george.dunlap@eu.citrix.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=Ian.Jackson@eu.citrix.com \
    --cc=Stefano.Stabellini@eu.citrix.com \
    --cc=anthony.perard@citrix.com \
    --cc=fabio.fantoni@m2r.biz \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.