Messages in this thread Patch in this message | | | Date | Wed, 30 Nov 2005 16:47:14 +0530 | From | Sachin Sant <> | Subject | [RFC] [PATCH] Adding ctrl-o sysrq hack support to 8250 driver |
| |
The following patch will allow a user to use sysrq keys over a serial console using the ctrl-o key sequence. This is similar to functionality provided by the hvc console drivers on PPC boxes.
Signed-off-by: Sachin Sant <sachinp@in.ibm.com>
diff -Naurp linux-2.6.14.3/drivers/serial/8250.c linux-2.6.14.3-new/drivers/serial/8250.c --- linux-2.6.14.3/drivers/serial/8250.c 2005-11-11 11:03:12.000000000 +0530 +++ linux-2.6.14.3-new/drivers/serial/8250.c 2005-11-17 15:12:42.000000000 +0530 @@ -1084,6 +1084,23 @@ receive_chars(struct uart_8250_port *up, */ } ch = serial_inp(up, UART_RX); + +#if defined(CONFIG_MAGIC_SYSRQ) && defined(CONFIG_SERIAL_CORE_CONSOLE) + /* Handle the SysRq ^O Hack */ + if (ch == '\x0f') { + up->port.sysrq = jiffies + HZ*5; + goto ignore_char; + } + if (up->port.sysrq) { + int swallow; + spin_unlock(&up->port.lock); + swallow = uart_handle_sysrq_char(&up->port, ch, regs); + spin_lock(&up->port.lock); + if (swallow) + goto ignore_char; + } +#endif /* CONFIG_MAGIC_SYSRQ && CONFIG_SERIAL_CORE_CONSOLE */ + flag = TTY_NORMAL; up->port.icount.rx++; | |