• Doug Anderson's avatar
    serial_core: Commonalize crlf when working w/ a non open console port · c7d44a02
    Doug Anderson authored
    In (efe2f29e kgdboc,kdb: Allow kdb to work on a non open console port)
    support was added to directly use the "write_char" functions when
    doing kdb over a non-open console port.  This is great, but it ends up
    bypassing the normal code in uart_console_write() that adds a carriage
    return before any newlines.
    
    There appears to have been a trend to add this support directly in
    some console driver's poll_put_char() functions.  This had a few side
    effects, including:
    - In this case we were doing LFCR, not CRLF.  This was fixed in
      uart_console_write() back in (d358788f [SERIAL] kernel console should
      send CRLF not LFCR)
    - Not all serial drivers had the LFCR code in their poll_put_char()
      functions.  In my case I was running serial/samsung.c which lacked
      it.
    
    I've moved the handling to uart_poll_put_char() to fix the above
    problems.  Now when I use kdb (and don't point console= to the same
    UART) I no longer get:
    
    [0]kdb>
           [0]kdb>
                  [0]kdb>
    Signed-off-by: default avatarDoug Anderson <dianders@chromium.org>
    Reviewed-by: default avatarAlan Cox <alan@linux.intel.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    c7d44a02
pch_uart.c 50 KB