[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH RFC V2 1/5] libxl: add pvusb definitions
To attach a usb device, a virtual usb controller should be created first. This patch defines usbctrl and usbdevice related structs. Signed-off-by: Chunyan Liu <cyliu@xxxxxxxx> Signed-off-by: Simon Cao <caobosimon@xxxxxxxxx> --- 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 @@ -111,6 +111,16 @@ libxl_nic_type = Enumeration("nic_type", [ (2, "VIF"), ]) +libxl_usbctrl_type = Enumeration("usbctrl_type",[ + (0, "AUTO"), + (1, "PV"), + (2, "DEVICEMODEL"), + ]) + +libxl_usb_type = Enumeration("device_usb_type", [ + (1, "HOSTDEV"), + ]) + libxl_action_on_shutdown = Enumeration("action_on_shutdown", [ (1, "DESTROY"), @@ -394,7 +404,7 @@ libxl_domain_build_info = Struct("domain_build_info",[ ("ioports", Array(libxl_ioport_range, "num_ioports")), ("irqs", Array(uint32, "num_irqs")), ("iomem", Array(libxl_iomem_range, "num_iomem")), - ("claim_mode", libxl_defbool), + ("claim_mode", libxl_defbool), ("event_channels", uint32), ("kernel", string), ("cmdline", string), @@ -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), + ]) + +libxl_device_usb = Struct("device_usb", [ + ("ctrl", integer), + ("port", integer), + ("intf", string), + ("u", KeyedUnion(None, libxl_usb_type, "type", + [("hostdev", Struct(None, [ + ("hostbus", integer), + ("hostaddr", integer) ])) + ])) + ]) + libxl_device_vtpm = Struct("device_vtpm", [ ("backend_domid", libxl_domid), ("backend_domname", string), @@ -547,6 +578,7 @@ libxl_domain_config = Struct("domain_config", [ ("disks", Array(libxl_device_disk, "num_disks")), ("nics", Array(libxl_device_nic, "num_nics")), ("pcidevs", Array(libxl_device_pci, "num_pcidevs")), + ("usbs", Array(libxl_device_usb, "num_usbs")), ("vfbs", Array(libxl_device_vfb, "num_vfbs")), ("vkbs", Array(libxl_device_vkb, "num_vkbs")), ("vtpms", Array(libxl_device_vtpm, "num_vtpms")), @@ -595,6 +627,30 @@ libxl_vtpminfo = Struct("vtpminfo", [ ("uuid", libxl_uuid), ], dir=DIR_OUT) +libxl_usbctrlinfo = Struct("usbctrlinfo", [ + ("backend", string), + ("backend_id", uint32), + ("frontend", string), + ("frontend_id", uint32), + ("devid", libxl_devid), + ("state", integer), + ("evtch", integer), + ("version", integer), + ("type", string), + ("ref_urb", integer), + ("ref_conn", integer), + ("num_ports", integer), + ], dir=DIR_OUT) + +libxl_usbinfo = Struct("usbinfo", [ + ("bus", integer), + ("devnum", integer), + ("idVendor", integer), + ("idProduct", integer), + ("prod", string), + ("manuf", string), + ], dir=DIR_OUT) + libxl_vcpuinfo = Struct("vcpuinfo", [ ("vcpuid", uint32), ("cpu", uint32), diff --git a/tools/libxl/libxl_types_internal.idl b/tools/libxl/libxl_types_internal.idl index 5e55685..696f5f8 100644 --- a/tools/libxl/libxl_types_internal.idl +++ b/tools/libxl/libxl_types_internal.idl @@ -22,6 +22,7 @@ libxl__device_kind = Enumeration("device_kind", [ (6, "VKBD"), (7, "CONSOLE"), (8, "VTPM"), + (9, "VUSB"), ]) libxl__console_backend = Enumeration("console_backend", [ -- 1.8.4.5 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |