1 #ifndef __HISAX_ISAC_H__ 2 #define __HISAX_ISAC_H__ 3 4 #include <linux/kernel.h> 5 #include "fsm.h" 6 #include "hisax_if.h" 7 8 #define TIMER3_VALUE 7000 9 #define MAX_DFRAME_LEN_L1 300 10 11 #define ISAC_IOM1 0 12 13 struct isac { 14 void *priv; 15 16 u_long flags; 17 struct hisax_d_if hisax_d_if; 18 struct FsmInst l1m; 19 struct FsmTimer timer; 20 u_char mocr; 21 u_char adf2; 22 int type; 23 24 u_char rcvbuf[MAX_DFRAME_LEN_L1]; 25 int rcvidx; 26 27 struct sk_buff *tx_skb; 28 int tx_cnt; 29 30 u_char (*read_isac) (struct isac *, u_char); 31 void (*write_isac) (struct isac *, u_char, u_char); 32 void (*read_isac_fifo) (struct isac *, u_char *, int); 33 void (*write_isac_fifo)(struct isac *, u_char *, int); 34 }; 35 36 void isac_init(struct isac *isac); 37 void isac_d_l2l1(struct hisax_if *hisax_d_if, int pr, void *arg); 38 39 void isac_setup(struct isac *isac); 40 void isac_irq(struct isac *isac); 41 42 void isacsx_setup(struct isac *isac); 43 void isacsx_irq(struct isac *isac); 44 45 #endif 46