On Fri, May 26, 2000, David Brownell <[EMAIL PROTECTED]> wrote:
> I think I'll like this patch ... :-)
> 
> One more thing:  the topology information in /proc/bus/usb/devices
> doesn't seem to be exposed through reasonable APIs.

Yeah. This is something I wanted to expose as well, but it was less than
trivial so I didn't do it in this patch.

> I'm wondering what you (and others) would think of adding a new mechanism
> to devfs, facilitating exposure of that and other things:  device-specific
> ioctls.  A hub device would use these to expose which devices connect to
> which ports.  Other devices might expose other information.
> 
> A general mechanism there would involve a new driver method (not just
> {,un}link_urb, probe/disconnect, also the ioctl) triggered somehow via
> the devfs calls.

Sure. This doesn't seem too complicated.

> Such a mechanism might also help address the locking issue that got
> some discussion earlier (where there's an impedence mismatch between
> the "interface claiming" mechanism and the need prevent arbitrary control
> requests going to devices that can't deal with them ... including the case
> of devices supporting multiple concurrent drivers (one per interface).

Well, this may be difficult to do. I had always envisioned doing this with
semaphores or something similar. Although that won't work for asynchronous
control requests (like HID). Sounds like we need a control queuing, which
is similar to the new bulk queuing option. This would sufficiently solve
this problem at the minimum of complexity.

> I've not yet drafted such an API proposal; I wanted some feedback on
> the notions there first.

I haven't spent much time determining how to expose topology information.
This would be required for one of the features I wanted to add to the
USB device manager.

One other thing I'd like to expose is an ioctl to reset a device via
usb_reset_device. This should be relatively easy.

JE


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to