Re: Multiple USB Endpoints

Chris Frey <[email protected]>
Newsgroups gmane.linux.usb.devel,gmane.comp.handhelds.blackberry.barry.devel
Message-ID <[email protected]>
On Thu, Nov 22, 2007 at 09:47:04PM -0500, Alan Stern wrote:
> You are mixing up "configuration" and "interface".  I think you mean 
> "interface" here (configurations don't have classes but interfaces do).

Oops, yes, I had those reversed.


> > The problem is that usb_storage sees the Mass Storage configuration,
> > and uses it.  When Barry wants to use the Database configuration,
> > there's a conflict.
> 
> What's the conflict?

When a Blackberry Pearl is plugged in, showing product ID 0004, and
while the usb_storage module is loaded, I get the following error
when trying to set the configuration:

Usb::Error caught: (-16, could not set config 1: Device or resource busy): Probe: SetConfiguration failed

The normal sequence of events is a scan for Blackberry devices using
libusb information calls (usb_find_*()), then a call to usb_open(),
usb_set_configuration(), then usb_claim_interface() on the interface
with class 255.


> You say the set_configuration call returns an error?  Have you tried
> turning on the usbfs_snoop parameter for the usbcore module to see what
> shows up in the kernel log?  Have you verified that the configuration
> you're trying to install actually exists?

I know the configuration exists, since the same code works when
the usb_storage module is not loaded.

I've always assumed that this conflict is a fundamental issue when
two programs try to access the same USB device (even if one is a kernel
module).  If I'm wrong, I'd love for someone to show me how to do
it right.

- Chris


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.