Re: usbserial option driver newid

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

 



On Wed, Mar 04, 2015 at 12:41:09PM -0500, Rick Farina wrote:
> 
> 
> On 03/04/15 12:34, Greg KH wrote:
> > On Wed, Mar 04, 2015 at 12:14:01PM -0500, Rick Farina wrote:
> >> Recently the Huawei e3276 devices my company was buying came with a new
> >> firmware version and the word "hilink" printed all over them.  Instead
> >> of showing up as a usbserial device using the option driver, they show
> >> up now as an ethernet device.  While I can see the convenience factor in
> >> this, it doesn't serve our purpose, so some quick googling showed me I
> >> can enable the serial again with usb_modeswitch and this line:
> >>
> >> 55534243123456780000000000000011062000000000000200000000000000
> >>
> >> When I do this, the usbid changes to 12d1:1566 and using the option
> >> driver works properly with the device.  The problem I have, is that we
> >> are currently using kernel 3.18 and it doesn't have that usbid for my
> >> device.  Things work properly when I run this:
> >>
> >> echo "12d1 1566" > /sys/bus/usb-serial/drivers/option1/new_id
> >>
> >> My problem is, I was hoping to find a better way to handle this than
> >> having to run a script to do this at boot.  I tried adding the vendor
> >> and product to usbserial using /etc/modprobe.d, however, this causes it
> >> to use the usbserial generic module instead of the option module and
> >> doesn't work.
> > 
> > No, use the option driver.
> > 
> >> Can anyone assist me in finding a proper solution instead of echoing to
> >> new_id on boot?
> > 
> > Make a patch to the driver, as you mention below :)
> > 
> >> Additionally, it would be nice to officially add this id to the option
> >> driver, it looks like it's not present at this time:
> >>
> >> https://git.kernel.org/cgit/linux/kernel/git/gregkh/usb.git/tree/drivers/usb/serial/option.c
> >>
> >> I can submit a patch to add it if desired, but right now it would be
> >> super helpful if I can make this work without a kernel patch.
> > 
> > A patch would be great, that way you get the fix for all future
> > releases, and we can backport it to all stable kernel releases.
> 
> I'm happy to do this, but a fix for systems without upgraded kernels
> would be helpful.

You have that with the script to write to the sysfs file.

> Currently I can hack at it through the modprobe.d install command, or a
> udev rule.  If anyone else has a good idea I'd love to hear it,
> otherwise once I get it working I'll submit a patch so others don't need
> such ugly hacks.

It's not a "ugly" hack, it's the documented way to do it.  Some distros
provide tools to do this for you at boot time, you might look into that.

And again, a kernel patch is the real way to fix it for everyone.

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