diff options
author | Alan Cox <alan@linux.intel.com> | 2010-03-26 14:32:54 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-05-21 20:34:29 +0400 |
commit | e1eaea46bb4020b38a141b84f88565d4603f8dd0 (patch) | |
tree | ade3efe84cf4aff3cb29ec2ea2be30c97b141ad7 /include | |
parent | 1ff454ef9b1e852e8f4d295a68a715b1dddf233c (diff) | |
download | linux-e1eaea46bb4020b38a141b84f88565d4603f8dd0.tar.xz |
tty: n_gsm line discipline
Add an implementation of GSM 0710 MUX. The implementation currently supports
- Basic and advanced framing (as either end of the link)
- UI or UIH data frames
- Adaption layer 1-4 (1 and 2 via tty, 3 and 4 as skbuff lists)
- Modem and control messages including the correct retry process
- Flow control
and exposes the MUX channels as a set of virtual tty devices including modem
signals. This is an experimental driver.
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/gsmmux.h | 25 | ||||
-rw-r--r-- | include/linux/tty.h | 1 |
2 files changed, 26 insertions, 0 deletions
diff --git a/include/linux/gsmmux.h b/include/linux/gsmmux.h new file mode 100644 index 000000000000..378de4195caf --- /dev/null +++ b/include/linux/gsmmux.h @@ -0,0 +1,25 @@ +#ifndef _LINUX_GSMMUX_H +#define _LINUX_GSMMUX_H + +struct gsm_config +{ + unsigned int adaption; + unsigned int encapsulation; + unsigned int initiator; + unsigned int t1; + unsigned int t2; + unsigned int t3; + unsigned int n2; + unsigned int mru; + unsigned int mtu; + unsigned int k; + unsigned int i; + unsigned int unused[8]; /* Padding for expansion without + breaking stuff */ +}; + +#define GSMIOC_GETCONF _IOR('G', 0, struct gsm_config) +#define GSMIOC_SETCONF _IOW('G', 1, struct gsm_config) + + +#endif diff --git a/include/linux/tty.h b/include/linux/tty.h index 7e605e4b3da3..931078b73226 100644 --- a/include/linux/tty.h +++ b/include/linux/tty.h @@ -48,6 +48,7 @@ #define N_PPS 18 /* Pulse per Second */ #define N_V253 19 /* Codec control over voice modem */ #define N_CAIF 20 /* CAIF protocol for talking to modems */ +#define N_GSM0710 21 /* GSM 0710 Mux */ /* * This character is the same as _POSIX_VDISABLE: it cannot be used as |