aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/isdn/mISDN
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/isdn/mISDN')
-rw-r--r--drivers/isdn/mISDN/hwchannel.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/isdn/mISDN/hwchannel.c b/drivers/isdn/mISDN/hwchannel.c
index c74c363554c4..5c5ab478f66a 100644
--- a/drivers/isdn/mISDN/hwchannel.c
+++ b/drivers/isdn/mISDN/hwchannel.c
@@ -272,7 +272,7 @@ get_next_dframe(struct dchannel *dch)
272} 272}
273EXPORT_SYMBOL(get_next_dframe); 273EXPORT_SYMBOL(get_next_dframe);
274 274
275void 275static void
276confirm_Bsend(struct bchannel *bch) 276confirm_Bsend(struct bchannel *bch)
277{ 277{
278 struct sk_buff *skb; 278 struct sk_buff *skb;
@@ -294,7 +294,6 @@ confirm_Bsend(struct bchannel *bch)
294 skb_queue_tail(&bch->rqueue, skb); 294 skb_queue_tail(&bch->rqueue, skb);
295 schedule_event(bch, FLG_RECVQUEUE); 295 schedule_event(bch, FLG_RECVQUEUE);
296} 296}
297EXPORT_SYMBOL(confirm_Bsend);
298 297
299int 298int
300get_next_bframe(struct bchannel *bch) 299get_next_bframe(struct bchannel *bch)
@@ -305,8 +304,8 @@ get_next_bframe(struct bchannel *bch)
305 if (bch->tx_skb) { 304 if (bch->tx_skb) {
306 bch->next_skb = NULL; 305 bch->next_skb = NULL;
307 test_and_clear_bit(FLG_TX_NEXT, &bch->Flags); 306 test_and_clear_bit(FLG_TX_NEXT, &bch->Flags);
308 if (!test_bit(FLG_TRANSPARENT, &bch->Flags)) 307 /* confirm imediately to allow next data */
309 confirm_Bsend(bch); /* not for transparent */ 308 confirm_Bsend(bch);
310 return 1; 309 return 1;
311 } else { 310 } else {
312 test_and_clear_bit(FLG_TX_NEXT, &bch->Flags); 311 test_and_clear_bit(FLG_TX_NEXT, &bch->Flags);
@@ -395,6 +394,7 @@ bchannel_senddata(struct bchannel *ch, struct sk_buff *skb)
395 /* write to fifo */ 394 /* write to fifo */
396 ch->tx_skb = skb; 395 ch->tx_skb = skb;
397 ch->tx_idx = 0; 396 ch->tx_idx = 0;
397 confirm_Bsend(ch);
398 return 1; 398 return 1;
399 } 399 }
400} 400}