[libvirt] USB2 controllers & domain XML

Marc-André Lureau marcandre.lureau at gmail.com
Fri Aug 19 13:13:14 UTC 2011


Hi

On Thu, Aug 18, 2011 at 9:42 PM, Daniel P. Berrange <berrange at redhat.com> wrote:
>  5. USB companion controllers use type='usb' too, but with an
>     extra 'master' attribute to associate them
>
>
>       <controller type='usb' index='0' model='ich9-ehci'>
>         <address type='pci' domain='0' bus='0' slot='4' function='7'/>
>       </controller>
>       <controller type='usb' index='0' model='ich9-ehci1'>
>         <master startport='0'/>
>         <address type='pci' domain='0' bus='0' slot='4' function='1'/>
>       </controller>
>       <controller type='usb' index='0' model='ich9-uhci2'>
>         <master startport='2'/>
>         <address type='pci' domain='0' bus='0' slot='4' function='2'/>
>       </controller>
>       <controller type='usb' index='0' model='ich9-uhci3'>
>         <master startport='4'/>
>         <address type='pci' domain='0' bus='0' slot='4' function='2'/>
>       </controller>
>

Does each companion controller has it's own bus?

I guess the bus id is defined with the device id property in qemu. So
if all controller have index='0', should the id be prefixed with
echi-, uhci1-, uchi2- etc.. or should it use the same usb%d namespace.
Having a prefix would mean that USB devices have to specify the
correct bus name, which is probably not what we want. So using common
"usb" prefix seems more convenient.

And I think <master> is missing a 'bus' attribute.

Would this XML be more suitable?

      <controller type='usb' index='0' model='ich9-ehci1'>
        <address type='pci' domain='0' bus='0' slot='4' function='7'/>
      </controller>
      <controller type='usb' index='1' model='ich9-uhci1'>
        <master bus='0' startport='0'/>
        <address type='pci' domain='0' bus='0' slot='4' function='0'/>
      </controller>
      <controller type='usb' index='2' model='ich9-uhci2'>
        <master bus='0' startport='2'/>
        <address type='pci' domain='0' bus='0' slot='4' function='1'/>
      </controller>
      <controller type='usb' index='3' model='ich9-uhci3'>
        <master bus='0' startport='4'/>
        <address type='pci' domain='0' bus='0' slot='4' function='2'/>
      </controller>

regards

-- 
Marc-André Lureau




More information about the libvir-list mailing list