linux/drivers/isdn/hisax/hisax_isac.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef __HISAX_ISAC_H__
   3#define __HISAX_ISAC_H__
   4
   5#include <linux/kernel.h>
   6#include "fsm.h"
   7#include "hisax_if.h"
   8
   9#define TIMER3_VALUE 7000
  10#define MAX_DFRAME_LEN_L1 300
  11
  12#define ISAC_IOM1       0
  13
  14struct isac {
  15        void *priv;
  16
  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;
  24
  25        u_char rcvbuf[MAX_DFRAME_LEN_L1];
  26        int rcvidx;
  27
  28        struct sk_buff *tx_skb;
  29        int tx_cnt;
  30
  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);
  35};
  36
  37void isac_init(struct isac *isac);
  38void isac_d_l2l1(struct hisax_if *hisax_d_if, int pr, void *arg);
  39
  40void isac_setup(struct isac *isac);
  41void isac_irq(struct isac *isac);
  42
  43void isacsx_setup(struct isac *isac);
  44void isacsx_irq(struct isac *isac);
  45
  46#endif
  47