If enable_off_mode is not set bridge target state going into
suspend will be retention, on this path the peripheral clocks
will be disabled but not enabled again when waking the dsp up.

Signed-off-by: Omar Ramirez Luna <[email protected]>
---
 drivers/dsp/bridge/wmd/tiomap_sm.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/drivers/dsp/bridge/wmd/tiomap_sm.c 
b/drivers/dsp/bridge/wmd/tiomap_sm.c
index 7d389e3..fe4d8b0 100644
--- a/drivers/dsp/bridge/wmd/tiomap_sm.c
+++ b/drivers/dsp/bridge/wmd/tiomap_sm.c
@@ -148,7 +148,9 @@ DSP_STATUS CHNLSM_InterruptDSP2(struct WMD_DEV_CONTEXT 
*pDevContext,
                temp = *(REG_UWORD32 *)(resources.dwDmmuBase + 0x10);
 
                pDevContext->dwBrdState = BRD_RUNNING;
-       }
+       } else if (pDevContext->dwBrdState == BRD_RETENTION)
+               /* Restart the peripheral clocks */
+               DSP_PeripheralClocks_Enable(pDevContext, NULL);
 
        timeout = jiffies + msecs_to_jiffies(1);
        while (fifo_full((void __iomem *) resources.dwMboxBase, 0)) {
-- 
1.6.2.4

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

Reply via email to