Loading arch/ia64/hp/sim/simserial.c +11 −5 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ #include <linux/module.h> #include <linux/serial.h> #include <linux/serialP.h> #include <linux/sysrq.h> #include <asm/irq.h> #include <asm/hw_irq.h> Loading Loading @@ -149,12 +150,17 @@ static void receive_chars(struct tty_struct *tty, struct pt_regs *regs) seen_esc = 2; continue; } else if ( seen_esc == 2 ) { if ( ch == 'P' ) show_state(); /* F1 key */ #ifdef CONFIG_KDB if ( ch == 'S' ) kdb(KDB_REASON_KEYBOARD, 0, (kdb_eframe_t) regs); if ( ch == 'P' ) /* F1 */ show_state(); #ifdef CONFIG_MAGIC_SYSRQ if ( ch == 'S' ) { /* F4 */ do ch = ia64_ssc(0, 0, 0, 0, SSC_GETCHAR); while (!ch); handle_sysrq(ch, regs, NULL); } #endif seen_esc = 0; continue; } Loading Loading
arch/ia64/hp/sim/simserial.c +11 −5 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ #include <linux/module.h> #include <linux/serial.h> #include <linux/serialP.h> #include <linux/sysrq.h> #include <asm/irq.h> #include <asm/hw_irq.h> Loading Loading @@ -149,12 +150,17 @@ static void receive_chars(struct tty_struct *tty, struct pt_regs *regs) seen_esc = 2; continue; } else if ( seen_esc == 2 ) { if ( ch == 'P' ) show_state(); /* F1 key */ #ifdef CONFIG_KDB if ( ch == 'S' ) kdb(KDB_REASON_KEYBOARD, 0, (kdb_eframe_t) regs); if ( ch == 'P' ) /* F1 */ show_state(); #ifdef CONFIG_MAGIC_SYSRQ if ( ch == 'S' ) { /* F4 */ do ch = ia64_ssc(0, 0, 0, 0, SSC_GETCHAR); while (!ch); handle_sysrq(ch, regs, NULL); } #endif seen_esc = 0; continue; } Loading