162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Liberally adapted from alpha/termios.h.  In particular, the c_cc[]
462306a36Sopenharmony_ci * fields have been reordered so that termio & termios share the
562306a36Sopenharmony_ci * common subset in the same order (for brain dead programs that don't
662306a36Sopenharmony_ci * know or care about the differences).
762306a36Sopenharmony_ci *
862306a36Sopenharmony_ci * This program is free software; you can redistribute it and/or
962306a36Sopenharmony_ci * modify it under the terms of the GNU General Public License
1062306a36Sopenharmony_ci * as published by the Free Software Foundation; either version
1162306a36Sopenharmony_ci * 2 of the License, or (at your option) any later version.
1262306a36Sopenharmony_ci */
1362306a36Sopenharmony_ci#ifndef _UAPI_ASM_POWERPC_TERMIOS_H
1462306a36Sopenharmony_ci#define _UAPI_ASM_POWERPC_TERMIOS_H
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci#include <asm/ioctls.h>
1862306a36Sopenharmony_ci#include <asm/termbits.h>
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_cistruct sgttyb {
2162306a36Sopenharmony_ci	char	sg_ispeed;
2262306a36Sopenharmony_ci	char	sg_ospeed;
2362306a36Sopenharmony_ci	char	sg_erase;
2462306a36Sopenharmony_ci	char	sg_kill;
2562306a36Sopenharmony_ci	short	sg_flags;
2662306a36Sopenharmony_ci};
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_cistruct tchars {
2962306a36Sopenharmony_ci	char	t_intrc;
3062306a36Sopenharmony_ci	char	t_quitc;
3162306a36Sopenharmony_ci	char	t_startc;
3262306a36Sopenharmony_ci	char	t_stopc;
3362306a36Sopenharmony_ci	char	t_eofc;
3462306a36Sopenharmony_ci	char	t_brkc;
3562306a36Sopenharmony_ci};
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_cistruct ltchars {
3862306a36Sopenharmony_ci	char	t_suspc;
3962306a36Sopenharmony_ci	char	t_dsuspc;
4062306a36Sopenharmony_ci	char	t_rprntc;
4162306a36Sopenharmony_ci	char	t_flushc;
4262306a36Sopenharmony_ci	char	t_werasc;
4362306a36Sopenharmony_ci	char	t_lnextc;
4462306a36Sopenharmony_ci};
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_cistruct winsize {
4762306a36Sopenharmony_ci	unsigned short ws_row;
4862306a36Sopenharmony_ci	unsigned short ws_col;
4962306a36Sopenharmony_ci	unsigned short ws_xpixel;
5062306a36Sopenharmony_ci	unsigned short ws_ypixel;
5162306a36Sopenharmony_ci};
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ci#define NCC 10
5462306a36Sopenharmony_cistruct termio {
5562306a36Sopenharmony_ci	unsigned short c_iflag;		/* input mode flags */
5662306a36Sopenharmony_ci	unsigned short c_oflag;		/* output mode flags */
5762306a36Sopenharmony_ci	unsigned short c_cflag;		/* control mode flags */
5862306a36Sopenharmony_ci	unsigned short c_lflag;		/* local mode flags */
5962306a36Sopenharmony_ci	unsigned char c_line;		/* line discipline */
6062306a36Sopenharmony_ci	unsigned char c_cc[NCC];	/* control characters */
6162306a36Sopenharmony_ci};
6262306a36Sopenharmony_ci
6362306a36Sopenharmony_ci/* c_cc characters */
6462306a36Sopenharmony_ci#define _VINTR	0
6562306a36Sopenharmony_ci#define _VQUIT	1
6662306a36Sopenharmony_ci#define _VERASE	2
6762306a36Sopenharmony_ci#define _VKILL	3
6862306a36Sopenharmony_ci#define _VEOF	4
6962306a36Sopenharmony_ci#define _VMIN	5
7062306a36Sopenharmony_ci#define _VEOL	6
7162306a36Sopenharmony_ci#define _VTIME	7
7262306a36Sopenharmony_ci#define _VEOL2	8
7362306a36Sopenharmony_ci#define _VSWTC	9
7462306a36Sopenharmony_ci
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ci#endif /* _UAPI_ASM_POWERPC_TERMIOS_H */
78