/* SPDX-License-Identifier: GPL-2.0 */
/*
 *  Unified handling of special chars.
 *
 *    Copyright IBM Corp. 2001
 *    Author(s): Fritz Elfert <felfert@millenux.com> <elfert@de.ibm.com>
 *
 */

#include <linux/tty.h>
#include <linux/sysrq.h>
#include <linux/workqueue.h>

extern unsigned int
ctrlchar_handle(const unsigned char *buf, int len, struct tty_struct *tty);


#define CTRLCHAR_NONE  (1 << 8)
#define CTRLCHAR_CTRL  (2 << 8)
#define CTRLCHAR_SYSRQ (3 << 8)

#define CTRLCHAR_MASK (~0xffu)


#ifdef CONFIG_MAGIC_SYSRQ
struct sysrq_work {
	int key;
	struct work_struct work;
};

void schedule_sysrq_work(struct sysrq_work *sw);
#endif