Fix early output on serial port for ll debugging

Linux provides a feature to print messages to the serial console early
in the boot process even before the UART driver has been initialized.
Previously, it did not work on the Comcerto platform.

The old code failed to set a virtual base address because the mov
instruction was commented out. Also, the instruction that was meant to
set the physical base address included a condition code which made the
execution of the instruction dependend on the condition code flags in
the CPSR which are undefined at that point.

CONFIG_DEBUG_LL enables the early output feature. You can then use
early_print() in kernel code to write strings to the console. The same
messages will also end up in the printk buffer which is why they
eventually show up twice on the console.

In addition to that, CONFIG_EARLY_PRINTK can be used to output printk
messages to the console earlier than usual. In some cases, though, where
printk is not yet initialised, early_print() is required.
Add earlyprintk to the command line to activate early printk. This
feature is smart enough to not output messages on the console twice.

Warning: Do not use anything like
"earlycon=uart8250,mmio32,0x96400000,115200n8" on the kernel command
line. earlycon is a different mechanism and does not work on the
Comcerto platform.

Change-Id: I14b3a829e7b2625becb6a2f0bdafa80720367f62
1 file changed