From: Yin Kangkai Date: Wed, 9 Feb 2011 03:35:18 +0000 (+0800) Subject: serial: change the divisor latch only when prescalar actually changed X-Git-Tag: v2.6.39-rc1~470^2~50 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0d0389e5414c8950b1613e8bdc74289cde3d6d98;p=pandora-kernel.git serial: change the divisor latch only when prescalar actually changed In 8250.c original ns16550 autoconfig code, we change the divisor latch when we goto to high speed mode, we're assuming the previous speed is legacy. This some times is not true. For example in a system with both CONFIG_SERIAL_8250 and CONFIG_SERIAL_8250_PNP set, in this case, the code (autoconfig) will be called twice, one in serial8250_init/probe() and the other is from serial_pnp_probe. When serial_pnp_probe calls the autoconfig for NS16550A, it's already in high speed mode, change the divisor latch (quot << 3) in this case will make the UART console garbled. CC: Greg Kroah-Hartman CC: David Woodhouse CC: linux-kernel@vger.kernel.org CC: stable@kernel.org Signed-off-by: Yin Kangkai Signed-off-by: Greg Kroah-Hartman --- Reading git-diff-tree failed