mISDN: Allow to set a minimum length for transparent data
[deliverable/linux.git] / include / linux / mISDNhw.h
index 4af841408fb5dd2bee2026f118e4ee372bcd2f80..226886cf31e7fd74ab94bcf9100750c879e29c81 100644 (file)
@@ -135,6 +135,9 @@ extern int  create_l1(struct dchannel *, dchannel_l1callback *);
 #define HW_TESTRX_RAW  0x9602
 #define HW_TESTRX_HDLC 0x9702
 #define HW_TESTRX_OFF  0x9802
+#define HW_TIMER3_IND  0x9902
+#define HW_TIMER3_VALUE        0x9a00
+#define HW_TIMER3_VMASK        0x00FF
 
 struct layer1;
 extern int     l1_event(struct layer1 *, u_int);
@@ -151,7 +154,12 @@ struct bchannel {
        struct timer_list       timer;
        /* receive data */
        struct sk_buff          *rx_skb;
-       int                     maxlen;
+       unsigned short          maxlen;
+       unsigned short          init_maxlen; /* initial value */
+       unsigned short          next_maxlen; /* pending value */
+       unsigned short          minlen; /* for transparent data */
+       unsigned short          init_minlen; /* initial value */
+       unsigned short          next_minlen; /* pending value */
        /* send data */
        struct sk_buff          *next_skb;
        struct sk_buff          *tx_skb;
@@ -166,20 +174,22 @@ struct bchannel {
 };
 
 extern int     mISDN_initdchannel(struct dchannel *, int, void *);
-extern int     mISDN_initbchannel(struct bchannel *, int);
+extern int     mISDN_initbchannel(struct bchannel *, unsigned short,
+                                  unsigned short);
 extern int     mISDN_freedchannel(struct dchannel *);
 extern void    mISDN_clear_bchannel(struct bchannel *);
 extern int     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 id);
+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 void    confirm_Bsend(struct bchannel *bch);
 extern int     get_next_bframe(struct bchannel *);
 extern int     get_next_dframe(struct dchannel *);
 
This page took 0.033258 seconds and 5 git commands to generate.