Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

USB: pl2303: remove bogus checks and fix speed support to use tty_get_baud_rate()

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

authored by

Alan Cox and committed by
Greg Kroah-Hartman
e0c79f51 31473aae

+1 -32
+1 -32
drivers/usb/serial/pl2303.c
··· 484 484 spin_unlock_irqrestore(&priv->lock, flags); 485 485 486 486 cflag = port->tty->termios->c_cflag; 487 - /* check that they really want us to change something */ 488 - if (old_termios) { 489 - if ((cflag == old_termios->c_cflag) && 490 - (RELEVANT_IFLAG(port->tty->termios->c_iflag) == 491 - RELEVANT_IFLAG(old_termios->c_iflag))) { 492 - dbg("%s - nothing to change...", __FUNCTION__); 493 - return; 494 - } 495 - } 496 487 497 488 buf = kzalloc(7, GFP_KERNEL); 498 489 if (!buf) { ··· 508 517 dbg("%s - data bits = %d", __FUNCTION__, buf[6]); 509 518 } 510 519 511 - baud = 0; 512 - switch (cflag & CBAUD) { 513 - case B0: baud = 0; break; 514 - case B75: baud = 75; break; 515 - case B150: baud = 150; break; 516 - case B300: baud = 300; break; 517 - case B600: baud = 600; break; 518 - case B1200: baud = 1200; break; 519 - case B1800: baud = 1800; break; 520 - case B2400: baud = 2400; break; 521 - case B4800: baud = 4800; break; 522 - case B9600: baud = 9600; break; 523 - case B19200: baud = 19200; break; 524 - case B38400: baud = 38400; break; 525 - case B57600: baud = 57600; break; 526 - case B115200: baud = 115200; break; 527 - case B230400: baud = 230400; break; 528 - case B460800: baud = 460800; break; 529 - default: 530 - dev_err(&port->dev, "pl2303 driver does not support" 531 - " the baudrate requested (fix it)\n"); 532 - break; 533 - } 520 + baud = tty_get_baud_rate(port->tty);; 534 521 dbg("%s - baud = %d", __FUNCTION__, baud); 535 522 if (baud) { 536 523 buf[0] = baud & 0xff;