@@ -2056,7 +2056,10 @@ static void serial8250_break_ctl(struct uart_port *port, int break_state)
20562056 serial8250_rpm_put (up );
20572057}
20582058
2059- static void wait_for_lsr (struct uart_8250_port * up , int bits )
2059+ /*
2060+ * Wait for transmitter & holding register to empty
2061+ */
2062+ static void wait_for_xmitr (struct uart_8250_port * up , int bits )
20602063{
20612064 unsigned int status , tmout = 10000 ;
20622065
@@ -2073,16 +2076,6 @@ static void wait_for_lsr(struct uart_8250_port *up, int bits)
20732076 udelay (1 );
20742077 touch_nmi_watchdog ();
20752078 }
2076- }
2077-
2078- /*
2079- * Wait for transmitter & holding register to empty
2080- */
2081- static void wait_for_xmitr (struct uart_8250_port * up , int bits )
2082- {
2083- unsigned int tmout ;
2084-
2085- wait_for_lsr (up , bits );
20862079
20872080 /* Wait up to 1s for flow control if necessary */
20882081 if (up -> port .flags & UPF_CONS_FLOW ) {
@@ -3332,35 +3325,6 @@ static void serial8250_console_restore(struct uart_8250_port *up)
33323325 serial8250_out_MCR (up , UART_MCR_DTR | UART_MCR_RTS );
33333326}
33343327
3335- /*
3336- * Print a string to the serial port using the device FIFO
3337- *
3338- * It sends fifosize bytes and then waits for the fifo
3339- * to get empty.
3340- */
3341- static void serial8250_console_fifo_write (struct uart_8250_port * up ,
3342- const char * s , unsigned int count )
3343- {
3344- int i ;
3345- const char * end = s + count ;
3346- unsigned int fifosize = up -> port .fifosize ;
3347- bool cr_sent = false;
3348-
3349- while (s != end ) {
3350- wait_for_lsr (up , UART_LSR_THRE );
3351-
3352- for (i = 0 ; i < fifosize && s != end ; ++ i ) {
3353- if (* s == '\n' && !cr_sent ) {
3354- serial_out (up , UART_TX , '\r' );
3355- cr_sent = true;
3356- } else {
3357- serial_out (up , UART_TX , * s ++ );
3358- cr_sent = false;
3359- }
3360- }
3361- }
3362- }
3363-
33643328/*
33653329 * Print a string to the serial port trying not to disturb
33663330 * any possible real use of the port...
@@ -3376,7 +3340,7 @@ void serial8250_console_write(struct uart_8250_port *up, const char *s,
33763340 struct uart_8250_em485 * em485 = up -> em485 ;
33773341 struct uart_port * port = & up -> port ;
33783342 unsigned long flags ;
3379- unsigned int ier , use_fifo ;
3343+ unsigned int ier ;
33803344 int locked = 1 ;
33813345
33823346 touch_nmi_watchdog ();
@@ -3408,20 +3372,7 @@ void serial8250_console_write(struct uart_8250_port *up, const char *s,
34083372 mdelay (port -> rs485 .delay_rts_before_send );
34093373 }
34103374
3411- use_fifo = (up -> capabilities & UART_CAP_FIFO ) &&
3412- port -> fifosize > 1 &&
3413- (serial_port_in (port , UART_FCR ) & UART_FCR_ENABLE_FIFO ) &&
3414- /*
3415- * After we put a data in the fifo, the controller will send
3416- * it regardless of the CTS state. Therefore, only use fifo
3417- * if we don't use control flow.
3418- */
3419- !(up -> port .flags & UPF_CONS_FLOW );
3420-
3421- if (likely (use_fifo ))
3422- serial8250_console_fifo_write (up , s , count );
3423- else
3424- uart_console_write (port , s , count , serial8250_console_putchar );
3375+ uart_console_write (port , s , count , serial8250_console_putchar );
34253376
34263377 /*
34273378 * Finally, wait for transmitter to become empty
0 commit comments