Blame view
include/linux/generic_serial.h
3.05 KB
1da177e4c Linux-2.6.12-rc2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 |
/* * generic_serial.h * * Copyright (C) 1998 R.E.Wolff@BitWizard.nl * * written for the SX serial driver. * Contains the code that should be shared over all the serial drivers. * * Version 0.1 -- December, 1998. */ #ifndef GENERIC_SERIAL_H #define GENERIC_SERIAL_H |
f2999e4ea Export only the a... |
14 |
#ifdef __KERNEL__ |
81861d78c [PATCH] sem2mutex... |
15 |
#include <linux/mutex.h> |
b5391e29f gs: use tty_port |
16 |
#include <linux/tty.h> |
81861d78c [PATCH] sem2mutex... |
17 |
|
1da177e4c Linux-2.6.12-rc2 |
18 19 20 21 22 |
struct real_driver { void (*disable_tx_interrupts) (void *); void (*enable_tx_interrupts) (void *); void (*disable_rx_interrupts) (void *); void (*enable_rx_interrupts) (void *); |
1da177e4c Linux-2.6.12-rc2 |
23 24 25 26 27 28 29 30 31 32 33 34 |
void (*shutdown_port) (void*); int (*set_real_termios) (void*); int (*chars_in_buffer) (void*); void (*close) (void*); void (*hungup) (void*); void (*getserial) (void*, struct serial_struct *sp); }; struct gs_port { int magic; |
b5391e29f gs: use tty_port |
35 |
struct tty_port port; |
1da177e4c Linux-2.6.12-rc2 |
36 37 38 39 |
unsigned char *xmit_buf; int xmit_head; int xmit_tail; int xmit_cnt; |
81861d78c [PATCH] sem2mutex... |
40 |
struct mutex port_write_mutex; |
1da177e4c Linux-2.6.12-rc2 |
41 42 43 44 45 46 47 48 49 50 |
unsigned long event; unsigned short closing_wait; int close_delay; struct real_driver *rd; int wakeup_chars; int baud_base; int baud; int custom_divisor; spinlock_t driver_lock; }; |
f2999e4ea Export only the a... |
51 |
#endif /* __KERNEL__ */ |
1da177e4c Linux-2.6.12-rc2 |
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
/* Flags */ /* Warning: serial.h defines some ASYNC_ flags, they say they are "only" used in serial.c, but they are also used in all other serial drivers. Make sure they don't clash with these here... */ #define GS_TX_INTEN 0x00800000 #define GS_RX_INTEN 0x00400000 #define GS_ACTIVE 0x00200000 #define GS_TYPE_NORMAL 1 #define GS_DEBUG_FLUSH 0x00000001 #define GS_DEBUG_BTR 0x00000002 #define GS_DEBUG_TERMIOS 0x00000004 #define GS_DEBUG_STUFF 0x00000008 #define GS_DEBUG_CLOSE 0x00000010 #define GS_DEBUG_FLOW 0x00000020 #define GS_DEBUG_WRITE 0x00000040 |
f2999e4ea Export only the a... |
72 |
#ifdef __KERNEL__ |
76b25a550 char: switch gs, ... |
73 |
int gs_put_char(struct tty_struct *tty, unsigned char ch); |
1da177e4c Linux-2.6.12-rc2 |
74 75 76 77 78 79 80 81 82 83 84 85 |
int gs_write(struct tty_struct *tty, const unsigned char *buf, int count); int gs_write_room(struct tty_struct *tty); int gs_chars_in_buffer(struct tty_struct *tty); void gs_flush_buffer(struct tty_struct *tty); void gs_flush_chars(struct tty_struct *tty); void gs_stop(struct tty_struct *tty); void gs_start(struct tty_struct *tty); void gs_hangup(struct tty_struct *tty); int gs_block_til_ready(void *port, struct file *filp); void gs_close(struct tty_struct *tty, struct file *filp); void gs_set_termios (struct tty_struct * tty, |
606d099cd [PATCH] tty: swit... |
86 |
struct ktermios * old_termios); |
1da177e4c Linux-2.6.12-rc2 |
87 88 89 90 |
int gs_init_port(struct gs_port *port); int gs_setserial(struct gs_port *port, struct serial_struct __user *sp); int gs_getserial(struct gs_port *port, struct serial_struct __user *sp); void gs_got_break(struct gs_port *port); |
f2999e4ea Export only the a... |
91 |
#endif /* __KERNEL__ */ |
1da177e4c Linux-2.6.12-rc2 |
92 |
#endif |