Subject: [RFT/PATCH] serial: omap: prevent resume if device is not suspended.

From: [email-masked] (Sourav)
Date: Fri, 12 Oct 2012 21:54:56 +0530

Hi Paul,

There are
On Thursday 11 October 2012 11:58 PM, Paul Walmsley wrote:
> Hi Sourav, Felipe,
>
> any progress on fixing the N800 problem?  Would be good to keep it booting
> since we use it as our primary 2420 test platform.
>
>
> - Paul
The patch sent inlined below might help us to get rid of the serial init 
issue.
Unfortunately, I dont have a N800 board with me to test it and will require
your help to do so.
-----------
From: Sourav Poddar <[email-masked]>
Date: Wed, 1 Aug 2012 15:44:12 +0530
Subject: [RFT/PATCH] serial: omap: Fix N800 serial init issue.

This patch might solve the N800 serial init issue.

This patch will also give pointers if there is any mux settings issue 
with N800 OR
a mismatch between the initial harware state, runtime PM state and omap 
hwmod state.

I don't have a N800 schematics to check about the mux settings getting used.

The observation on beagle board XM with this patch on different boards 
looks flaky,
so your feedback on beagle board will also be very helpful.

Cc: Felipe Balbi <[email-masked]>
Signed-off-by: Sourav Poddar <[email-masked]>
---
  drivers/tty/serial/omap-serial.c |    1 +
  1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/tty/serial/omap-serial.c 
b/drivers/tty/serial/omap-serial.c
index 6ede6fd..3fbc7f7 100644
--- a/drivers/tty/serial/omap-serial.c
+++ b/drivers/tty/serial/omap-serial.c
@@ -1414,6 +1414,7 @@ static int __devinit serial_omap_probe(struct 
platform_device *pdev)
         INIT_WORK(&up->qos_work, serial_omap_uart_qos_work);

         platform_set_drvdata(pdev, up);
+       pm_runtime_set_active(&pdev->dev);
         pm_runtime_enable(&pdev->dev);
         pm_runtime_use_autosuspend(&pdev->dev);
         pm_runtime_set_autosuspend_delay(&pdev->dev,
-- 
1.7.1