On 03/03/2015 11:10 AM, Ian Campbell wrote:
> On Mon, 2015-01-19 at 16:28 +0800, Chunyan Liu wrote:
> 
> Sorry for the long delay in replying.
> 
>> To attach a usb device, a virtual usb controller should be created first.
>> This patch defines usbctrl and usbdevice related structs.
> 
> Per <54ca17df0200006600095...@relay2.provo.novell.com> please could you
> mention here that the HVM guest related parts (i.e.
> LIBXL_USBCTRL_TYPE_DEVICEMODEL) and libxl_usb_type are placeholders for
> emulated HVM support.
> 
> In fact I wonder if it should just be omitted, we will need a LIBXL_HAVE
> for HVM USB support anyway once it is implemented so we can add the enum
> then.
> 
> Or will we -- do we think returning an error for such an HVM guest with
> USB devices configured now is acceptable and for it to silently start
> working at some point in the future is OK?

I think that was my idea back when I was writing the HVM hotplug patches.

> 
>>
>> Signed-off-by: Chunyan Liu <cy...@suse.com>
>> Signed-off-by: Simon Cao <caobosi...@gmail.com>
>> ---
>>  tools/libxl/libxl_types.idl          | 58 
>> +++++++++++++++++++++++++++++++++++-
>>  tools/libxl/libxl_types_internal.idl |  1 +
>>  2 files changed, 58 insertions(+), 1 deletion(-)
>>
>> diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
>> index 1214d2e..0639434 100644
>> --- a/tools/libxl/libxl_types.idl
>> +++ b/tools/libxl/libxl_types.idl
>> @@ -521,6 +531,27 @@ libxl_device_pci = Struct("device_pci", [
>>      ("seize", bool),
>>      ])
>>  
>> +libxl_device_usbctrl = Struct("device_usbctrl", [
>> +    ("name", string),
>> +    ("type", libxl_usbctrl_type),
>> +    ("backend_domid", libxl_domid),
>> +    ("backend_domname", string),
>> +    ("devid", libxl_devid),
>> +    ("usb_version", uint8),
>> +    ("num_ports", uint8),
> 
> I think int would be fine for both of these last two (and is a bit
> kinder to language bindings).
> 
>> +    ])
>> +
>> +libxl_device_usb = Struct("device_usb", [
>> +    ("ctrl", integer),
> 
> Is this an index into something? If so what?
> 
> There seems to be no usbctrl array added to the domain_config struct, so
> I'm unsure how this is used.

It looks like this is meant to specify which USB controller you're
plugging your device into; and if you set it to -1, then it will
automatically try to plug it into the best one (and also automatically
create one for you if one doesn't exist).

This should probably be a libxl_devid I'm guessing, then?

 -George


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to