Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 525a1138 authored by Hari Kanigeri's avatar Hari Kanigeri Committed by Tony Lindgren
Browse files

omap: mailbox: resolve hang issue



omap4 interrupt disable bits is different. On rx kfifo full, the mbox rx
interrupts wasn't getting disabled, and this is causing the rcm stress tests
to hang.

Signed-off-by: default avatarHari Kanigeri <h-kanigeri2@ti.com>
Signed-off-by: default avatarArmando Uribe <x0095078@ti.com>
Signed-off-by: default avatarFernando Guzman Lugo <fernando.lugo@ti.com>
Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
parent dd9c1549
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -193,10 +193,12 @@ static void omap2_mbox_disable_irq(struct omap_mbox *mbox,
		omap_mbox_type_t irq)
{
	struct omap_mbox2_priv *p = mbox->priv;
	u32 l, bit = (irq == IRQ_TX) ? p->notfull_bit : p->newmsg_bit;
	l = mbox_read_reg(p->irqdisable);
	l &= ~bit;
	mbox_write_reg(l, p->irqdisable);
	u32 bit = (irq == IRQ_TX) ? p->notfull_bit : p->newmsg_bit;

	if (!cpu_is_omap44xx())
		bit = mbox_read_reg(p->irqdisable) & ~bit;

	mbox_write_reg(bit, p->irqdisable);
}

static void omap2_mbox_ack_irq(struct omap_mbox *mbox,