linux/drivers/isdn/hisax/hisax_isac.h
<<
>>
Prefs
   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
  13struct 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
  36void isac_init(struct isac *isac);
  37void isac_d_l2l1(struct hisax_if *hisax_d_if, int pr, void *arg);
  38
  39void isac_setup(struct isac *isac);
  40void isac_irq(struct isac *isac);
  41
  42void isacsx_setup(struct isac *isac);
  43void isacsx_irq(struct isac *isac);
  44
  45#endif
  46