Re: USB Serial Converter driver and multiple devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, May 14, 2012 at 06:14:14PM +0300, Olli Helin wrote:
> > > I recently got myself a 3G USB modem, which uses the usbserial driver.
> > > I have to give the usbserial module the vendor and product IDs as
> > > command line arguments for the driver to work with my modem.  
> > 
> > Stop right there.  Why do you need to do this?  You shouldn't, it should
> > "just work" without this.  What type of device is this, and what driver
> > are you adding the device id to (hint, it can't be the generic
> > usb-serial one, that is not for a "real" device, but only for testing.)  
> 
> It indeed is the generic usb-serial one.

Ick, that makes use of it very slow, as the generic usb-serial driver is
designed to be slow and not for real devices at all.

> The device in question is
> Telewell TW-3G HSPA+, and I'm loading usbserial with vendor=0x1c9e
> product=0x9801 to get it to work. It is a "traditional" 3G modem which
> is seen as a CD rom device first, and as a modem after modeswitch.
> However, it doesn't have usb_modeswitch rules readily available
> (that's why it does not "just work"), so I made one for myself. I know
> I should submit it to usb_modeswitch devs, however I haven't yet as
> using the usbserial driver for it seemed quite weird, and I started
> testing with a custom Gobi Serial driver first. With it everything
> seems to work fine. When using the usbserial driver, with my Ubuntu
> 10.04 and its older kernel (2.6.x) the system was frozen until I
> disconnected the modem. Using Gentoo with 3.x kernel, both usbserial
> and Gobi Serial work. The manufacturer says that it is a known problem
> "with older kernels and their usbserial module"; about more specific
> version numbers I have no clue.

That's really wierd, and I do not know of any such "known problems" at
all.  It would be nice if the vendors actually talked to the people
supporting and writing their drivers, now wouldn't it :(

> > > My 3G modem actually worked with the Gobi Serial (CodeAurora) driver
> > > after setting the device ID in the MODULE_DEVICE_TABLE, so I wouldn't
> > > have a problem right now even if I had another device using the
> > > usbserial driver directly. I also understand this would be a rare
> > > situation and hardly a practical problem, but I'm just asking.  
> > 
> > Care to send a patch that adds your device id to this driver so it will
> > work for everyone?  
> 
> I downloaded the Gobi Serial driver "template" from CodeAurora home
> page, added the product info USB_DEVICE( 0x1c9e, 0x9801 ), and added
> an include clause for compiling on Linux 3.x. So far no problems. What
> would be the correct module to patch in the Linux kernel then? I guess
> USB Qualcomm Serial modem, no?

No, try the option driver.  You can add the device id to the new_id
sysfs file for the driver and see if that works out properly.  If so,
create a patch following the information in the
Documentation/SubmittingPatches file and send it to us so I can apply
it.

> > And as for a solution, again, the generic usb-serial driver is not for a
> > real device, that is why it can accept only one device id through the
> > module parameters.  
> 
> I guess the hardware manufacturers have abused the ability to give
> modules parameters then, huh?

It looks like they have.

> They specifically instruct one to use the usbserial driver with the
> module parameters for their device. The information about using the
> Gobi Serial driver I only got after asking them what's the deal with
> using the generic usbserial driver.

Where online is this information?  And yes, it sounds completely
incorrect and wrong.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux