Subject: Re: USB feedback wanted
To: None <tech-kern@NetBSD.ORG>
From: Alan Barrett <apb@iafrica.com>
List: tech-kern
Date: 07/02/1998 13:40:11
Jonathan Stone <jonathan@DSG.Stanford.EDU> said:A
> My take on this is that static, config-and-rebuild-the-kernel-
> and-reboot changes just don't cut it *for me* and in other environments.

Why do you think that the ability for other people to wire things down
takes anything away from you?  If you don't want to wire down your
locators, then you can simply wildcard your locators.

If you want to say

      usbroot* at pci?
      usbhub* at usbroot?
      usbhub* at usbhub? port ?
      usbdev* at usbhub? port ?

and let it automagically find all your devices regardless of where they are
plugged in, then go ahead and do that.

If other people want to say

     usbroot0 at pci?
     usbhub0 at usbroot0
     usbmonitor0 at usbhub0 port 0
     usbhub1 at usbhub0 port 1
     usbkeyboard0 at usbhub1 port 0
     usbmouse0 at usbhub1 port 1
     usbhub2 at usbhub1 port 2
     usbaudio0 at usbhub2 port 0
     usbaudio1 at usbhub2 port 1

and let it work iff the devices are all plugged in where the kernel
config file says that they are supposed to be plugged in, then those
other people should be allowed to do that.

You seem to be under the mistaken impression that the ability for other
people to do the latter somehow takes away your ability to do the
former.

> >Just because you don't want to use that particular function doesn't
> >mean that it's stupid.
>
> no, but it *IS* stupid to provide that as the only mechanism whereby
> USB busses *can* be configured and whereby locators can be specified.

"The only mechanism" doesn't imply "wildcards are not permitted".

> >You seem to be arguing that because you can't nail things down all
> >the way to the exact hardware device, or something, that it's not
> >good enough and therefore shouldn't be implemented.
>
> Almost.  NetBSD is supposed to "do things right".  USB Bus-topology
> works for you but it doesn't work for everyone, and it *DOES* break a
> more flexible, more general solution (which, of course, should also be
> able to "wire down" attachments in the way you'd like.)

No, using topology as part of the locator doesn't break prevent future
use of some kind of non-volatile and topology-independent device ID as
another part of the locator.  If such locators are supported in future,
you could say

    usbaudio0 at usbhub? port ? id "foobar"

and wire down the id part of the locator without wiring down the
topology part of the locator.

--apb (Alan Barrett)