Thread (12 messages) 12 messages, 4 authors, 2013-02-28
STALE4853d

[PATCH] arm64: add support for uart earlyprintk

From: Anup Patel <hidden>
Date: 2013-02-28 14:06:27

On Thu, Feb 28, 2013 at 6:22 PM, Marc Zyngier [off-list ref] wrote:
On 28/02/13 12:10, Catalin Marinas wrote:
quoted
On Thu, Feb 28, 2013 at 11:34:17AM +0000, Marc Zyngier wrote:
quoted
On 28/02/13 11:01, Anup Patel wrote:
quoted
+}
+
+/*
  * PL011 single character TX.
  */
 static void pl011_printch(char ch)
@@ -47,6 +62,7 @@ struct earlycon_match {

 static const struct earlycon_match earlycon_match[] __initconst = {
    { .name = "pl011", .printch = pl011_printch, },
+   { .name = "uart", .printch = uart_printch, },
"uart" is way too generic. pl011 is an UART too, and I suspect most of
the backends that are going to be added here over time will be UARTs.

"uart8250" would be a possibility (and actually consistent with the rest
of the kernel, see drivers/tty/serial/8250/8250_early.c.
I think it makes more sense to use the existing 8250_early.c driver. It
has more features than the simple earlyprintk implementation in the
64-bit kernel (like parsing more parameters, initialising the UART). The
only difference is that the early_param is called "earlycon".
Indeed, this seems to be the best way, as it removes the need for this
patch altogether.
The earlycon option does not seem to work on my ARM64 kernel because it uses
ioremap_nocache() whereas ARM64 earlyprintk uses early_io_map()

I do agree that earlycon is more feature rich compared to ARM64 earlyprintk but
I doubt whether 8250_early.c is generic enough to be usable on ARM64 kernel

The best part about ARM64 earlyprintk is that its very very simple and does not
expect us to re-programme UART HW which is already programmed by the
the bootloader.

IMHO, adding 8250 support in ARM64 earlyprintk would be very ARM64
specific and not
re-implementation of 8250_early.c
        M.
--
Jazz is not dead. It just smells funny...
Regards,
Anup
CONFIDENTIALITY NOTICE: This e-mail message, including any attachments, 
is for the sole use of the intended recipient(s) and contains information
that is confidential and proprietary to Applied Micro Circuits Corporation or its subsidiaries. 
It is to be used solely for the purpose of furthering the parties' business relationship. 
All unauthorized review, use, disclosure or distribution is prohibited. 
If you are not the intended recipient, please contact the sender by reply e-mail 
and destroy all copies of the original message.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help