diff options
Diffstat (limited to 'drivers/tty/serial/sh-sci.c')
-rw-r--r-- | drivers/tty/serial/sh-sci.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/tty/serial/sh-sci.c b/drivers/tty/serial/sh-sci.c index 75085795528e..61b7fd2729cd 100644 --- a/drivers/tty/serial/sh-sci.c +++ b/drivers/tty/serial/sh-sci.c | |||
@@ -1710,6 +1710,8 @@ static int sci_startup(struct uart_port *port) | |||
1710 | 1710 | ||
1711 | dev_dbg(port->dev, "%s(%d)\n", __func__, port->line); | 1711 | dev_dbg(port->dev, "%s(%d)\n", __func__, port->line); |
1712 | 1712 | ||
1713 | pm_runtime_put_noidle(port->dev); | ||
1714 | |||
1713 | sci_port_enable(s); | 1715 | sci_port_enable(s); |
1714 | 1716 | ||
1715 | ret = sci_request_irq(s); | 1717 | ret = sci_request_irq(s); |
@@ -1737,6 +1739,8 @@ static void sci_shutdown(struct uart_port *port) | |||
1737 | sci_free_irq(s); | 1739 | sci_free_irq(s); |
1738 | 1740 | ||
1739 | sci_port_disable(s); | 1741 | sci_port_disable(s); |
1742 | |||
1743 | pm_runtime_get_noresume(port->dev); | ||
1740 | } | 1744 | } |
1741 | 1745 | ||
1742 | static unsigned int sci_scbrr_calc(unsigned int algo_id, unsigned int bps, | 1746 | static unsigned int sci_scbrr_calc(unsigned int algo_id, unsigned int bps, |
@@ -2075,6 +2079,7 @@ static int __devinit sci_init_single(struct platform_device *dev, | |||
2075 | sci_init_gpios(sci_port); | 2079 | sci_init_gpios(sci_port); |
2076 | 2080 | ||
2077 | pm_runtime_irq_safe(&dev->dev); | 2081 | pm_runtime_irq_safe(&dev->dev); |
2082 | pm_runtime_get_noresume(&dev->dev); | ||
2078 | pm_runtime_enable(&dev->dev); | 2083 | pm_runtime_enable(&dev->dev); |
2079 | } | 2084 | } |
2080 | 2085 | ||