linux/arch/um/include/shared/chan_kern.h
<<
>>
Prefs
   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
  15struct 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
  30extern void chan_interrupt(struct list_head *chans, struct delayed_work *task,
  31                           struct tty_struct *tty, int irq);
  32extern int parse_chan_pair(char *str, struct line *line, int device,
  33                           const struct chan_opts *opts, char **error_out);
  34extern int write_chan(struct list_head *chans, const char *buf, int len,
  35                             int write_irq);
  36extern int console_write_chan(struct list_head *chans, const char *buf, 
  37                              int len);
  38extern int console_open_chan(struct line *line, struct console *co);
  39extern void deactivate_chan(struct list_head *chans, int irq);
  40extern void reactivate_chan(struct list_head *chans, int irq);
  41extern void chan_enable_winch(struct list_head *chans, struct tty_struct *tty);
  42extern int enable_chan(struct line *line);
  43extern void close_chan(struct list_head *chans, int delay_free_irq);
  44extern int chan_window_size(struct list_head *chans, 
  45                             unsigned short *rows_out, 
  46                             unsigned short *cols_out);
  47extern int chan_config_string(struct list_head *chans, char *str, int size,
  48                              char **error_out);
  49
  50#endif
  51