From: Doyu Hiroshi (Nokia-D/Helsinki) <hiroshi.doyu@xxxxxxxxx> Reported-by: Tero Kristo <tero.kristo@xxxxxxxxx> Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@xxxxxxxxx> --- drivers/dsp/bridge/hw/hw_mbox.c | 4 +++- drivers/dsp/bridge/hw/hw_mbox.h | 5 +++++ drivers/dsp/bridge/wmd/io_sm.c | 1 + 3 files changed, 9 insertions(+), 1 deletions(-) diff --git a/drivers/dsp/bridge/hw/hw_mbox.c b/drivers/dsp/bridge/hw/hw_mbox.c index ee79032..5a87597 100644 --- a/drivers/dsp/bridge/hw/hw_mbox.c +++ b/drivers/dsp/bridge/hw/hw_mbox.c @@ -33,7 +33,9 @@ /* width in bits of MBOX Id */ #define HW_MBOX_ID_WIDTH 2 -struct MAILBOX_CONTEXT mboxsetting = {0x4, 0x1, 0x1}; +static struct MAILBOX_CONTEXT mboxsetting = { + .sysconfig = 2 << 3 | 1, /* SMART/AUTO-IDLE */ +}; /* Saves the mailbox context */ HW_STATUS HW_MBOX_saveSettings(void __iomem *baseAddress) diff --git a/drivers/dsp/bridge/hw/hw_mbox.h b/drivers/dsp/bridge/hw/hw_mbox.h index ad1a89c..8a5f6bd 100644 --- a/drivers/dsp/bridge/hw/hw_mbox.h +++ b/drivers/dsp/bridge/hw/hw_mbox.h @@ -320,4 +320,9 @@ extern HW_STATUS HW_MBOX_saveSettings(void __iomem *baseAddres); */ extern HW_STATUS HW_MBOX_restoreSettings(void __iomem *baseAddres); +static inline void HW_MBOX_initSettings(void __iomem *baseAddres) +{ + HW_MBOX_restoreSettings(baseAddres); +} + #endif /* __MBOX_H */ diff --git a/drivers/dsp/bridge/wmd/io_sm.c b/drivers/dsp/bridge/wmd/io_sm.c index 39c34f7..d8ae1f1 100644 --- a/drivers/dsp/bridge/wmd/io_sm.c +++ b/drivers/dsp/bridge/wmd/io_sm.c @@ -282,6 +282,7 @@ DSP_STATUS WMD_IO_Create(OUT struct IO_MGR **phIOMgr, pIOMgr->fSharedIRQ = pMgrAttrs->fShared; IO_DisableInterrupt(hWmdContext); if (devType == DSP_UNIT) { + HW_MBOX_initSettings(hostRes.dwMboxBase); /* Plug the channel ISR:. */ if ((request_irq(INT_MAIL_MPU_IRQ, IO_ISR, 0, "DspBridge\tmailbox", (void *)pIOMgr)) == 0) -- 1.6.2.4 -- 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