Re: Git tree updated to 2.6.19-rc2

tony
2006-10-27T12:50:17Z

* Dirk Behme <dirk.behme@googlemail.com> [061024 19:16]:
> Tony Lindgren wrote:
> >- CONFIG_DEBUG_LL hangs system
>
> For reference see
>
> http://linux.omap.com/pipermail/linux-omap-open-source/2006-October/008025.html
>
> and
>
> http://linux.omap.com/pipermail/linux-omap-open-source/2006-October/008054.html
>
> for an ugly workaround if you really need it. I really have
> no clue what is broken here.

Sounds like some clock is not enabled somewhere and serial write hangs.

> >- BUG in omap1_mbox_enable_irq
>
> I think you mean
>
> Unbalanced enable for IRQ 10
> BUG: warning at kernel/irq/manage.c:118/enable_irq()
>
> printed in bootmessages.
>
> I spent some minutes for this as well. It is MPU "dsp"
> interrupt which is enabled in omap1_mbox_enable_irq() by
>
> enable_irq(mbox->irq);
>
> In kernel/irq/manage.c function enable_irq() checks for
> desc->depth and if it is 0 it prints above message. Seems
> that desc->depth has to be >= 1.
>
> The comment tells us
>
> * Undoes the effect of one call to disable_irq(). If this
> * matches the last disable, processing of interrupts on this
> * IRQ line is re-enabled.
>
> so seems that before calling enable_irq() at least one
> disable_irq() is needed.
>
> I don't know if patch in attachment is a valid patch or only
> a workaround. What do you think?
>
> Best regards
>
> Dirk
>

> --- arch/arm/plat-omap/mailbox.c_orig 2006-10-24 18:08:06.000000000 +0200
> +++ arch/arm/plat-omap/mailbox.c 2006-10-24 18:10:58.000000000 +0200
> @@ -237,6 +237,7 @@ static int omap_mbox_init(struct omap_mb
> "failed to register mailbox interrupt:%d\n", ret);
> goto fail1;
> }
> + disable_mbox_irq(mbox, IRQ_RX);
> enable_mbox_irq(mbox, IRQ_RX);
>
> spin_lock_init(&mbox->lock);
>

Let's see what Toshihiro and Hiroshi think.

Tony