Re: [PATCH 2/4] serial: omap: enable PM runtime only when its fully configured

2013-07-30 Thread Paul Walmsley
On Tue, 30 Jul 2013, Rajendra Nayak wrote:

 Looks like this one is already been queued by Greg.

OK, thanks for letting me know; I've dropped it.

- Paul
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 2/4] serial: omap: enable PM runtime only when its fully configured

2013-07-29 Thread Paul Walmsley
Rajendra,

On Mon, 22 Jul 2013, Rajendra Nayak wrote:

 From: Grygorii Strashko grygorii.stras...@ti.com
 
 If earlyprintk is enabled and current UART is console port the platform
 code can mark it as RPM_ACTIVE to sync real IP state with PM Runtime and
 avoid resuming of already active device, but now, driver initialization
 will be performed in the wrong way:

...

 CC: Tony Lindgren t...@atomide.com
 CC: Rajendra Nayak rna...@ti.com
 CC: Felipe Balbi ba...@ti.com
 CC: Kevin Hilman khil...@linaro.org
 
 Signed-off-by: Grygorii Strashko grygorii.stras...@ti.com

Did you intend to add your Signed-off-by: to this patch?  Since you're 
formally submitting it, it needs to have your Signed-off-by: for me to 
take it.  Let me know and I'll add it if needed -

- Paul
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 2/4] serial: omap: enable PM runtime only when its fully configured

2013-07-29 Thread Rajendra Nayak
On Monday 29 July 2013 02:14 PM, Paul Walmsley wrote:
 Rajendra,
 
 On Mon, 22 Jul 2013, Rajendra Nayak wrote:
 
 From: Grygorii Strashko grygorii.stras...@ti.com

 If earlyprintk is enabled and current UART is console port the platform
 code can mark it as RPM_ACTIVE to sync real IP state with PM Runtime and
 avoid resuming of already active device, but now, driver initialization
 will be performed in the wrong way:
 
 ...
 
 CC: Tony Lindgren t...@atomide.com
 CC: Rajendra Nayak rna...@ti.com
 CC: Felipe Balbi ba...@ti.com
 CC: Kevin Hilman khil...@linaro.org

 Signed-off-by: Grygorii Strashko grygorii.stras...@ti.com
 
 Did you intend to add your Signed-off-by: to this patch?  Since you're 
 formally submitting it, it needs to have your Signed-off-by: for me to 
 take it.  Let me know and I'll add it if needed -

Sorry about that Paul. I indeed missed adding my SoB for this one.

Signed-off-by: Rajendra Nayak rna...@ti.com

 
 - Paul
 

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 2/4] serial: omap: enable PM runtime only when its fully configured

2013-07-29 Thread Rajendra Nayak
On Monday 29 July 2013 02:20 PM, Rajendra Nayak wrote:
 On Monday 29 July 2013 02:14 PM, Paul Walmsley wrote:
 Rajendra,

 On Mon, 22 Jul 2013, Rajendra Nayak wrote:

 From: Grygorii Strashko grygorii.stras...@ti.com

 If earlyprintk is enabled and current UART is console port the platform
 code can mark it as RPM_ACTIVE to sync real IP state with PM Runtime and
 avoid resuming of already active device, but now, driver initialization
 will be performed in the wrong way:

 ...

 CC: Tony Lindgren t...@atomide.com
 CC: Rajendra Nayak rna...@ti.com
 CC: Felipe Balbi ba...@ti.com
 CC: Kevin Hilman khil...@linaro.org

 Signed-off-by: Grygorii Strashko grygorii.stras...@ti.com

 Did you intend to add your Signed-off-by: to this patch?  Since you're 
 formally submitting it, it needs to have your Signed-off-by: for me to 
 take it.  Let me know and I'll add it if needed -
 
 Sorry about that Paul. I indeed missed adding my SoB for this one.
 
 Signed-off-by: Rajendra Nayak rna...@ti.com

Paul,

Looks like this one is already been queued by Greg.

regards,
Rajendra

 

 - Paul

 

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 2/4] serial: omap: enable PM runtime only when its fully configured

2013-07-22 Thread Rajendra Nayak
From: Grygorii Strashko grygorii.stras...@ti.com

If earlyprintk is enabled and current UART is console port the platform
code can mark it as RPM_ACTIVE to sync real IP state with PM Runtime and
avoid resuming of already active device, but now, driver initialization
will be performed in the wrong way:

pm_runtime_enable(pdev-dev);
-- PM runtime alowed (device state RPM_ACTIVE)
if (omap_up_info-autosuspend_timeout == 0)
omap_up_info-autosuspend_timeout = -1;
device_init_wakeup(up-dev, true);
pm_runtime_use_autosuspend(pdev-dev);
-- update_autosuspend() will be called and it will disable device
(device state RPM_SUSPENDED)
pm_runtime_set_autosuspend_delay(pdev-dev,
omap_up_info-autosuspend_timeout);
-- update_autosuspend() will be called which will re-enable device
(device state RPM_ACTIVE), because autosuspend_timeout  0

pm_runtime_irq_safe(pdev-dev);
pm_runtime_get_sync(pdev-dev);
-- will do nothing

Such behavior isn't expected by OMAP serial drivers and causes
unpredictable calls of serial_omap_runtime_suspend() and
serial_omap_runtime_resume().

Hence, fix it by allowing PM runtime only after all its parameters are
configured.

CC: Tony Lindgren t...@atomide.com
CC: Rajendra Nayak rna...@ti.com
CC: Felipe Balbi ba...@ti.com
CC: Kevin Hilman khil...@linaro.org

Signed-off-by: Grygorii Strashko grygorii.stras...@ti.com
---
 drivers/tty/serial/omap-serial.c |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/tty/serial/omap-serial.c b/drivers/tty/serial/omap-serial.c
index b6d1728..f39bf0c 100644
--- a/drivers/tty/serial/omap-serial.c
+++ b/drivers/tty/serial/omap-serial.c
@@ -1501,7 +1501,6 @@ 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);
if (omap_up_info-autosuspend_timeout == 0)
omap_up_info-autosuspend_timeout = -1;
device_init_wakeup(up-dev, true);
@@ -1510,6 +1509,8 @@ static int serial_omap_probe(struct platform_device *pdev)
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);
-- 
1.7.9.5

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html