Re: USB Serial Converter driver and multiple devices

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


> > 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. 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.

> > 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?

> 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? 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.

> However, the new_id file in sysfs can accept multiple device ids, if you
> need to for testing.  

Nice to know, thanks.

Cheers,
Olli
--
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


B and H Foto and Electronics Corp.

[Linux Media]     [Video for Linux]     [Linux Input]     [Linux Audio Users]     [Photo]     [Yosemite News]    [Yosemite Photos]    [Free Online Dating]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]     [More Archives]

Add to Google Powered by Linux