[PATCH] serial: extend compile-test coverage

From: Johan Hovold
Date: Wed Apr 21 2021 - 10:31:39 EST


Allow more drivers to be compile tested, for example, when doing
subsystem-wide changes.

Verified on X86_64 as well as arm, powerpc and m68k with minimal configs
in order to catch missing implicit build dependencies (e.g. MAILBOX for
SERIAL_TEGRA_TCU).

Signed-off-by: Johan Hovold <johan@xxxxxxxxxx>
---
drivers/tty/serial/8250/Kconfig | 6 ++++--
drivers/tty/serial/Kconfig | 20 +++++++++++---------
2 files changed, 15 insertions(+), 11 deletions(-)

diff --git a/drivers/tty/serial/8250/Kconfig b/drivers/tty/serial/8250/Kconfig
index 4b9d7d1951f8..d1b3c2373fa4 100644
--- a/drivers/tty/serial/8250/Kconfig
+++ b/drivers/tty/serial/8250/Kconfig
@@ -403,7 +403,8 @@ config SERIAL_8250_RT288X

config SERIAL_8250_OMAP
tristate "Support for OMAP internal UART (8250 based driver)"
- depends on SERIAL_8250 && (ARCH_OMAP2PLUS || ARCH_K3)
+ depends on SERIAL_8250
+ depends on ARCH_OMAP2PLUS || ARCH_K3 || COMPILE_TEST
help
If you have a machine based on an Texas Instruments OMAP CPU you
can enable its onboard serial ports by enabling this option.
@@ -439,7 +440,8 @@ config SERIAL_8250_LPC18XX

config SERIAL_8250_MT6577
tristate "Mediatek serial port support"
- depends on SERIAL_8250 && ARCH_MEDIATEK
+ depends on SERIAL_8250
+ depends on ARCH_MEDIATEK || COMPILE_TEST
help
If you have a Mediatek based board and want to use the
serial port, say Y to this option. If unsure, say N.
diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
index e6f55c28cc2e..35fd148fd2b2 100644
--- a/drivers/tty/serial/Kconfig
+++ b/drivers/tty/serial/Kconfig
@@ -20,7 +20,7 @@ comment "Non-8250 serial port support"

config SERIAL_AMBA_PL010
tristate "ARM AMBA PL010 serial port support"
- depends on ARM_AMBA
+ depends on ARM_AMBA || COMPILE_TEST
select SERIAL_CORE
help
This selects the ARM(R) AMBA(R) PrimeCell PL010 UART. If you have
@@ -198,7 +198,7 @@ config SERIAL_KGDB_NMI

config SERIAL_MESON
tristate "Meson serial port support"
- depends on ARCH_MESON
+ depends on ARCH_MESON || COMPILE_TEST
select SERIAL_CORE
help
This enables the driver for the on-chip UARTs of the Amlogic
@@ -278,7 +278,7 @@ config SERIAL_SAMSUNG_CONSOLE

config SERIAL_TEGRA
tristate "NVIDIA Tegra20/30 SoC serial controller"
- depends on ARCH_TEGRA && TEGRA20_APB_DMA
+ depends on (ARCH_TEGRA && TEGRA20_APB_DMA) || COMPILE_TEST
select SERIAL_CORE
help
Support for the on-chip UARTs on the NVIDIA Tegra series SOCs
@@ -289,7 +289,8 @@ config SERIAL_TEGRA

config SERIAL_TEGRA_TCU
tristate "NVIDIA Tegra Combined UART"
- depends on ARCH_TEGRA && TEGRA_HSP_MBOX
+ depends on MAILBOX
+ depends on (ARCH_TEGRA && TEGRA_HSP_MBOX) || COMPILE_TEST
select SERIAL_CORE
help
Support for the mailbox-based TCU (Tegra Combined UART) serial port.
@@ -852,7 +853,8 @@ config SERIAL_MPC52xx_CONSOLE_BAUD

config SERIAL_ICOM
tristate "IBM Multiport Serial Adapter"
- depends on PCI && PPC_PSERIES
+ depends on PCI
+ depends on PPC_PSERIES || COMPILE_TEST
select SERIAL_CORE
select FW_LOADER
help
@@ -865,7 +867,7 @@ config SERIAL_ICOM

config SERIAL_TXX9
bool "TMPTX39XX/49XX SIO support"
- depends on HAS_TXX9_SERIAL
+ depends on HAS_TXX9_SERIAL || COMPILE_TEST
select SERIAL_CORE
default y

@@ -921,7 +923,7 @@ config SERIAL_JSM

config SERIAL_MSM
tristate "MSM on-chip serial port support"
- depends on ARCH_QCOM
+ depends on ARCH_QCOM || COMPILE_TEST
select SERIAL_CORE

config SERIAL_MSM_CONSOLE
@@ -947,7 +949,7 @@ config SERIAL_QCOM_GENI_CONSOLE

config SERIAL_VT8500
bool "VIA VT8500 on-chip serial port support"
- depends on ARCH_VT8500
+ depends on ARCH_VT8500 || COMPILE_TEST
select SERIAL_CORE

config SERIAL_VT8500_CONSOLE
@@ -957,7 +959,7 @@ config SERIAL_VT8500_CONSOLE

config SERIAL_OMAP
tristate "OMAP serial port support"
- depends on ARCH_OMAP2PLUS
+ depends on ARCH_OMAP2PLUS || COMPILE_TEST
select SERIAL_CORE
help
If you have a machine based on an Texas Instruments OMAP CPU you
--
2.26.3