public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ARM: OMAP: Fix for mailbox-omap1
@ 2006-11-08  6:49 Toshihiro.Kobayashi
  2006-11-08 11:02 ` regarding bootloaer rajesh B
  2006-11-10  4:47 ` [PATCH] ARM: OMAP: Fix for mailbox-omap1 (repost) Toshihiro.Kobayashi
  0 siblings, 2 replies; 6+ messages in thread
From: Toshihiro.Kobayashi @ 2006-11-08  6:49 UTC (permalink / raw)
  To: linux-omap-open-source, hiroshi.doyu

[-- Attachment #1: Type: text/plain, Size: 152 bytes --]

Fix for omap1 mailbox driver.
This will enable DSP Gateway again.

I'll work more on mudularization of dsp and mailbox.

BR,
Toshihiro Kobayashi

[-- Attachment #2: patch-mailbox-omap1-fix --]
[-- Type: application/octet-stream, Size: 1479 bytes --]

diff -urN linux-2.6.18-omap1/arch/arm/mach-omap1/mailbox.c linux-2.6.18-omap1-new/arch/arm/mach-omap1/mailbox.c
--- linux-2.6.18-omap1/arch/arm/mach-omap1/mailbox.c	2006-11-08 15:28:02 +09:00
+++ linux-2.6.18-omap1-new/arch/arm/mach-omap1/mailbox.c	2006-11-08 14:34:50 +09:00
@@ -67,7 +67,7 @@
 omap1_mbox_fifo_write(struct omap_mbox *mbox, mbox_msg_t msg)
 {
 	struct omap_mbox1_fifo *fifo =
-		&((struct omap_mbox1_priv *)mbox->priv)->rx_fifo;
+		&((struct omap_mbox1_priv *)mbox->priv)->tx_fifo;
 
 	mbox_write_reg(msg & 0xffff, fifo->data);
 	mbox_write_reg(msg >> 16, fifo->cmd);
@@ -110,6 +110,7 @@
 }
 
 struct omap_mbox_ops omap1_mbox_ops = {
+	.type = OMAP_MBOX_TYPE1,
 	.fifo_read = omap1_mbox_fifo_read,
 	.fifo_write = omap1_mbox_fifo_write,
 	.fifo_empty = omap1_mbox_fifo_empty,
diff -urN linux-2.6.18-omap1/arch/arm/plat-omap/mailbox.c linux-2.6.18-omap1-new/arch/arm/plat-omap/mailbox.c
--- linux-2.6.18-omap1/arch/arm/plat-omap/mailbox.c	2006-11-08 15:28:02 +09:00
+++ linux-2.6.18-omap1-new/arch/arm/plat-omap/mailbox.c	2006-11-08 15:17:38 +09:00
@@ -114,10 +114,13 @@
 	struct omap_mbox *mbox = (struct omap_mbox *)p;
 	struct omap_mbq *mbq = mbox->mbq;
 	mbox_msg_t msg;
+	int was_full;
 
 	while (!mbq_empty(mbq)) {
+		was_full = mbq_full(mbq);
 		msg = mbq_get(mbq);
-		enable_mbox_irq(mbox, IRQ_RX);
+		if (was_full)	/* now we have a room in the mbq. */
+			enable_mbox_irq(mbox, IRQ_RX);
 
 		if (unlikely(mbox_seq_test(mbox, msg))) {
 			printk(KERN_ERR

[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2006-11-11  7:33 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-11-08  6:49 [PATCH] ARM: OMAP: Fix for mailbox-omap1 Toshihiro.Kobayashi
2006-11-08 11:02 ` regarding bootloaer rajesh B
2006-11-09 15:04   ` Romain Goyet
2006-11-11  7:33     ` Dirk Behme
2006-11-10  4:47 ` [PATCH] ARM: OMAP: Fix for mailbox-omap1 (repost) Toshihiro.Kobayashi
2006-11-11  0:07   ` Tony Lindgren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox