Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
0002 /*
0003  * This file is subject to the terms and conditions of the GNU General Public
0004  * License.  See the file "COPYING" in the main directory of this archive
0005  * for more details.
0006  *
0007  * Copyright (C) 1995, 1996, 2000, 2001 by Ralf Baechle
0008  * Copyright (C) 2000, 2001 Silicon Graphics, Inc.
0009  */
0010 #ifndef _UAPI_ASM_TERMIOS_H
0011 #define _UAPI_ASM_TERMIOS_H
0012 
0013 #include <linux/errno.h>
0014 #include <asm/termbits.h>
0015 #include <asm/ioctls.h>
0016 
0017 struct sgttyb {
0018     char    sg_ispeed;
0019     char    sg_ospeed;
0020     char    sg_erase;
0021     char    sg_kill;
0022     int sg_flags;   /* SGI special - int, not short */
0023 };
0024 
0025 struct tchars {
0026     char    t_intrc;
0027     char    t_quitc;
0028     char    t_startc;
0029     char    t_stopc;
0030     char    t_eofc;
0031     char    t_brkc;
0032 };
0033 
0034 struct ltchars {
0035     char    t_suspc;    /* stop process signal */
0036     char    t_dsuspc;   /* delayed stop process signal */
0037     char    t_rprntc;   /* reprint line */
0038     char    t_flushc;   /* flush output (toggles) */
0039     char    t_werasc;   /* word erase */
0040     char    t_lnextc;   /* literal next character */
0041 };
0042 
0043 /* TIOCGSIZE, TIOCSSIZE not defined yet.  Only needed for SunOS source
0044    compatibility anyway ... */
0045 
0046 struct winsize {
0047     unsigned short ws_row;
0048     unsigned short ws_col;
0049     unsigned short ws_xpixel;
0050     unsigned short ws_ypixel;
0051 };
0052 
0053 #define NCC 8
0054 struct termio {
0055     unsigned short c_iflag;     /* input mode flags */
0056     unsigned short c_oflag;     /* output mode flags */
0057     unsigned short c_cflag;     /* control mode flags */
0058     unsigned short c_lflag;     /* local mode flags */
0059     char c_line;            /* line discipline */
0060     unsigned char c_cc[NCCS];   /* control characters */
0061 };
0062 
0063 
0064 /* modem lines */
0065 #define TIOCM_LE    0x001       /* line enable */
0066 #define TIOCM_DTR   0x002       /* data terminal ready */
0067 #define TIOCM_RTS   0x004       /* request to send */
0068 #define TIOCM_ST    0x010       /* secondary transmit */
0069 #define TIOCM_SR    0x020       /* secondary receive */
0070 #define TIOCM_CTS   0x040       /* clear to send */
0071 #define TIOCM_CAR   0x100       /* carrier detect */
0072 #define TIOCM_CD    TIOCM_CAR
0073 #define TIOCM_RNG   0x200       /* ring */
0074 #define TIOCM_RI    TIOCM_RNG
0075 #define TIOCM_DSR   0x400       /* data set ready */
0076 #define TIOCM_OUT1  0x2000
0077 #define TIOCM_OUT2  0x4000
0078 #define TIOCM_LOOP  0x8000
0079 
0080 
0081 #endif /* _UAPI_ASM_TERMIOS_H */