serial: omap: fix sequence of pm_runtime_* calls.
authorRuchika Kharwar <ruchika@ti.com>
Thu, 6 Sep 2012 12:45:31 +0000 (15:45 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 6 Sep 2012 16:17:02 +0000 (09:17 -0700)
pm_runtime_enable() needs to be invoked before
pm_runtime_use_autosuspend(), and
pm_runtime_set_autosuspend_delay() functions.

Tested-by: Shubhrajyoti D <shubhrajyoti@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Ruchika Kharwar <ruchika@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/omap-serial.c

index 99042b0fb9410f0eb3fc0c28a9b69ac50c7104c4..f5dcb5aa000077f55fe47b46d2f45ece4d1d0112 100644 (file)
@@ -1333,12 +1333,12 @@ static int serial_omap_probe(struct platform_device *pdev)
        INIT_WORK(&up->qos_work, serial_omap_uart_qos_work);
 
        platform_set_drvdata(pdev, up);
+       pm_runtime_enable(&pdev->dev);
        pm_runtime_use_autosuspend(&pdev->dev);
        pm_runtime_set_autosuspend_delay(&pdev->dev,
                        omap_up_info->autosuspend_timeout);
 
        pm_runtime_irq_safe(&pdev->dev);
-       pm_runtime_enable(&pdev->dev);
        pm_runtime_get_sync(&pdev->dev);
 
        omap_serial_fill_features_erratas(up);