Linux 4.18.10
[linux/fpc-iii.git] / drivers / isdn / hisax / hisax_isac.h
blobd7301da97991ec786c2135cb39692da032bd2f52
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __HISAX_ISAC_H__
3 #define __HISAX_ISAC_H__
5 #include <linux/kernel.h>
6 #include "fsm.h"
7 #include "hisax_if.h"
9 #define TIMER3_VALUE 7000
10 #define MAX_DFRAME_LEN_L1 300
12 #define ISAC_IOM1 0
14 struct isac {
15 void *priv;
17 u_long flags;
18 struct hisax_d_if hisax_d_if;
19 struct FsmInst l1m;
20 struct FsmTimer timer;
21 u_char mocr;
22 u_char adf2;
23 int type;
25 u_char rcvbuf[MAX_DFRAME_LEN_L1];
26 int rcvidx;
28 struct sk_buff *tx_skb;
29 int tx_cnt;
31 u_char (*read_isac) (struct isac *, u_char);
32 void (*write_isac) (struct isac *, u_char, u_char);
33 void (*read_isac_fifo) (struct isac *, u_char *, int);
34 void (*write_isac_fifo)(struct isac *, u_char *, int);
37 void isac_init(struct isac *isac);
38 void isac_d_l2l1(struct hisax_if *hisax_d_if, int pr, void *arg);
40 void isac_setup(struct isac *isac);
41 void isac_irq(struct isac *isac);
43 void isacsx_setup(struct isac *isac);
44 void isacsx_irq(struct isac *isac);
46 #endif