|
Data Structures |
| struct | screen_info |
| struct | tty_queue |
| struct | serial_struct |
| struct | tty_struct |
| struct | tty_ldisc |
Defines |
| #define | NR_CONSOLES 8 |
| #define | NR_LDISCS 16 |
| #define | ORIG_X (screen_info.orig_x) |
| #define | ORIG_Y (screen_info.orig_y) |
| #define | ORIG_VIDEO_PAGE (screen_info.orig_video_page) |
| #define | ORIG_VIDEO_MODE (screen_info.orig_video_mode) |
| #define | ORIG_VIDEO_COLS (screen_info.orig_video_cols) |
| #define | ORIG_VIDEO_EGA_AX (screen_info.orig_video_ega_ax) |
| #define | ORIG_VIDEO_EGA_BX (screen_info.orig_video_ega_bx) |
| #define | ORIG_VIDEO_EGA_CX (screen_info.orig_video_ega_cx) |
| #define | ORIG_VIDEO_LINES (screen_info.orig_video_lines) |
| #define | VIDEO_TYPE_MDA 0x10 |
| | Monochrome Text Display.
|
| #define | VIDEO_TYPE_CGA 0x11 |
| | CGA Display.
|
| #define | VIDEO_TYPE_EGAM 0x20 |
| | EGA/VGA in Monochrome Mode.
|
| #define | VIDEO_TYPE_EGAC 0x21 |
| | EGA/VGA in Color Mode.
|
| #define | __DISABLED_CHAR '\0' |
| #define | TTY_BUF_SIZE 1024 |
| | Must be a power of 2.
|
| #define | PORT_UNKNOWN 0 |
| #define | PORT_8250 1 |
| #define | PORT_16450 2 |
| #define | PORT_16550 3 |
| #define | PORT_16550A 4 |
| #define | PORT_MAX 4 |
| #define | ASYNC_HUP_NOTIFY 0x0001 |
| #define | ASYNC_FOURPORT 0x0002 |
| | Set OU1, OUT2 per AST Fourport settings.
|
| #define | ASYNC_SAK 0x0004 |
| | Secure Attention Key (Orange book).
|
| #define | ASYNC_SPLIT_TERMIOS 0x0008 |
| | Separate termios for dialin/callout.
|
| #define | ASYNC_SPD_MASK 0x0030 |
| #define | ASYNC_SPD_HI 0x0010 |
| | Use 56000 instead of 38400 bps.
|
| #define | ASYNC_SPD_VHI 0x0020 |
| | Use 115200 instead of 38400 bps.
|
| #define | ASYNC_SPD_CUST 0x0030 |
| | Use user-specified divisor.
|
| #define | ASYNC_SKIP_TEST 0x0040 |
| | Skip UART test during autoconfiguration.
|
| #define | ASYNC_AUTO_IRQ 0x0080 |
| | Do automatic IRQ during autoconfiguration.
|
| #define | ASYNC_SESSION_LOCKOUT 0x0100 |
| | Lock out cua opens based on session.
|
| #define | ASYNC_PGRP_LOCKOUT 0x0200 |
| | Lock out cua opens based on pgrp.
|
| #define | ASYNC_CALLOUT_NOHUP 0x0400 |
| | Don't do hangups for cua device.
|
| #define | ASYNC_FLAGS 0x0FFF |
| | Possible legal async flags.
|
| #define | ASYNC_USR_MASK 0x0430 |
| #define | ASYNC_INITIALIZED 0x80000000 |
| | Internal flags used only by kernel/chr_drv/serial.c Serial port was initialized.
|
| #define | ASYNC_CALLOUT_ACTIVE 0x40000000 |
| | Call out device is active.
|
| #define | ASYNC_NORMAL_ACTIVE 0x20000000 |
| | Normal device is active.
|
| #define | ASYNC_BOOT_AUTOCONF 0x10000000 |
| | Autoconfigure port on bootup.
|
| #define | ASYNC_CLOSING 0x08000000 |
| | Serial port is closing.
|
| #define | IS_A_CONSOLE(min) (((min) & 0xC0) == 0x00) |
| #define | IS_A_SERIAL(min) (((min) & 0xC0) == 0x40) |
| #define | IS_A_PTY(min) ((min) & 0x80) |
| #define | IS_A_PTY_MASTER(min) (((min) & 0xC0) == 0x80) |
| #define | IS_A_PTY_SLAVE(min) (((min) & 0xC0) == 0xC0) |
| #define | PTY_OTHER(min) ((min) ^ 0x40) |
| #define | SL_TO_DEV(line) ((line) | 0x40) |
| #define | DEV_TO_SL(min) ((min) & 0x3F) |
| #define | INC(a) ((a) = ((a)+1) & (TTY_BUF_SIZE-1)) |
| #define | DEC(a) ((a) = ((a)-1) & (TTY_BUF_SIZE-1)) |
| #define | EMPTY(a) ((a)->head == (a)->tail) |
| #define | LEFT(a) (((a)->tail-(a)->head-1)&(TTY_BUF_SIZE-1)) |
| #define | LAST(a) ((a)->buf[(TTY_BUF_SIZE-1)&((a)->head-1)]) |
| #define | FULL(a) (!LEFT(a)) |
| #define | CHARS(a) (((a)->head-(a)->tail)&(TTY_BUF_SIZE-1)) |
| #define | INTR_CHAR(tty) ((tty)->termios->c_cc[VINTR]) |
| #define | QUIT_CHAR(tty) ((tty)->termios->c_cc[VQUIT]) |
| #define | ERASE_CHAR(tty) ((tty)->termios->c_cc[VERASE]) |
| #define | KILL_CHAR(tty) ((tty)->termios->c_cc[VKILL]) |
| #define | EOF_CHAR(tty) ((tty)->termios->c_cc[VEOF]) |
| #define | TIME_CHAR(tty) ((tty)->termios->c_cc[VTIME]) |
| #define | MIN_CHAR(tty) ((tty)->termios->c_cc[VMIN]) |
| #define | SWTC_CHAR(tty) ((tty)->termios->c_cc[VSWTC]) |
| #define | START_CHAR(tty) ((tty)->termios->c_cc[VSTART]) |
| #define | STOP_CHAR(tty) ((tty)->termios->c_cc[VSTOP]) |
| #define | SUSP_CHAR(tty) ((tty)->termios->c_cc[VSUSP]) |
| #define | EOL_CHAR(tty) ((tty)->termios->c_cc[VEOL]) |
| #define | REPRINT_CHAR(tty) ((tty)->termios->c_cc[VREPRINT]) |
| #define | DISCARD_CHAR(tty) ((tty)->termios->c_cc[VDISCARD]) |
| #define | WERASE_CHAR(tty) ((tty)->termios->c_cc[VWERASE]) |
| #define | LNEXT_CHAR(tty) ((tty)->termios->c_cc[VLNEXT]) |
| #define | EOL2_CHAR(tty) ((tty)->termios->c_cc[VEOL2]) |
| #define | _I_FLAG(tty, f) ((tty)->termios->c_iflag & (f)) |
| #define | _O_FLAG(tty, f) ((tty)->termios->c_oflag & (f)) |
| #define | _C_FLAG(tty, f) ((tty)->termios->c_cflag & (f)) |
| #define | _L_FLAG(tty, f) ((tty)->termios->c_lflag & (f)) |
| #define | I_IGNBRK(tty) _I_FLAG((tty),IGNBRK) |
| #define | I_BRKINT(tty) _I_FLAG((tty),BRKINT) |
| #define | I_IGNPAR(tty) _I_FLAG((tty),IGNPAR) |
| #define | I_PARMRK(tty) _I_FLAG((tty),PARMRK) |
| #define | I_INPCK(tty) _I_FLAG((tty),INPCK) |
| #define | I_ISTRIP(tty) _I_FLAG((tty),ISTRIP) |
| #define | I_INLCR(tty) _I_FLAG((tty),INLCR) |
| #define | I_IGNCR(tty) _I_FLAG((tty),IGNCR) |
| #define | I_ICRNL(tty) _I_FLAG((tty),ICRNL) |
| #define | I_IUCLC(tty) _I_FLAG((tty),IUCLC) |
| #define | I_IXON(tty) _I_FLAG((tty),IXON) |
| #define | I_IXANY(tty) _I_FLAG((tty),IXANY) |
| #define | I_IXOFF(tty) _I_FLAG((tty),IXOFF) |
| #define | I_IMAXBEL(tty) _I_FLAG((tty),IMAXBEL) |
| #define | O_OPOST(tty) _O_FLAG((tty),OPOST) |
| #define | O_OLCUC(tty) _O_FLAG((tty),OLCUC) |
| #define | O_ONLCR(tty) _O_FLAG((tty),ONLCR) |
| #define | O_OCRNL(tty) _O_FLAG((tty),OCRNL) |
| #define | O_ONOCR(tty) _O_FLAG((tty),ONOCR) |
| #define | O_ONLRET(tty) _O_FLAG((tty),ONLRET) |
| #define | O_OFILL(tty) _O_FLAG((tty),OFILL) |
| #define | O_OFDEL(tty) _O_FLAG((tty),OFDEL) |
| #define | O_NLDLY(tty) _O_FLAG((tty),NLDLY) |
| #define | O_CRDLY(tty) _O_FLAG((tty),CRDLY) |
| #define | O_TABDLY(tty) _O_FLAG((tty),TABDLY) |
| #define | O_BSDLY(tty) _O_FLAG((tty),BSDLY) |
| #define | O_VTDLY(tty) _O_FLAG((tty),VTDLY) |
| #define | O_FFDLY(tty) _O_FLAG((tty),FFDLY) |
| #define | C_BAUD(tty) _C_FLAG((tty),CBAUD) |
| #define | C_CSIZE(tty) _C_FLAG((tty),CSIZE) |
| #define | C_CSTOPB(tty) _C_FLAG((tty),CSTOPB) |
| #define | C_CREAD(tty) _C_FLAG((tty),CREAD) |
| #define | C_PARENB(tty) _C_FLAG((tty),PARENB) |
| #define | C_PARODD(tty) _C_FLAG((tty),PARODD) |
| #define | C_HUPCL(tty) _C_FLAG((tty),HUPCL) |
| #define | C_CLOCAL(tty) _C_FLAG((tty),CLOCAL) |
| #define | C_CIBAUD(tty) _C_FLAG((tty),CIBAUD) |
| #define | C_CRTSCTS(tty) _C_FLAG((tty),CRTSCTS) |
| #define | L_ISIG(tty) _L_FLAG((tty),ISIG) |
| #define | L_ICANON(tty) _L_FLAG((tty),ICANON) |
| #define | L_XCASE(tty) _L_FLAG((tty),XCASE) |
| #define | L_ECHO(tty) _L_FLAG((tty),ECHO) |
| #define | L_ECHOE(tty) _L_FLAG((tty),ECHOE) |
| #define | L_ECHOK(tty) _L_FLAG((tty),ECHOK) |
| #define | L_ECHONL(tty) _L_FLAG((tty),ECHONL) |
| #define | L_NOFLSH(tty) _L_FLAG((tty),NOFLSH) |
| #define | L_TOSTOP(tty) _L_FLAG((tty),TOSTOP) |
| #define | L_ECHOCTL(tty) _L_FLAG((tty),ECHOCTL) |
| #define | L_ECHOPRT(tty) _L_FLAG((tty),ECHOPRT) |
| #define | L_ECHOKE(tty) _L_FLAG((tty),ECHOKE) |
| #define | L_FLUSHO(tty) _L_FLAG((tty),FLUSHO) |
| #define | L_PENDIN(tty) _L_FLAG((tty),PENDIN) |
| #define | L_IEXTEN(tty) _L_FLAG((tty),IEXTEN) |
| #define | LDISC_FLAG_DEFINED 0x00000001 |
| #define | TTY_THROTTLE_SQ_FULL 1 |
| #define | TTY_THROTTLE_SQ_AVAIL 2 |
| #define | TTY_THROTTLE_RQ_FULL 3 |
| #define | TTY_THROTTLE_RQ_AVAIL 4 |
| #define | SQ_THRESHOLD_LW 16 |
| #define | SQ_THRESHOLD_HW 768 |
| #define | RQ_THRESHOLD_LW 16 |
| #define | RQ_THRESHOLD_HW 768 |
| #define | TTY_WRITE_BUSY 0 |
| #define | TTY_READ_BUSY 1 |
| #define | TTY_SQ_THROTTLED 2 |
| #define | TTY_RQ_THROTTLED 3 |
| #define | TTY_IO_ERROR 4 |
| #define | TTY_SLAVE_CLOSED 5 |
| #define | TTY_EXCLUSIVE 6 |
| #define | TTY_BREAK 1 |
| #define | TTY_FRAME 2 |
| #define | TTY_PARITY 3 |
| #define | TTY_OVERRUN 4 |
| #define | TTY_WRITE_FLUSH(tty) tty_write_flush((tty)) |
| #define | TTY_READ_FLUSH(tty) tty_read_flush((tty)) |
| #define | WAKEUP_CHARS (3*TTY_BUF_SIZE/4) |
| #define | TTY_TABLE_IDX(nr) ((nr) ? (nr) : (fg_console+1)) |
| #define | TTY_TABLE(nr) (tty_table[TTY_TABLE_IDX(nr)]) |
| #define | INIT_C_CC "\003\034\177\025\004\0\1\0\021\023\032\0\022\017\027\026\0" |
Functions |
| void | put_tty_queue (unsigned char c, struct tty_queue *queue) |
| int | get_tty_queue (struct tty_queue *queue) |
| void | tty_write_flush (struct tty_struct *) |
| void | tty_read_flush (struct tty_struct *) |
| long | rs_init (long) |
| long | lp_init (long) |
| long | con_init (long) |
| long | tty_init (long) |
| void | flush_input (struct tty_struct *tty) |
| void | flush_output (struct tty_struct *tty) |
| void | wait_until_sent (struct tty_struct *tty, int timeout) |
| int | check_change (struct tty_struct *tty, int channel) |
| void | stop_tty (struct tty_struct *tty) |
| void | start_tty (struct tty_struct *tty) |
| int | tty_register_ldisc (int disc, struct tty_ldisc *new_ldisc) |
| int | tty_read_raw_data (struct tty_struct *tty, unsigned char *bufp, int buflen) |
| int | tty_write_data (struct tty_struct *tty, char *bufp, int buflen, void(*callback)(void *data), void *callarg) |
| int | tty_ioctl (struct inode *, struct file *, unsigned int, unsigned long) |
| int | is_orphaned_pgrp (int pgrp) |
| int | is_ignored (int sig) |
| int | tty_signal (int sig, struct tty_struct *tty) |
| void | tty_hangup (struct tty_struct *tty) |
| void | tty_vhangup (struct tty_struct *tty) |
| void | tty_unhangup (struct file *filp) |
| int | tty_hung_up_p (struct file *filp) |
| void | do_SAK (struct tty_struct *tty) |
| void | disassociate_ctty (int priv) |
| void | rs_write (struct tty_struct *tty) |
| | tty write functions
|
| void | con_write (struct tty_struct *tty) |
| int | rs_open (struct tty_struct *tty, struct file *filp) |
| | serial.c
|
| int | pty_open (struct tty_struct *tty, struct file *filp) |
| | pty.c
|
| int | con_open (struct tty_struct *tty, struct file *filp) |
| | console.c
|
| void | update_screen (int new_console) |
| void | blank_screen (void) |
| void | unblank_screen (void) |
| int | vt_ioctl (struct tty_struct *tty, struct file *file, unsigned int cmd, unsigned long arg) |
| | vt.c
|
Variables |
| screen_info | screen_info |
| tty_struct * | tty_table [] |
| termios * | tty_termios [] |
| termios * | termios_locked [] |
| int | tty_check_write [] |
| tty_struct * | redirect |
| tty_ldisc | ldiscs [] |
| int | fg_console |
| unsigned long | video_num_columns |
| unsigned long | video_num_lines |
| wait_queue * | keypress_wait |