When I use usb_add, I get:
USBDEVFS_DISCONNECT: Inappropriate ioctl for device
This is with snapshot from 2005-11-11, on Debian testing, kernel 2.6.13
(with 1000Hz timer).
The patch below fixes this (plainly taken from
http://www.mail-archive.com/linux-usb-devel@lists.sourceforge.net/msg35550.html
; is ifno = 0 correct?)
Thank you. I was not able to test this ioctl on my PC, hence the problem...
With this patch, qemu recognized all USB devices I had available - which
is actually only one device, a joystick :)
Win2k showed it in the control panel with all available buttons and axes
and reacted to events correctly.
Though, a strange thing is that as long as the device is attached to the
guest, Windows gets very slow. The Windows task manager shows that the
guest CPU load is at 100%; but "top" on the guest shows that qemu uses
only 20% host CPU. This starts as soon as usb_add is executed, and stops
as soon as usb_del is executed.
Does qemu use sleep in the usb code, or does maybe Windows sent the CPU
a HLT ? I don't really understand that behaviour :)
As mentionned in the documentation, the USB host emulation is very slow
in QEMU. The problem is that USB requests block the whole VM. I plan to
implement non blocking USB I/Os soon.
Fabrice.
_______________________________________________
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel