dbddf429dc514 arch/um/drivers/chan.h (Alex Dewar 2019-08-25 10:49:16 +0100 1) /* SPDX-License-Identifier: GPL-2.0 */
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 2) /*
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 3) * Copyright (C) 2000, 2001 Jeff Dike (jdike@karaya.com)
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 4) */
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 5)
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 6) #ifndef __CHAN_KERN_H__
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 7) #define __CHAN_KERN_H__
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 8)
510c72a3cf51c arch/um/drivers/chan.h (Al Viro 2011-08-18 20:08:29 +0100 9) #include <linux/tty.h>
510c72a3cf51c arch/um/drivers/chan.h (Al Viro 2011-08-18 20:08:29 +0100 10) #include <linux/list.h>
510c72a3cf51c arch/um/drivers/chan.h (Al Viro 2011-08-18 20:08:29 +0100 11) #include <linux/console.h>
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 12) #include "chan_user.h"
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 13) #include "line.h"
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 14)
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 15) struct chan {
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 16) struct list_head list;
165dc5911627a arch/um/include/chan_kern.h (Jeff Dike 2006-01-06 00:18:57 -0800 17) struct list_head free_list;
165dc5911627a arch/um/include/chan_kern.h (Jeff Dike 2006-01-06 00:18:57 -0800 18) struct line *line;
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 19) char *dev;
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 20) unsigned int primary:1;
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 21) unsigned int input:1;
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 22) unsigned int output:1;
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 23) unsigned int opened:1;
165dc5911627a arch/um/include/chan_kern.h (Jeff Dike 2006-01-06 00:18:57 -0800 24) unsigned int enabled:1;
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 25) int fd;
5e7672ec3f059 arch/um/include/chan_kern.h (Jeff Dike 2006-09-27 01:50:33 -0700 26) const struct chan_ops *ops;
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 27) void *data;
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 28) };
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 29)
2e124b4a390ca arch/um/drivers/chan.h (Jiri Slaby 2013-01-03 15:53:06 +0100 30) extern void chan_interrupt(struct line *line, int irq);
165dc5911627a arch/um/include/chan_kern.h (Jeff Dike 2006-01-06 00:18:57 -0800 31) extern int parse_chan_pair(char *str, struct line *line, int device,
f28169d200017 arch/um/include/chan_kern.h (Jeff Dike 2007-02-10 01:43:53 -0800 32) const struct chan_opts *opts, char **error_out);
bed5e39c56f3f arch/um/drivers/chan.h (Al Viro 2011-09-08 10:49:34 -0400 33) extern int write_chan(struct chan *chan, const char *buf, int len,
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 34) int write_irq);
bed5e39c56f3f arch/um/drivers/chan.h (Al Viro 2011-09-08 10:49:34 -0400 35) extern int console_write_chan(struct chan *chan, const char *buf,
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 36) int len);
a52f362f864f5 arch/um/include/chan_kern.h (Jeff Dike 2007-02-10 01:44:06 -0800 37) extern int console_open_chan(struct line *line, struct console *co);
bed5e39c56f3f arch/um/drivers/chan.h (Al Viro 2011-09-08 10:49:34 -0400 38) extern void deactivate_chan(struct chan *chan, int irq);
bed5e39c56f3f arch/um/drivers/chan.h (Al Viro 2011-09-08 10:49:34 -0400 39) extern void reactivate_chan(struct chan *chan, int irq);
2116bda6ad937 arch/um/drivers/chan.h (Richard Weinberger 2013-03-11 10:05:45 +0100 40) extern void chan_enable_winch(struct chan *chan, struct tty_port *port);
d14ad81f800a5 arch/um/include/chan_kern.h (Jeff Dike 2007-07-15 23:38:54 -0700 41) extern int enable_chan(struct line *line);
10c890c0a3030 arch/um/drivers/chan.h (Al Viro 2011-09-10 08:39:18 -0400 42) extern void close_chan(struct line *line);
bed5e39c56f3f arch/um/drivers/chan.h (Al Viro 2011-09-08 10:49:34 -0400 43) extern int chan_window_size(struct line *line,
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 44) unsigned short *rows_out,
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 45) unsigned short *cols_out);
bed5e39c56f3f arch/um/drivers/chan.h (Al Viro 2011-09-08 10:49:34 -0400 46) extern int chan_config_string(struct line *line, char *str, int size,
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 47) char **error_out);
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 48)
^1da177e4c3f4 arch/um/include/chan_kern.h (Linus Torvalds 2005-04-16 15:20:36 -0700 49) #endif