aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/tty/serial/msm_serial.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/tty/serial/msm_serial.c')
-rw-r--r--drivers/tty/serial/msm_serial.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/drivers/tty/serial/msm_serial.c b/drivers/tty/serial/msm_serial.c
index ee96cf0d0057..736b74fd6623 100644
--- a/drivers/tty/serial/msm_serial.c
+++ b/drivers/tty/serial/msm_serial.c
@@ -1812,11 +1812,34 @@ static const struct of_device_id msm_match_table[] = {
1812}; 1812};
1813MODULE_DEVICE_TABLE(of, msm_match_table); 1813MODULE_DEVICE_TABLE(of, msm_match_table);
1814 1814
1815static int __maybe_unused msm_serial_suspend(struct device *dev)
1816{
1817 struct msm_port *port = dev_get_drvdata(dev);
1818
1819 uart_suspend_port(&msm_uart_driver, &port->uart);
1820
1821 return 0;
1822}
1823
1824static int __maybe_unused msm_serial_resume(struct device *dev)
1825{
1826 struct msm_port *port = dev_get_drvdata(dev);
1827
1828 uart_resume_port(&msm_uart_driver, &port->uart);
1829
1830 return 0;
1831}
1832
1833static const struct dev_pm_ops msm_serial_dev_pm_ops = {
1834 SET_SYSTEM_SLEEP_PM_OPS(msm_serial_suspend, msm_serial_resume)
1835};
1836
1815static struct platform_driver msm_platform_driver = { 1837static struct platform_driver msm_platform_driver = {
1816 .remove = msm_serial_remove, 1838 .remove = msm_serial_remove,
1817 .probe = msm_serial_probe, 1839 .probe = msm_serial_probe,
1818 .driver = { 1840 .driver = {
1819 .name = "msm_serial", 1841 .name = "msm_serial",
1842 .pm = &msm_serial_dev_pm_ops,
1820 .of_match_table = msm_match_table, 1843 .of_match_table = msm_match_table,
1821 }, 1844 },
1822}; 1845};