1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* sunserialcore.h
3  *
4  * Generic SUN serial/kbd/ms layer.  Based entirely
5  * upon drivers/sbus/char/sunserial.h which is:
6  *
7  * Copyright (C) 1997  Eddie C. Dost  (ecd@skynet.be)
8  *
9  * Port to new UART layer is:
10  *
11  * Copyright (C) 2002 David S. Miller (davem@redhat.com)
12  */
13 
14 #ifndef _SERIAL_SUN_H
15 #define _SERIAL_SUN_H
16 
17 #include <linux/device.h>
18 #include <linux/serial_core.h>
19 #include <linux/console.h>
20 
21 /* Serial keyboard defines for L1-A processing... */
22 #define SUNKBD_RESET		0xff
23 #define SUNKBD_L1		0x01
24 #define SUNKBD_UP		0x80
25 #define SUNKBD_A		0x4d
26 
27 extern unsigned int suncore_mouse_baud_cflag_next(unsigned int, int *);
28 extern int suncore_mouse_baud_detection(unsigned char, int);
29 
30 extern int sunserial_register_minors(struct uart_driver *, int);
31 extern void sunserial_unregister_minors(struct uart_driver *, int);
32 
33 extern int sunserial_console_match(struct console *, struct device_node *,
34 				   struct uart_driver *, int, bool);
35 extern void sunserial_console_termios(struct console *,
36 				      struct device_node *);
37 
38 #endif /* !(_SERIAL_SUN_H) */
39