Browse Source

serial: 8250_dw: Set port capabilities based on CPR register

The Designware UART has an optional support for 16750
compatible Auto Flow Control. This will enable it based on
the AFCE bit in Component Parameter Register.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Heikki Krogerus 12 years ago
parent
commit
2920adb6df
1 changed files with 4 additions and 0 deletions
  1. 4 0
      drivers/tty/serial/8250/8250_dw.c

+ 4 - 0
drivers/tty/serial/8250/8250_dw.c

@@ -221,7 +221,11 @@ static void dw8250_setup_port(struct uart_8250_port *up)
 		p->flags |= UPF_FIXED_TYPE;
 		p->flags |= UPF_FIXED_TYPE;
 		p->fifosize = DW_UART_CPR_FIFO_SIZE(reg);
 		p->fifosize = DW_UART_CPR_FIFO_SIZE(reg);
 		up->tx_loadsz = p->fifosize;
 		up->tx_loadsz = p->fifosize;
+		up->capabilities = UART_CAP_FIFO;
 	}
 	}
+
+	if (reg & DW_UART_CPR_AFCE_MODE)
+		up->capabilities |= UART_CAP_AFE;
 }
 }
 
 
 static int dw8250_probe(struct platform_device *pdev)
 static int dw8250_probe(struct platform_device *pdev)