ia64/xen-unstable

changeset 16641:b0c85bc56f9e

Fix serial output of carriage return when using high-bit stream muxing.
Original patch by Dan Doucette.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
author Keir Fraser <keir.fraser@citrix.com>
date Wed Dec 19 15:02:05 2007 +0000 (2007-12-19)
parents e08c4cab65c8
children 643ab64d12d5
files xen/drivers/char/serial.c
line diff
     1.1 --- a/xen/drivers/char/serial.c	Wed Dec 19 14:51:02 2007 +0000
     1.2 +++ b/xen/drivers/char/serial.c	Wed Dec 19 15:02:05 2007 +0000
     1.3 @@ -137,7 +137,7 @@ void serial_putc(int handle, char c)
     1.4      spin_lock_irqsave(&port->tx_lock, flags);
     1.5  
     1.6      if ( (c == '\n') && (handle & SERHND_COOKED) )
     1.7 -        __serial_putc(port, '\r');
     1.8 +        __serial_putc(port, '\r' | ((handle & SERHND_HI) ? 0x80 : 0x00));
     1.9  
    1.10      if ( handle & SERHND_HI )
    1.11          c |= 0x80;
    1.12 @@ -167,7 +167,7 @@ void serial_puts(int handle, const char 
    1.13      while ( (c = *s++) != '\0' )
    1.14      {
    1.15          if ( (c == '\n') && (handle & SERHND_COOKED) )
    1.16 -            __serial_putc(port, '\r');
    1.17 +            __serial_putc(port, '\r' | ((handle & SERHND_HI) ? 0x80 : 0x00));
    1.18  
    1.19          if ( handle & SERHND_HI )
    1.20              c |= 0x80;