Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7d774fb8 authored by Arnd Bergmann's avatar Arnd Bergmann Committed by Greg Kroah-Hartman
Browse files

serial: 8250/ingenic: fix building with SERIAL_8250=m



The Ingenic 8250 driver has a 'bool' Kconfig symbol, but that
breaks when SERIAL_8250 is a loadable module:

drivers/tty/built-in.o: In function `ingenic_uart_probe':
8250_ingenic.c:(.text+0x1c1a0): undefined reference to `serial8250_register_8250_port'

This changes the symbol to a 'tristate', plus a dependency on
SERIAL_8250, which makes it work again. Unlike the other
soc-specific backends, this one has no dependency on an
architecture or a platform. I'm adding a dependency on
MIPS || COMPILE_TEST as well here, to avoid showing the driver
on architectures that are not interested in it.

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a2d3ea2f
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -48,7 +48,7 @@ static const struct of_device_id of_match[];
#define UART_MCR_MDCE	BIT(7)
#define UART_MCR_FCM	BIT(6)

#ifdef CONFIG_SERIAL_EARLYCON
#if defined(CONFIG_SERIAL_EARLYCON) && !defined(MODULE)
static struct earlycon_device *early_device;

static uint8_t __init early_in(struct uart_port *port, int offset)
+4 −3
Original line number Diff line number Diff line
@@ -385,9 +385,10 @@ config SERIAL_8250_UNIPHIER
	  serial ports, say Y to this option. If unsure, say N.

config SERIAL_8250_INGENIC
	bool "Support for Ingenic SoC serial ports"
	depends on OF_FLATTREE
	select LIBFDT
	tristate "Support for Ingenic SoC serial ports"
	depends on SERIAL_8250
	depends on (OF_FLATTREE && SERIAL_8250_CONSOLE) || !SERIAL_EARLYCON
	depends on MIPS || COMPILE_TEST
	help
	  If you have a system using an Ingenic SoC and wish to make use of
	  its UARTs, say Y to this option. If unsure, say N.