summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBhuvanchandra DV <bhuvanchandra.dv@toradex.com>2017-05-23 15:02:46 +0530
committerMarcel Ziswiler <marcel.ziswiler@toradex.com>2018-12-24 01:27:29 +0100
commitd0fa202ec506027902b3a2a427db4a494df8d64c (patch)
tree00807cb76e27bc7f60d13ecc5447d9d52e9464f3
parent6642fdf9b630640be8a787aeba5c4dd0619d8c41 (diff)
tty: serial: imx: Add support for enabling RS485 via device tree
Add support to enable RS485 via device tree Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com> Signed-off-by: Stefan Agner <stefan.agner@toradex.com> (cherry picked from commit b8e5d21a1351bc0e45ae1762f0799b428d9993ea)
-rw-r--r--drivers/tty/serial/imx.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index 3c5fdab7fac7..39056519a293 100644
--- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c
@@ -2082,6 +2082,11 @@ static int serial_imx_probe_dt(struct imx_port *sport,
if (of_get_property(np, "fsl,dte-mode", NULL))
sport->dte_mode = 1;
+ if (of_property_read_bool(np, "linux,rs485-enabled-at-boot-time")) {
+ sport->port.rs485.flags |= SER_RS485_ENABLED;
+ sport->port.rs485.flags |= SER_RS485_RTS_AFTER_SEND;
+ }
+
return 0;
}
#else
@@ -2149,8 +2154,6 @@ static int serial_imx_probe(struct platform_device *pdev)
sport->port.fifosize = 32;
sport->port.ops = &imx_pops;
sport->port.rs485_config = imx_rs485_config;
- sport->port.rs485.flags =
- SER_RS485_RTS_ON_SEND | SER_RS485_RX_DURING_TX;
sport->port.flags = UPF_BOOT_AUTOCONF;
init_timer(&sport->timer);
sport->timer.function = imx_timeout;