omap: mailbox: correct OMAP4 SIDLEMODE logic
OMAP4 mailbox has a different MAILBOX_SYSCONFIG register. There is now no AutoIdle. The SIDLEMODE bits have been right-shifted by 1 bit and now occupy bits 2 & 3. Signed-off-by: Suman Anna <s-anna@ti.com> Acked-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
This commit is contained in:
committed by
Tony Lindgren
parent
a6a6022871
commit
4499ce4293
@@ -41,6 +41,8 @@
|
|||||||
#define SOFTRESET (1 << 1)
|
#define SOFTRESET (1 << 1)
|
||||||
#define SMARTIDLE (2 << 3)
|
#define SMARTIDLE (2 << 3)
|
||||||
#define OMAP4_SOFTRESET (1 << 0)
|
#define OMAP4_SOFTRESET (1 << 0)
|
||||||
|
#define OMAP4_NOIDLE (1 << 2)
|
||||||
|
#define OMAP4_SMARTIDLE (2 << 2)
|
||||||
|
|
||||||
/* SYSSTATUS: register bit definition */
|
/* SYSSTATUS: register bit definition */
|
||||||
#define RESETDONE (1 << 0)
|
#define RESETDONE (1 << 0)
|
||||||
@@ -131,6 +133,9 @@ static int omap2_mbox_startup(struct omap_mbox *mbox)
|
|||||||
l = mbox_read_reg(MAILBOX_REVISION);
|
l = mbox_read_reg(MAILBOX_REVISION);
|
||||||
pr_info("omap mailbox rev %d.%d\n", (l & 0xf0) >> 4, (l & 0x0f));
|
pr_info("omap mailbox rev %d.%d\n", (l & 0xf0) >> 4, (l & 0x0f));
|
||||||
|
|
||||||
|
if (cpu_is_omap44xx())
|
||||||
|
l = OMAP4_SMARTIDLE;
|
||||||
|
else
|
||||||
l = SMARTIDLE | AUTOIDLE;
|
l = SMARTIDLE | AUTOIDLE;
|
||||||
mbox_write_reg(l, MAILBOX_SYSCONFIG);
|
mbox_write_reg(l, MAILBOX_SYSCONFIG);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user