}
 }
 
-static int s3c24xx_serial_rx_fifocnt(struct s3c24xx_uart_port *ourport,
-                                    unsigned long ufstat);
-
-static void uart_rx_drain_fifo(struct s3c24xx_uart_port *ourport)
-{
-       struct uart_port *port = &ourport->port;
-       struct tty_port *tty = &port->state->port;
-       unsigned int ch, ufstat;
-       unsigned int count;
-
-       ufstat = rd_regl(port, S3C2410_UFSTAT);
-       count = s3c24xx_serial_rx_fifocnt(ourport, ufstat);
-
-       if (!count)
-               return;
-
-       while (count-- > 0) {
-               ch = rd_regb(port, S3C2410_URXH);
-
-               ourport->port.icount.rx++;
-               tty_insert_flip_char(tty, ch, TTY_NORMAL);
-       }
-
-       tty_flip_buffer_push(tty);
-}
-
 static void s3c24xx_serial_stop_rx(struct uart_port *port)
 {
        struct s3c24xx_uart_port *ourport = to_ourport(port);
        ourport->rx_mode = S3C24XX_RX_PIO;
 }
 
+static void s3c24xx_serial_rx_drain_fifo(struct s3c24xx_uart_port *ourport);
+
 static irqreturn_t s3c24xx_serial_rx_chars_dma(void *dev_id)
 {
        unsigned int utrstat, ufstat, received;
                enable_rx_pio(ourport);
        }
 
-       uart_rx_drain_fifo(ourport);
+       s3c24xx_serial_rx_drain_fifo(ourport);
 
        if (tty) {
                tty_flip_buffer_push(t);