On Tue, Jan 17, 2012 at 11:16:30PM +0100, Johan Hovold wrote: > On Mon, Jan 16, 2012 at 6:43 PM, Greg KH <greg@xxxxxxxxx> wrote: > > On Mon, Jan 16, 2012 at 12:36:49AM +0100, Johan Hovold wrote: > >> Use direct baud-rate commands rather than divisors to set and retrieve > >> the baud rate. > >> > >> Newer devices (e.g. cp2104) do not implement the divisor commands and > >> must use the direct baud-rate ones to change the baud rate. > >> > >> Signed-off-by: Johan Hovold <jhovold@xxxxxxxxx> > >> --- > >> drivers/usb/serial/cp210x.c | 17 ++++++++--------- > >> 1 files changed, 8 insertions(+), 9 deletions(-) > > > > Can I just take this one for the stable trees to get these devices to > > work properly for older kernels? > > Any application not using 115200 baud will work with just the above patch. The > problem is that the baud rate must be initialised on cp2104 and that the > device reports to be running at 115200 after power-on (in get_termios), so an > attempt to set the baud rate to 115200 results in a no-op (in set_termios). > > (Note that setting the baud rate to anything but 115200 and back again would > work.) > > An additional two-line patch, which unconditionally initialises the baud rate > in get_termios (called from open) will suffice. Let me know if you want me to > submit a minimal patch that could be back-ported (either on top of the above > one, or a combined one). Hm, no, I'll sift through this and figure it out, it shouldn't be hard to get this into the 3.0-stable trees. 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