Browse Source

kernel: make serial port sysrq-disable patch more generic (FS#112)

Signed-off-by: Felix Fietkau <[email protected]>
Felix Fietkau 9 years ago
parent
commit
e9c517772c

+ 1 - 1
target/linux/generic/config-4.4

@@ -2003,6 +2003,7 @@ CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
 # CONFIG_MAG3110 is not set
 # CONFIG_MAGIC_SYSRQ is not set
 CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1
+# CONFIG_MAGIC_SYSRQ_SERIAL is not set
 # CONFIG_MAILBOX is not set
 # CONFIG_MANGLE_BOOTARGS is not set
 # CONFIG_MARVELL_PHY is not set
@@ -3561,7 +3562,6 @@ CONFIG_SERIAL_8250_NR_UARTS=2
 # CONFIG_SERIAL_8250_RSA is not set
 # CONFIG_SERIAL_8250_RT288X is not set
 CONFIG_SERIAL_8250_RUNTIME_UARTS=2
-# CONFIG_SERIAL_8250_SYSRQ is not set
 # CONFIG_SERIAL_ALTERA_JTAGUART is not set
 # CONFIG_SERIAL_ALTERA_UART is not set
 # CONFIG_SERIAL_ARC is not set

+ 0 - 24
target/linux/generic/patches-4.4/890-8250_optional_sysrq.patch

@@ -1,24 +0,0 @@
---- a/drivers/tty/serial/8250/8250_port.c
-+++ b/drivers/tty/serial/8250/8250_port.c
-@@ -15,7 +15,7 @@
-  *  membase is an 'ioremapped' cookie.
-  */
- 
--#if defined(CONFIG_SERIAL_8250_CONSOLE) && defined(CONFIG_MAGIC_SYSRQ)
-+#if defined(CONFIG_SERIAL_8250_SYSRQ) && defined(CONFIG_MAGIC_SYSRQ)
- #define SUPPORT_SYSRQ
- #endif
- 
---- a/drivers/tty/serial/8250/Kconfig
-+++ b/drivers/tty/serial/8250/Kconfig
-@@ -91,6 +91,10 @@ config SERIAL_8250_CONSOLE
- 
- 	  If unsure, say N.
- 
-+config SERIAL_8250_SYSRQ
-+	bool "Magic sysrq support on 8250/16550 devices"
-+	depends on SERIAL_8250_CONSOLE
-+
- config SERIAL_8250_GSC
- 	tristate
- 	depends on SERIAL_8250 && GSC

+ 25 - 0
target/linux/generic/patches-4.4/890-uart_optional_sysrq.patch

@@ -0,0 +1,25 @@
+--- a/lib/Kconfig.debug
++++ b/lib/Kconfig.debug
+@@ -382,6 +382,11 @@ config MAGIC_SYSRQ_DEFAULT_ENABLE
+ 	  This may be set to 1 or 0 to enable or disable them all, or
+ 	  to a bitmask as described in Documentation/sysrq.txt.
+ 
++config MAGIC_SYSRQ_SERIAL
++	bool "Enable magic SysRq key over serial"
++	depends on MAGIC_SYSRQ
++	default y
++
+ config DEBUG_KERNEL
+ 	bool "Kernel debugging"
+ 	help
+--- a/include/linux/serial_core.h
++++ b/include/linux/serial_core.h
+@@ -426,7 +426,7 @@ extern void uart_handle_cts_change(struc
+ extern void uart_insert_char(struct uart_port *port, unsigned int status,
+ 		 unsigned int overrun, unsigned int ch, unsigned int flag);
+ 
+-#ifdef SUPPORT_SYSRQ
++#if defined(SUPPORT_SYSRQ) && defined(CONFIG_MAGIC_SYSRQ_SERIAL)
+ static inline int
+ uart_handle_sysrq_char(struct uart_port *port, unsigned int ch)
+ {