|
@@ -228,7 +228,7 @@ void atmel_config_rs485(struct uart_port *port, struct serial_rs485 *rs485conf)
|
|
|
if (rs485conf->flags & SER_RS485_ENABLED) {
|
|
|
dev_dbg(port->dev, "Setting UART to RS485\n");
|
|
|
atmel_port->tx_done_mask = ATMEL_US_TXEMPTY;
|
|
|
- if (rs485conf->flags & SER_RS485_RTS_AFTER_SEND)
|
|
|
+ if ((rs485conf->delay_rts_after_send) > 0)
|
|
|
UART_PUT_TTGR(port, rs485conf->delay_rts_after_send);
|
|
|
mode |= ATMEL_US_USMODE_RS485;
|
|
|
} else {
|
|
@@ -304,7 +304,7 @@ static void atmel_set_mctrl(struct uart_port *port, u_int mctrl)
|
|
|
|
|
|
if (atmel_port->rs485.flags & SER_RS485_ENABLED) {
|
|
|
dev_dbg(port->dev, "Setting UART to RS485\n");
|
|
|
- if (atmel_port->rs485.flags & SER_RS485_RTS_AFTER_SEND)
|
|
|
+ if ((atmel_port->rs485.delay_rts_after_send) > 0)
|
|
|
UART_PUT_TTGR(port,
|
|
|
atmel_port->rs485.delay_rts_after_send);
|
|
|
mode |= ATMEL_US_USMODE_RS485;
|
|
@@ -1228,7 +1228,7 @@ static void atmel_set_termios(struct uart_port *port, struct ktermios *termios,
|
|
|
|
|
|
if (atmel_port->rs485.flags & SER_RS485_ENABLED) {
|
|
|
dev_dbg(port->dev, "Setting UART to RS485\n");
|
|
|
- if (atmel_port->rs485.flags & SER_RS485_RTS_AFTER_SEND)
|
|
|
+ if ((atmel_port->rs485.delay_rts_after_send) > 0)
|
|
|
UART_PUT_TTGR(port,
|
|
|
atmel_port->rs485.delay_rts_after_send);
|
|
|
mode |= ATMEL_US_USMODE_RS485;
|
|
@@ -1447,16 +1447,6 @@ static void __devinit atmel_of_init_port(struct atmel_uart_port *atmel_port,
|
|
|
rs485conf->delay_rts_after_send = rs485_delay[1];
|
|
|
rs485conf->flags = 0;
|
|
|
|
|
|
- if (rs485conf->delay_rts_before_send == 0 &&
|
|
|
- rs485conf->delay_rts_after_send == 0) {
|
|
|
- rs485conf->flags |= SER_RS485_RTS_ON_SEND;
|
|
|
- } else {
|
|
|
- if (rs485conf->delay_rts_before_send)
|
|
|
- rs485conf->flags |= SER_RS485_RTS_BEFORE_SEND;
|
|
|
- if (rs485conf->delay_rts_after_send)
|
|
|
- rs485conf->flags |= SER_RS485_RTS_AFTER_SEND;
|
|
|
- }
|
|
|
-
|
|
|
if (of_get_property(np, "rs485-rx-during-tx", NULL))
|
|
|
rs485conf->flags |= SER_RS485_RX_DURING_TX;
|
|
|
|