Revert "USB: pl2303: restrict the divisor based baud rate encoding method to the "HX" chip type"

This reverts commit b8bdad6082.

Revert all of the pl2303 changes that went into 3.12-rc1 and -rc2 as
they cause regressions on some versions of the chip.  This will all be
revisited for later kernel versions when we can figure out how to handle
this in a way that does not break working devices.

Reported-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Cc: Frank Schäfer <fschaefer.oss@googlemail.com>
Acked-by: Johan Hovold <jhovold@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Greg Kroah-Hartman 2013-11-01 09:19:56 -07:00
parent 1796a22876
commit 54dc5792ea

View File

@ -305,14 +305,10 @@ static void pl2303_encode_baudrate(struct tty_struct *tty,
if (spriv->type != HX)
baud = min_t(int, baud, 1228800);
if (spriv->type != HX || baud <= 115200) {
/* Direct (standard) baud rate encoding method */
if (baud <= 115200) {
put_unaligned_le32(baud, buf);
} else {
/*
* NOTE: it's not clear if the type_0/1 chips
* support this method
*
* Apparently the formula for higher speeds is:
* baudrate = 12M * 32 / (2^buf[1]) / buf[0]
*/