serial: lantiq: Make UART's use as console selectable

Lantiq UART driver can be used for system console. Add changes to
make this driver's use as console selectable/configurable.

Signed-off-by: Rahul Tanwar <rahul.tanwar@linux.intel.com>
Link: https://lore.kernel.org/r/35f2d002ba1cb26192fe4d9b8cdab275300705bc.1589176044.git.rahul.tanwar@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Rahul Tanwar 2020-05-11 13:57:26 +08:00 committed by Greg Kroah-Hartman
parent cf9c94456e
commit ea7d3fd8a6
2 changed files with 18 additions and 2 deletions

View File

@ -1037,10 +1037,17 @@ config SERIAL_LANTIQ
bool "Lantiq serial driver"
depends on (LANTIQ || X86) || COMPILE_TEST
select SERIAL_CORE
help
Support for UART on Lantiq and Intel SoCs.
config SERIAL_LANTIQ_CONSOLE
bool "Console on Lantiq UART"
depends on SERIAL_LANTIQ=y
select SERIAL_CORE_CONSOLE
select SERIAL_EARLYCON
help
Support for console and UART on Lantiq SoCs.
Select this option if you would like to use a Lantiq UART as the
system console.
config SERIAL_QE
tristate "Freescale QUICC Engine serial port support"

View File

@ -597,6 +597,7 @@ static const struct uart_ops lqasc_pops = {
.verify_port = lqasc_verify_port,
};
#ifdef CONFIG_SERIAL_LANTIQ_CONSOLE
static void
lqasc_console_putchar(struct uart_port *port, int ch)
{
@ -705,6 +706,14 @@ lqasc_serial_early_console_setup(struct earlycon_device *device,
OF_EARLYCON_DECLARE(lantiq, "lantiq,asc", lqasc_serial_early_console_setup);
OF_EARLYCON_DECLARE(lantiq, "intel,lgm-asc", lqasc_serial_early_console_setup);
#define LANTIQ_SERIAL_CONSOLE (&lqasc_console)
#else
#define LANTIQ_SERIAL_CONSOLE NULL
#endif /* CONFIG_SERIAL_LANTIQ_CONSOLE */
static struct uart_driver lqasc_reg = {
.owner = THIS_MODULE,
.driver_name = DRVNAME,
@ -712,7 +721,7 @@ static struct uart_driver lqasc_reg = {
.major = 0,
.minor = 0,
.nr = MAXPORTS,
.cons = &lqasc_console,
.cons = LANTIQ_SERIAL_CONSOLE,
};
static int fetch_irq_lantiq(struct device *dev, struct ltq_uart_port *ltq_port)