1 /* $Id: eicon_idi.h,v 1.1.4.1 2001/11/20 14:19:35 kai Exp $
3 * ISDN lowlevel-module for the Eicon active cards.
6 * Copyright 1998-2000 by Armin Schindler (mac@melware.de)
7 * Copyright 1999,2000 Cytronics & Melware (info@melware.de)
9 * This software may be used and distributed according to the terms
10 * of the GNU General Public License, incorporated herein by reference.
17 #include <linux/config.h>
24 #define AOC_IND 26 /* Advice of Charge */
25 #define PI 0x1e /* Progress Indicator */
26 #define NI 0x27 /* Notification Indicator */
28 #define CALL_HOLD 0x22
29 #define CALL_HOLD_ACK 0x24
31 /* defines for statectrl */
32 #define WAITING_FOR_HANGUP 0x01
33 #define HAVE_CONN_REQ 0x02
60 __u16 next __attribute__ ((packed));
65 __u16 Reference __attribute__ ((packed));
67 eicon_PBUFFER XBuffer;
71 __u16 next __attribute__ ((packed));
76 __u16 Reference __attribute__ ((packed));
81 __u16 next __attribute__ ((packed));
86 __u16 MLength __attribute__ ((packed));
87 __u16 Reference __attribute__ ((packed));
90 __u32 Ack __attribute__ ((packed));
91 eicon_PBUFFER RBuffer;
101 extern int idi_do_req(eicon_card *card, eicon_chan *chan, int cmd, int layer);
102 extern int idi_hangup(eicon_card *card, eicon_chan *chan);
103 extern int idi_connect_res(eicon_card *card, eicon_chan *chan);
104 extern int eicon_idi_listen_req(eicon_card *card, eicon_chan *chan);
105 extern int idi_connect_req(eicon_card *card, eicon_chan *chan, char *phone,
106 char *eazmsn, int si1, int si2);
108 extern void idi_handle_ack(eicon_card *card, struct sk_buff *skb);
109 extern void idi_handle_ind(eicon_card *card, struct sk_buff *skb);
110 extern int eicon_idi_manage(eicon_card *card, eicon_manifbuf *mb);
111 extern int idi_send_data(eicon_card *card, eicon_chan *chan, int ack, struct sk_buff *skb, int que, int chk);
112 extern void idi_audio_cmd(eicon_card *ccard, eicon_chan *chan, int cmd, u_char *value);
113 extern int capipmsg(eicon_card *card, eicon_chan *chan, capi_msg *cm);
114 #ifdef CONFIG_ISDN_TTY_FAX
115 extern void idi_fax_cmd(eicon_card *card, eicon_chan *chan);
116 extern int idi_faxdata_send(eicon_card *ccard, eicon_chan *chan, struct sk_buff *skb);