* Cory Maccarrone <darkstar6...@gmail.com> [100308 19:03]:
> On Mon, Mar 8, 2010 at 6:46 PM, Tony Lindgren <t...@atomide.com> wrote:
> 
> Alright, I found it.  0c8219f0302d0d27fda52c790d38406801e547ec removed
> this code from uncompress.h:
> 
>     -               if (check_port(uart, shift))
>     -                       break;
> 
> which was in a while loop in putc(), with check_port defined as:
> 
>     #define UART_OMAP_MDR1         0x08    /* mode definition register */
>     #define check_port(base, shift) ((base[UART_OMAP_MDR1 << shift] & 7) == 0)
> 
> and shift = 0.  Without the break, putc() was silent.  If I put in
> similar code back into putc():
> 
>     +       if ((uart_base[0x08] & 7) != 0)
>     +               return;
> 
> it boots.
> 
> Unfortunately, I don't have access to the serial console, so I have no
> idea if any of the serial port work was actually working (the Herald
> is a phone, and the only output I have is USB, which can act as
> serial, but I'm ill-equipped to make that work).  I suspect this is
> always returning true, and as such we're not getting serial output
> through the uncompress.  Not sure what's needed to fix this, but at
> least that little bit of code makes it boot for me.

OK. It's not a bug it's a feature :)

If you don't have anything connected to the serial port, then
DEBUG_LL should not do anything as it just waits for fifo to empty.

Sounds like we should either have most of uncompress.h in ifdef
CONFIG_DEBUG_LL so it does not do anything unless set.

We may also want to also define DEBUG_LL_OMAP_NONE in uncompress.h
to allow booting systems with no serial port with DEBUG_LL set,
but I don't know if that's really needed.

Does your system boot without any patches if DEBUG_LL is not set
in your .config?

Regards,

Tony 
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to