- usb: virt_test_type = qemu no Host_RHEL.5 no Host_RHEL.6.1 restart_vm = yes kill_vm_on_error = yes usbs += " usbtest" usb_bus = "usbtest.0" # usb controllers variants: - uhci: usb_type_usbtest = piix3-usb-uhci usb_controller = uhci usb_max_port_usbtest = 2 drive_format_stg = "usb1" - ehci: usb_type_usbtest = ich9-usb-ehci1 usb_controller = ehci usb_max_port_usbtest = 6 drive_format_stg = "usb2" - xhci: no RHEL.3 no RHEL.4 no RHEL.5 no Host_RHEL.6 usb_type_usbtest = nec-usb-xhci usb_controller = xhci usb_max_port_usbtest = 4 drive_format_stg = "usb3" Host_RHEL: no Win2000, WinXP, Win2003, WinVista, Win7, Win2008 # usb toplogy variants: - without_usb_hub: - with_usb_hub: no usb_nodev usb_devices += " hub1" usb_type_hub1 = usb-hub usb_port_hub1 = "2" usb_port_testdev = "2.1" variants: - one_usb_dev: - max_usb_dev: only usb_boot, usb_reboot usb_devices += " d1 d2 d3 d4 d5 d6 d7" usb_port_d1 = "2.2" usb_port_d2 = "2.3" usb_port_d3 = "2.4" usb_port_d4 = "2.5" usb_port_d5 = "2.6" usb_port_d6 = "2.7" usb_port_d7 = "2.8" # usb devices variants: - @usb_nodev: only usb_storage, usb_host, usb_multi_disk - usb_kbd: only usb_boot, usb_reboot, usb_hotplug usb_type = "usb-kbd" info_usb_name = "QEMU USB Keyboard" vendor_id = "0627" product_id = "0001" vendor = "Adomax Technology Co., Ltd" product = "QEMU USB Keyboard" - usb_mouse: only usb_boot, usb_reboot, usb_hotplug usb_type = "usb-mouse" info_usb_name = "QEMU USB Mouse" vendor_id = "0627" product_id = "0001" vendor = "Adomax Technology Co., Ltd" product = "QEMU USB Mouse" - usb_tablet: only usb_boot, usb_reboot, usb_hotplug usb_type = "usb-tablet" info_usb_name = "QEMU USB Tablet" vendor_id = "0627" product_id = "0001" vendor = "Adomax Technology Co., Ltd" product = "QEMU USB Tablet" - usb_ccid: only usb_boot, usb_reboot, usb_hotplug usb_type = "usb-ccid" info_usb_name = "QEMU USB CCID" vendor_id = "08E6" product_id = "4433" vendor = "Gemplus" product = "QEMU USB CCID" - usb_audio: no Host_RHEL.6 no Host_RHEL.7 only usb_boot, usb_reboot, usb_hotplug usb_type = usb-audio info_usb_name = "QEMU USB Audio" vendor_id = "46F4" product_id = "0002" vendor = "" product = "QEMU USB Audio" - usb_hub: only usb_boot, usb_reboot, usb_hotplug usb_type = usb-hub info_usb_name = "QEMU USB Hub" vendor_id = "(0000|0409)" product_id = "(0000|55aa)" vendor = "" product = "QEMU USB Hub" # usb tests variants: - usb_boot: type = usb_basic_check usb_devices += " testdev" deviceid_str = "%s:%s" chk_usb_info_cmd = "lsusb -v" - usb_reboot: type = usb_basic_check reboot_method = shell usb_devices += " testdev" deviceid_str = "%s:%s" chk_usb_info_cmd = "lsusb -v" - usb_hotplug: #XXX: usb_hotplug uses some linux-only cmds. # And the pattern to verify device is pluged can't # work with guests older then RHEL5. no RHEL.3 no RHEL.4 no RHEL.5 type = usb_hotplug #XXX: Now usb_hotplug doesn't support QMP monitor. # Limit it to human monitor only. monitor_type = human monitors = hmp1 main_monitor = hmp1 usb_sleep_time = 1 Windows: usb_match_add = "VID_%s&PID_%s" usb_match_del = "" usb_clear_guest_log_cmd = "" usb_query_syslog_cmd = 'wmic path Win32_USBControllerDevice get Dependent | find "USB"' usb_sleep_time = 10 usb_udev_refresh_cmd = "" variants: - usb_normal_test: - usb_negative_test: only ehci only usb_hub only usb_default # Note: This is a workaround for the multifunction # code in qemu_vm module. usb_type_usbtest = usb-ehci usb_negative_test = "yes" usb_reply_msg = "Warning: speed mismatch trying to attach usb device" variants: - usb_one_time: usb_repeat_times = 1 - usb_multi_times: usb_repeat_times = 5000 - usb_storage: type = usb_storage images += " stg" image_boot_image1 = yes image_name_stg = "images/usbdevice" image_format_stg = "qcow2" image_boot_stg = no drive_index_stg = 1 create_image_stg = yes image_size_stg = 10M fdisk_string = "10 MB, 10485760 bytes" format_timeout = 400 check_serial_option = yes check_removable_option = yes check_io_size_option = yes # The following parameters will be overridden in guest-os config files. create_partition_cmd = "" format_cmd = "yes |mkfs $(readlink -f `ls /dev/disk/by-path/* | grep usb`)" list_disk_cmd = "" set_online_cmd = "" mount_cmd = "mount $(readlink -f `ls /dev/disk/by-path/* | grep usb`) /media" umount_cmd = "umount $(readlink -f `ls /dev/disk/by-path/* | grep usb`)" testfile_name = "/media/usb_storage-test.txt" writefile_cmd = "out=%s;" writefile_cmd += " python -c "print '$out'*10**4" > /tmp/usb_storage.in;" writefile_cmd += " for size in 4K 16K 64K 256K; do" writefile_cmd += " dd if=/tmp/usb_storage.in of=/media/out.$size bs=$size || exit 1;" writefile_cmd += " md5sum /media/out.$size > /media/out.$size.md5;" writefile_cmd += ' echo "md5sum -c /media/out.$size.md5 >/dev/null 2>&1" >> /media/md5chk.sh;' writefile_cmd += " done;" writefile_cmd += " echo $out > %s" readfile_cmd = "sh /media/md5chk.sh && cat %s" chk_usb_info_cmd = "lsusb -v" chk_usb_info_keyword = "Mass Storage,SCSI,QEMU USB HARDDRIVE" RHEL.3, RHEL.4, RHEL.5: check_io_size_option = no Windows: chk_usb_info_cmd = 'wmic path Win32_USBControllerDevice get Dependent | find "USB"' chk_usb_info_keyword = "USBSTOR,VEN_QEMU,PROD_QEMU_HARDDISK" check_serial_option = no check_removable_option = no check_io_size_option = no - usb_host: # must configure which device should be used #usb_host_device = ":" type = usb_host #XXX: Now usb_host doesn't support QMP monitor. # Limit it to human monitor only. monitor_type = human monitors = hmp1 main_monitor = hmp1 variants: - usb_normal_test: - usb_negative_test: usb_negative_test = "yes" usb_reply_msg = "Property 'usb-host.productid' doesn't take value" usb_host_device_list = "aaa:aaa,aaa:111,21231:11231333,21231:1123132233,2123133:1123132233111" - usb_check_isobufs: usb_check_isobufs = "yes" variants: - usb_one_time: usb_repeat_times = 1 - usb_multi_times: usb_repeat_times = 5000 - usb_multi_disk: only ehci type = multi_disk cmd_timeout = 1000 black_list = C: D: start_vm = no kill_vm = yes create_image = yes image_boot_image1 = yes usbs = usb1 # Override global config for the usb1. usb_type_usb1 = usb-ehci usb_type = usb-ehci usb_max_port_usb1 = 6 usb_max_port = 6 usb_devices = "" variants: - one_disk_repeat: images += " stg" image_format_stg = qcow2 image_name_stg = images/storage image_size_stg = 1G drive_format_stg = usb2 drive_index_stg = 1 image_boot_stg = no force_create_image_stg = yes remove_image_stg = yes n_repeat = 10 - max_disk: start_vm = no restart_vm = no usbs += " usb2 usb3 usb4" stg_image_num = 24 stg_image_size = 1G stg_image_boot = no stg_drive_format = usb2 stg_assign_index = yes force_create_image = yes force_create_image_image1 = no remove_image = yes remove_image_image1 = no cmd_timeout = 1000