Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/drivers/isdn/pcbit/edss1.h
15112 views
1
/*
2
* DSS.1 module definitions
3
*
4
* Copyright (C) 1996 Universidade de Lisboa
5
*
6
* Written by Pedro Roque Marques ([email protected])
7
*
8
* This software may be used and distributed according to the terms of
9
* the GNU General Public License, incorporated herein by reference.
10
*/
11
12
#ifndef EDSS1_H
13
#define EDSS1_H
14
15
/* ISDN states */
16
17
#define ST_NULL 0
18
#define ST_CALL_INIT 1 /* Call initiated */
19
#define ST_OVER_SEND 2 /* Overlap sending - Requests More Info 4 call */
20
#define ST_CALL_PROC 3 /* Call Proceeding */
21
#define ST_CALL_DELV 4
22
#define ST_CALL_PRES 6 /* Call Present - Received CONN.IND */
23
#define ST_CALL_RECV 7 /* Alerting sent */
24
#define ST_CONN_REQ 8 /* Answered - waiting 4 CONN.CONF */
25
#define ST_INCM_PROC 9
26
#define ST_ACTIVE 10
27
#define ST_DISC_REQ 11
28
#define ST_DISC_IND 12
29
#define ST_SUSP_REQ 15
30
#define ST_RESM_REQ 17
31
#define ST_RELS_REQ 19
32
#define ST_OVER_RECV 25
33
34
#define ST_ACTIVE_SELP 26 /* Select protocol on B-Channel */
35
#define ST_ACTIVE_ACTV 27 /* Activate B-channel protocol */
36
37
#define MAX_STATE ST_ACTIVE_ACTV
38
39
#define EV_NULL 0
40
#define EV_USR_SETUP_REQ 1
41
#define EV_USR_SETUP_RESP 2
42
#define EV_USR_PROCED_REQ 3
43
#define EV_USR_RELEASE_REQ 4
44
#define EV_USR_REJECT_REQ 4
45
46
#define EV_NET_SETUP 16
47
#define EV_NET_CALL_PROC 17
48
#define EV_NET_SETUP_ACK 18
49
#define EV_NET_CONN 19
50
#define EV_NET_CONN_ACK 20
51
52
#define EV_NET_SELP_RESP 21
53
#define EV_NET_ACTV_RESP 22
54
55
#define EV_NET_DISC 23
56
#define EV_NET_RELEASE 24
57
#define EV_NET_RELEASE_COMP 25
58
59
#define EV_TIMER 26
60
#define EV_ERROR 32
61
62
/*
63
* Cause values
64
* only the ones we use
65
*/
66
67
#define CAUSE_NORMAL 0x10U
68
#define CAUSE_NOCHAN 0x22U
69
70
struct callb_data {
71
unsigned short type;
72
union {
73
struct ConnInfo {
74
char *CalledPN;
75
char *CallingPN;
76
} setup;
77
unsigned short cause;
78
} data;
79
};
80
81
struct fsm_entry {
82
unsigned short init;
83
unsigned short final;
84
unsigned short event;
85
void (*callb)(struct pcbit_dev *, struct pcbit_chan *, struct callb_data*);
86
};
87
88
struct fsm_timer_entry {
89
unsigned short init;
90
unsigned long timeout; /* in seconds */
91
};
92
93
extern const char * const isdn_state_table[];
94
95
void pcbit_fsm_event(struct pcbit_dev *, struct pcbit_chan *,
96
unsigned short event, struct callb_data *);
97
char * strisdnevent(ushort ev);
98
99
#endif
100
101
102
103
104