I have a device I want a guest to see. I've configured the following:
% cat /etc/libvirt/HotPlug/owon.xml
<hostdev mode='subsystem' type='usb'>
<source>
<vendor id='0x5345'/>
<product id='0x1234'/>
</source>
</hostdev>
And then in udev:
% cat /etc/udev/rules.d/90-owon.rules
ACTION=="add", \
SUBSYSTEM=="usb", \
SYSFS{idVendor}=="5345", \
SYSFS{idProduct}=="1234", \
RUN+="/usr/bin/virsh attach-device XP_VM1 /etc/libvirt/HotPlug/owon.xml"
ACTION=="remove", \
SUBSYSTEM=="usb", \
SYSFS{idVendor}=="5345", \
SYSFS{idProduct}=="1234", \
RUN+="/usr/bin/virsh detach-device XP_VM1 /etc/libvirt/HotPlug/owon.xml"
Now this works; I plug the device in and the guest sees it.
The problem is that, each time, it shows up at a different address on
the guest's USB bus. And, Windows XP being Windows, this means it asks
to load a device driver each and every time (I've never understood why
Windows wants to load a new device driver just because you plug a device
into a different port).
Does anyone know of a way of adding a device so that it's at a known fixed
address inside the guest?
--
rgds
Stephen