18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * Liberally adapted from alpha/termios.h.  In particular, the c_cc[]
48c2ecf20Sopenharmony_ci * fields have been reordered so that termio & termios share the
58c2ecf20Sopenharmony_ci * common subset in the same order (for brain dead programs that don't
68c2ecf20Sopenharmony_ci * know or care about the differences).
78c2ecf20Sopenharmony_ci *
88c2ecf20Sopenharmony_ci * This program is free software; you can redistribute it and/or
98c2ecf20Sopenharmony_ci * modify it under the terms of the GNU General Public License
108c2ecf20Sopenharmony_ci * as published by the Free Software Foundation; either version
118c2ecf20Sopenharmony_ci * 2 of the License, or (at your option) any later version.
128c2ecf20Sopenharmony_ci */
138c2ecf20Sopenharmony_ci#ifndef _UAPI_ASM_POWERPC_TERMIOS_H
148c2ecf20Sopenharmony_ci#define _UAPI_ASM_POWERPC_TERMIOS_H
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci#include <asm/ioctls.h>
188c2ecf20Sopenharmony_ci#include <asm/termbits.h>
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_cistruct sgttyb {
218c2ecf20Sopenharmony_ci	char	sg_ispeed;
228c2ecf20Sopenharmony_ci	char	sg_ospeed;
238c2ecf20Sopenharmony_ci	char	sg_erase;
248c2ecf20Sopenharmony_ci	char	sg_kill;
258c2ecf20Sopenharmony_ci	short	sg_flags;
268c2ecf20Sopenharmony_ci};
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_cistruct tchars {
298c2ecf20Sopenharmony_ci	char	t_intrc;
308c2ecf20Sopenharmony_ci	char	t_quitc;
318c2ecf20Sopenharmony_ci	char	t_startc;
328c2ecf20Sopenharmony_ci	char	t_stopc;
338c2ecf20Sopenharmony_ci	char	t_eofc;
348c2ecf20Sopenharmony_ci	char	t_brkc;
358c2ecf20Sopenharmony_ci};
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_cistruct ltchars {
388c2ecf20Sopenharmony_ci	char	t_suspc;
398c2ecf20Sopenharmony_ci	char	t_dsuspc;
408c2ecf20Sopenharmony_ci	char	t_rprntc;
418c2ecf20Sopenharmony_ci	char	t_flushc;
428c2ecf20Sopenharmony_ci	char	t_werasc;
438c2ecf20Sopenharmony_ci	char	t_lnextc;
448c2ecf20Sopenharmony_ci};
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_cistruct winsize {
478c2ecf20Sopenharmony_ci	unsigned short ws_row;
488c2ecf20Sopenharmony_ci	unsigned short ws_col;
498c2ecf20Sopenharmony_ci	unsigned short ws_xpixel;
508c2ecf20Sopenharmony_ci	unsigned short ws_ypixel;
518c2ecf20Sopenharmony_ci};
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ci#define NCC 10
548c2ecf20Sopenharmony_cistruct termio {
558c2ecf20Sopenharmony_ci	unsigned short c_iflag;		/* input mode flags */
568c2ecf20Sopenharmony_ci	unsigned short c_oflag;		/* output mode flags */
578c2ecf20Sopenharmony_ci	unsigned short c_cflag;		/* control mode flags */
588c2ecf20Sopenharmony_ci	unsigned short c_lflag;		/* local mode flags */
598c2ecf20Sopenharmony_ci	unsigned char c_line;		/* line discipline */
608c2ecf20Sopenharmony_ci	unsigned char c_cc[NCC];	/* control characters */
618c2ecf20Sopenharmony_ci};
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ci/* c_cc characters */
648c2ecf20Sopenharmony_ci#define _VINTR	0
658c2ecf20Sopenharmony_ci#define _VQUIT	1
668c2ecf20Sopenharmony_ci#define _VERASE	2
678c2ecf20Sopenharmony_ci#define _VKILL	3
688c2ecf20Sopenharmony_ci#define _VEOF	4
698c2ecf20Sopenharmony_ci#define _VMIN	5
708c2ecf20Sopenharmony_ci#define _VEOL	6
718c2ecf20Sopenharmony_ci#define _VTIME	7
728c2ecf20Sopenharmony_ci#define _VEOL2	8
738c2ecf20Sopenharmony_ci#define _VSWTC	9
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ci
768c2ecf20Sopenharmony_ci
778c2ecf20Sopenharmony_ci#endif /* _UAPI_ASM_POWERPC_TERMIOS_H */
78