Re: [PATCH] tty: serial: atmel: add earlycon support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Am 2022-02-17 10:12, schrieb Claudiu.Beznea@xxxxxxxxxxxxx:
On 16.02.2022 18:18, Michael Walle wrote:
EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe

Add early console support which relies on the bootloader for the
initialization of the UART.
Please note, that the compatibles are taken from at91-usart MFD
driver.

Signed-off-by: Michael Walle <michael@xxxxxxxx>
---
 drivers/tty/serial/atmel_serial.c | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/drivers/tty/serial/atmel_serial.c b/drivers/tty/serial/atmel_serial.c
index 2d09a89974a2..50fc6d51ff0d 100644
--- a/drivers/tty/serial/atmel_serial.c
+++ b/drivers/tty/serial/atmel_serial.c
@@ -2673,6 +2673,30 @@ static struct console atmel_console = {
        .data           = &atmel_uart,
 };

+static void atmel_serial_early_write(struct console *con, const char *s,
+                                    unsigned int n)
+{
+       struct earlycon_device *dev = con->data;
+
+       uart_console_write(&dev->port, s, n, atmel_console_putchar);
+}
+
+static int __init atmel_early_console_setup(struct earlycon_device *device,
+                                           const char *options)
+{
+       if (!device->port.membase)
+               return -ENODEV;
+
+       device->con->write = atmel_serial_early_write;
+
+       return 0;
+}
+
+OF_EARLYCON_DECLARE(atmelserial, "atmel,at91rm9200-usart",
+                   atmel_early_console_setup);
+OF_EARLYCON_DECLARE(atmelserial, "atmel,at91sam9260-usart",


For consistency with the rest of the naming in this file could you name it
atmel_serial?

Sure, I don't have an opinion on that. It's done both ways:
omap-serial.c:OF_EARLYCON_DECLARE(omapserial, "ti,omap2-uart", early_omap_serial_setup); bcm63xx_uart.c:OF_EARLYCON_DECLARE(bcm63xx_uart, "brcm,bcm6345-uart", bcm_early_console_setup);
...

Also, it would be good to select SERIAL_EARLYCON in Kconfig to have it
available also for production w/o changing defconfigs.

Ahh, missed that these are enabled for all the other Kconfig symbols.
Will add it to SERIAL_ATMEL_CONSOLE.

-michael



[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux