#ifndef MISDNHW_H
#define MISDNHW_H
#include <linux/mISDNif.h>
#include <linux/timer.h>
#define DEBUG_HW …
#define DEBUG_HW_OPEN …
#define DEBUG_HW_DCHANNEL …
#define DEBUG_HW_DFIFO …
#define DEBUG_HW_BCHANNEL …
#define DEBUG_HW_BFIFO …
#define MAX_DFRAME_LEN_L1 …
#define MAX_MON_FRAME …
#define MAX_LOG_SPACE …
#define MISDN_COPY_SIZE …
#define FLG_TX_BUSY …
#define FLG_TX_NEXT …
#define FLG_L1_BUSY …
#define FLG_L2_ACTIVATED …
#define FLG_OPEN …
#define FLG_ACTIVE …
#define FLG_BUSY_TIMER …
#define FLG_DCHANNEL …
#define FLG_BCHANNEL …
#define FLG_ECHANNEL …
#define FLG_TRANSPARENT …
#define FLG_HDLC …
#define FLG_L2DATA …
#define FLG_ORIGIN …
#define FLG_FILLEMPTY …
#define FLG_ARCOFI_TIMER …
#define FLG_ARCOFI_ERROR …
#define FLG_INITIALIZED …
#define FLG_DLEETX …
#define FLG_LASTDLE …
#define FLG_FIRST …
#define FLG_LASTDATA …
#define FLG_NMD_DATA …
#define FLG_FTI_RUN …
#define FLG_LL_OK …
#define FLG_LL_CONN …
#define FLG_DTMFSEND …
#define FLG_TX_EMPTY …
#define FLG_RX_OFF …
#define FLG_RECVQUEUE …
#define FLG_PHCHANGE …
#define schedule_event(s, ev) …
struct dchannel { … };
dchannel_l1callback;
extern int create_l1(struct dchannel *, dchannel_l1callback *);
#define INFO0 …
#define INFO1 …
#define INFO2 …
#define INFO3_P8 …
#define INFO3_P10 …
#define INFO4_P8 …
#define INFO4_P10 …
#define LOSTFRAMING …
#define ANYSIGNAL …
#define HW_POWERDOWN …
#define HW_RESET_REQ …
#define HW_POWERUP_REQ …
#define HW_DEACT_REQ …
#define HW_ACTIVATE_REQ …
#define HW_D_NOBLOCKED …
#define HW_RESET_IND …
#define HW_POWERUP_IND …
#define HW_DEACT_IND …
#define HW_ACTIVATE_IND …
#define HW_DEACT_CNF …
#define HW_TESTLOOP …
#define HW_TESTRX_RAW …
#define HW_TESTRX_HDLC …
#define HW_TESTRX_OFF …
#define HW_TIMER3_IND …
#define HW_TIMER3_VALUE …
#define HW_TIMER3_VMASK …
struct layer1;
extern int l1_event(struct layer1 *, u_int);
#define MISDN_BCH_FILL_SIZE …
struct bchannel { … };
extern int mISDN_initdchannel(struct dchannel *, int, void *);
extern int mISDN_initbchannel(struct bchannel *, unsigned short,
unsigned short);
extern int mISDN_freedchannel(struct dchannel *);
extern void mISDN_clear_bchannel(struct bchannel *);
extern void mISDN_freebchannel(struct bchannel *);
extern int mISDN_ctrl_bchannel(struct bchannel *, struct mISDN_ctrl_req *);
extern void queue_ch_frame(struct mISDNchannel *, u_int,
int, struct sk_buff *);
extern int dchannel_senddata(struct dchannel *, struct sk_buff *);
extern int bchannel_senddata(struct bchannel *, struct sk_buff *);
extern int bchannel_get_rxbuf(struct bchannel *, int);
extern void recv_Dchannel(struct dchannel *);
extern void recv_Echannel(struct dchannel *, struct dchannel *);
extern void recv_Bchannel(struct bchannel *, unsigned int, bool);
extern void recv_Dchannel_skb(struct dchannel *, struct sk_buff *);
extern void recv_Bchannel_skb(struct bchannel *, struct sk_buff *);
extern int get_next_bframe(struct bchannel *);
extern int get_next_dframe(struct dchannel *);
#endif