In serial_omap_runtime_resume in case of errors returned by get_context_loss_count print a warning and do a restore. Signed-off-by: Shubhrajyoti D <shubhrajyoti@xxxxxx> --- applies on Tony's uart branch drivers/tty/serial/omap-serial.c | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/tty/serial/omap-serial.c b/drivers/tty/serial/omap-serial.c index 29fe6fd..6008612 100644 --- a/drivers/tty/serial/omap-serial.c +++ b/drivers/tty/serial/omap-serial.c @@ -1602,10 +1602,16 @@ static int serial_omap_runtime_resume(struct device *dev) if (up) { if (pdata->get_context_loss_count) { - u32 loss_cnt = pdata->get_context_loss_count(dev); + int loss_cnt = pdata->get_context_loss_count(dev); - if (up->context_loss_cnt != loss_cnt) + if (loss_cnt < 0) { + dev_err(dev, + "get_context_loss_count failed : %d\n", + loss_cnt); serial_omap_restore_context(up); + } else if (up->context_loss_cnt != loss_cnt) { + serial_omap_restore_context(up); + } } /* Errata i291 */ -- 1.7.1 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html