Merge branch 'target-arm.next' of git://git.linaro.org/people/pmaydell/qemu-arm
[qemu/opensuse.git] / docs / usb-storage.txt
blobe58e849d4d3a80368b6dc3cb1099cc899249fb5c
2 qemu usb storage emulation
3 --------------------------
5 QEMU has two emulations for usb storage devices.
7 Number one emulates the classic bulk-only transport protocol which is
8 used by 99% of the usb sticks on the marked today and is called
9 "usb-storage".  Usage (hooking up to xhci, other host controllers work
10 too):
12   qemu ${other_vm_args}                                \
13        -drive if=none,id=stick,file=/path/to/file.img  \
14        -device nec-usb-xhci,id=xhci                    \
15        -device usb-storage,bus=xhci.0,drive=stick
18 Number two is the newer usb attached scsi transport.  This one doesn't
19 automagically create a scsi disk, so you have to explicitly attach one
20 manually.  Multiple logical units are supported.  Here is an example
21 with tree logical units:
23   qemu ${other_vm_args}                                                \
24        -drive if=none,id=uas-disk1,file=/path/to/file1.img             \
25        -drive if=none,id=uas-disk2,file=/path/to/file2.img             \
26        -drive if=none,id=uas-cdrom,media=cdrom,file=/path/to/image.iso \
27        -device nec-usb-xhci,id=xhci                                    \
28        -device usb-uas,id=uas,bus=xhci.0                               \
29        -device scsi-hd,bus=uas.0,scsi-id=0,lun=0,drive=uas-disk1       \
30        -device scsi-hd,bus=uas.0,scsi-id=0,lun=1,drive=uas-disk2       \
31        -device scsi-cd,bus=uas.0,scsi-id=0,lun=5,drive=uas-cdrom
34 enjoy,
35   Gerd
38 Gerd Hoffmann <kraxel@redhat.com>