IKXCLOCK-3681 omap: uart: fix RTS pulldown corner case for aborted suspend
Change-Id: I7cf8531cbdc4e5ed03e56c5e14c73adaf6ef34f3
Signed-off-by: Sridhar Vashist <svashist@motorola.com>
diff --git a/drivers/tty/serial/omap-serial.c b/drivers/tty/serial/omap-serial.c
index e637567..7d041f2 100644
--- a/drivers/tty/serial/omap-serial.c
+++ b/drivers/tty/serial/omap-serial.c
@@ -1372,6 +1372,10 @@
static void serial_omap_complete(struct device *dev)
{
struct uart_omap_port *up = dev_get_drvdata(dev);
+ if (up->need_delayed_rts && up->pin_default && up->pin_idle) {
+ pinctrl_select_state(up->pins, up->pin_default);
+ up->need_delayed_rts = 0;
+ }
up->is_suspending = false;
}
@@ -1390,10 +1394,6 @@
struct uart_omap_port *up = dev_get_drvdata(dev);
uart_resume_port(&serial_omap_reg, &up->port);
- if (up->need_delayed_rts && up->pin_default && up->pin_idle) {
- pinctrl_select_state(up->pins, up->pin_default);
- up->need_delayed_rts = 0;
- }
return 0;
}