Re: [stable] A patch in 2.6.27.9 caused device names to change

Dan Williams
2009-02-03T14:51:47Z

On Mon, 2009-02-02 at 16:05 -0800, Greg KH wrote:
> On Mon, Feb 02, 2009 at 05:02:38PM -0500, Chuck Ebbert wrote:
> > This patch:
> > http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git;a=blob_plain;f=releases/2.6.27.9/usb-option-add-pantech-cards.patch;hb=HEAD
> >
> > replaced my wireless adapter's /dev/ttyACM0 interface with three interfaces:
> > /dev/ttyUSB[012]
> >
> > That broke my ppp connection scripts. And I have to use /dev/ttyUSB1 to connect,
> > not USB0. Also it looks like Network Manager only knows how to use the first
> > interface in its auto-connect mode, so people using that also lost their
> > connections.
>
> Ugh, that sucks.
>
> That is what is also in upstream, so 2.6.29-rc also fails for you?
>
> Dan, what's with replacing working devices with the cdc-acm driver with
> option device ids? Is there some reason you did this?

For a long time we've been operating under the assumption that mobile
broadband devices should be driven by option and sierra, since those
drivers had the necessary buffering optimizations to support
higher-speed mobile broadband devices. That was true at least up until
2.6.24.

Furthermore, up until this point, I have not seen mobile broadband
adapters (that aren't cellphones connected via USB) that *are* CDC-ACM
compliant. Everything previously has advertised proprietary interfaces,
some of which are serial ports and some of which are not.

Most mobile broadband cards *do* have more than one TTY, the others are
used for additional control ports or proprietary access for stuff like
GPS and flashing the firmware.

Can we get the 'lsusb -v' output for this card? I'm quite curious how
many endpoints and interfaces the device actually has.

Plus, are we expected to keep device names stable these days? cdc-acm
is the catch-all driver, but if that driver is more "generic" and a
better driver is found, can we not update IDs just because the device
name may change?

Dan