Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

tty/serial: Migrate efm32-uart to use has_sysrq

The SUPPORT_SYSRQ ifdeffery is not nice as:
- May create misunderstanding about sizeof(struct uart_port) between
different objects
- Prevents moving functions from serial_core.h
- Reduces readability (well, it's ifdeffery - it's hard to follow)

In order to remove SUPPORT_SYSRQ, has_sysrq variable has been added.
Initialise it in driver's probe and remove ifdeffery.

Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: linux-arm-kernel@lists.infradead.org
Signed-off-by: Dmitry Safonov <dima@arista.com>
Link: https://lore.kernel.org/r/20191213000657.931618-17-dima@arista.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Dmitry Safonov and committed by
Greg Kroah-Hartman
79bb6625 881bdb44

+1 -4
+1 -4
drivers/tty/serial/efm32-uart.c
··· 1 1 // SPDX-License-Identifier: GPL-2.0 2 - #if defined(CONFIG_SERIAL_EFM32_UART_CONSOLE) && defined(CONFIG_MAGIC_SYSRQ) 3 - #define SUPPORT_SYSRQ 4 - #endif 5 - 6 2 #include <linux/kernel.h> 7 3 #include <linux/module.h> 8 4 #include <linux/io.h> ··· 744 748 efm_port->port.type = PORT_EFMUART; 745 749 efm_port->port.iotype = UPIO_MEM32; 746 750 efm_port->port.fifosize = 2; 751 + efm_port->port.has_sysrq = IS_ENABLED(CONFIG_SERIAL_EFM32_UART_CONSOLE); 747 752 efm_port->port.ops = &efm32_uart_pops; 748 753 efm_port->port.flags = UPF_BOOT_AUTOCONF; 749 754