diff options
Diffstat (limited to 'arch/um/include/shared/chan_kern.h')
-rw-r--r-- | arch/um/include/shared/chan_kern.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/arch/um/include/shared/chan_kern.h b/arch/um/include/shared/chan_kern.h new file mode 100644 index 000000000000..1e651457e049 --- /dev/null +++ b/arch/um/include/shared/chan_kern.h | |||
@@ -0,0 +1,50 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2000, 2001 Jeff Dike (jdike@karaya.com) | ||
3 | * Licensed under the GPL | ||
4 | */ | ||
5 | |||
6 | #ifndef __CHAN_KERN_H__ | ||
7 | #define __CHAN_KERN_H__ | ||
8 | |||
9 | #include "linux/tty.h" | ||
10 | #include "linux/list.h" | ||
11 | #include "linux/console.h" | ||
12 | #include "chan_user.h" | ||
13 | #include "line.h" | ||
14 | |||
15 | struct chan { | ||
16 | struct list_head list; | ||
17 | struct list_head free_list; | ||
18 | struct line *line; | ||
19 | char *dev; | ||
20 | unsigned int primary:1; | ||
21 | unsigned int input:1; | ||
22 | unsigned int output:1; | ||
23 | unsigned int opened:1; | ||
24 | unsigned int enabled:1; | ||
25 | int fd; | ||
26 | const struct chan_ops *ops; | ||
27 | void *data; | ||
28 | }; | ||
29 | |||
30 | extern void chan_interrupt(struct list_head *chans, struct delayed_work *task, | ||
31 | struct tty_struct *tty, int irq); | ||
32 | extern int parse_chan_pair(char *str, struct line *line, int device, | ||
33 | const struct chan_opts *opts, char **error_out); | ||
34 | extern int write_chan(struct list_head *chans, const char *buf, int len, | ||
35 | int write_irq); | ||
36 | extern int console_write_chan(struct list_head *chans, const char *buf, | ||
37 | int len); | ||
38 | extern int console_open_chan(struct line *line, struct console *co); | ||
39 | extern void deactivate_chan(struct list_head *chans, int irq); | ||
40 | extern void reactivate_chan(struct list_head *chans, int irq); | ||
41 | extern void chan_enable_winch(struct list_head *chans, struct tty_struct *tty); | ||
42 | extern int enable_chan(struct line *line); | ||
43 | extern void close_chan(struct list_head *chans, int delay_free_irq); | ||
44 | extern int chan_window_size(struct list_head *chans, | ||
45 | unsigned short *rows_out, | ||
46 | unsigned short *cols_out); | ||
47 | extern int chan_config_string(struct list_head *chans, char *str, int size, | ||
48 | char **error_out); | ||
49 | |||
50 | #endif | ||