On Tue, Jan 30, 2007 at 11:07:35AM -0500, Alan Stern wrote:
> On Tue, 30 Jan 2007, Oleg Verych wrote:
> 
> > > > What if one-prupose device, like ti-usb-serial require its one operation
> > > > in different setup, and driver's author know it? I would like to have
> > > > such _option_, as device driver _have_ option to choose device it can
> > > > talk to -- ID tables.
> > > 
> > > You _do_ have the option -- you can call usb_driver_set_configuration().
> > > Alternatively, you can try to write a new USB device driver in place of 
> > > the "generic" one.  Or you can add special-case code to the 
> > > choose_configuration() routine in generic.c.
> > 
> > So, if i will quickly invent `wc' (working configuration ;) module
> > parameter for A driver, near vID:dID, i will not have any luck getting it
> > changed in USB-Core,
> 
> Getting _what_ changed in usbcore?  What does "it" refer to?  The 'wc' 
> module parameter?  The A driver?  The vID:dID?

USB configuration of the device, (USB interface) driver needs to
operate as USB interface driver, not semi-setup, semi-interface.

> >  before running USB interface specific stuff? There
> > must be Something pretty wrong.
> 
> I still don't understand your question.

I'm talking about 100% setting of the USB device, before it is bind or is
given to (USB interface) driver. Because (USB interface) driver, as you
described, is *only* an USB interface driver, and operates on the trunk
of the USB core. Changing configuration from that driver is impossible,
because trunk is going to be cut, and everything falls down. Yet you can
kick this driver from the userspace (USB core's crutch, made by father
;), just because USB core is so ugly, to ask device driver author, by
means of some module-parameter, callback function, static data in the
driver, about what particular configuration of an USB device is actual
for (USB interface) driver.

Am i expressing myself clearly? Is it so hard to understand?

Anyway, i'm finally going to propose a patch, maybe some lines of C is
better, than endless conversation between blind and deaf.

> It doesn't matter what you put in your USB interface driver -- put a 'wc'
> parameter, put a new function call, put a complete Emacs editor!  You can
> put in whatever you like, but none of it will do anything until your
> driver is loaded and bound to an interface, i.e., until usbcore runs the
> interface-specific stuff.  That's obvious.
> 
> Look, here's an analogy.  Suppose your computer had a special device which 
> could morph between being a floppy drive and a tape drive.  Suppose you 
> had written a driver for the tape drive version of this device.  You seem 
> to want the kernel to load your tape driver even when the device is in its 
> floppy state.  That isn't going to happen; when the kernel sees a floppy 
> device it will load a floppy driver, not a tape driver.
> 
> Alan Stern
> 


--
-o--=O`C
 #oo'L O
<___=E M

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to