usbd config file parse behaviour
M. Warner Losh
imp at bsdimp.com
Tue Mar 30 00:46:24 PST 2004
In message: <20040330083607.GC32646 at cicely12.cicely.de>
Bernd Walter <ticso at cicely12.cicely.de> writes:
: On Mon, Mar 29, 2004 at 07:44:34PM -0700, M. Warner Losh wrote:
: > In message: <1080613926.1125.6.camel at dirk>
: > Sam Lawrance <samuel.lawrance at studentmail.newcastle.edu.au> writes:
: > : On Sun, 2004-03-28 at 20:47, Bernd Walter wrote:
: > : > On Sun, Mar 28, 2004 at 01:31:03AM -0700, M. Warner Losh wrote:
: > : > > Btw, any interest in making it possible to kldload a usb module and
: > : > > having device attach to it? Right now the usb code assumes that you
: > : > > can unplug the device and replug it back in. I have at least two
: > : > > devices on my laptop that can't be removed (bluetooth and memory stick
: > : > > reader), so I can't dynamically load drivers for them...
: > : >
: > : > I'll think about it.
: > : > Reprobing is not so much an issue as selecting an interface for it.
: > :
: > : would this done by filling in uhub_driver_added() to find a better
: > : driver match for a device and reattaching?
: >
: > Yes. Actually, it also requires some changes to newbus as well to
: > allow for rebidding of devices. And there's some minor resetting of
: > the device that likely needs to happen, but that's lower priority.
:
: Don't forget that we already have a driver for every USB device: ugen(4)
: We need a better trigger to reprobe drivers - thats the real problem.
No. That's not the real problem here. The real problem here is that
uhub doesn't implement the driver_added callback correctly. The ugen
issue, while interesting, can be overcome by not having ugen in the
kernel.
When ugen is in the kernel, we do need to do the rebid thing in
newbus, which we don't do, but there's little point in fixing one w/o
fixing the other.
Warner
More information about the freebsd-hackers
mailing list