Re: Garbage on serial console after serial driver loads

From: Phil Oester
Date: Mon Mar 28 2005 - 12:40:04 EST


On Sat, Mar 26, 2005 at 03:10:05PM +0000, Russell King wrote:
> Doesn't matter. The problem is that dwmw2's NS16550A patch (from ages
> ago) changes the prescaler setting for this device so we can use the
> higher speed baud rates. This means any programmed divisor (programmed
> at early serial console initialisation time) suddenly becomes wrong as
> soon as we fiddle with the prescaler during normal UART initialisation
> time.

Seems like you are correct, given the below patch fixes the garbage
output for me.

Phil


--- linux-standard/drivers/serial/8250.c 2005-03-02 02:37:47.000000000 -0500
+++ linux-dellfw/drivers/serial/8250.c 2005-03-28 12:28:34.560032856 -0500
@@ -698,7 +698,7 @@
serial_outp(up, UART_MCR, status1);

if ((status2 ^ status1) & UART_MCR_LOOP) {
-#ifndef CONFIG_PPC
+#if 0
serial_outp(up, UART_LCR, 0xE0);
status1 = serial_in(up, 0x04); /* EXCR1 */
status1 &= ~0xB0; /* Disable LOCK, mask out PRESL[01] */