diff options
Diffstat (limited to 'drivers/isdn/hardware/mISDN/hfcmulti.c')
-rw-r--r-- | drivers/isdn/hardware/mISDN/hfcmulti.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/isdn/hardware/mISDN/hfcmulti.c b/drivers/isdn/hardware/mISDN/hfcmulti.c index 3d4b36d2a31a..db9b04519829 100644 --- a/drivers/isdn/hardware/mISDN/hfcmulti.c +++ b/drivers/isdn/hardware/mISDN/hfcmulti.c | |||
@@ -3576,7 +3576,7 @@ channel_bctrl(struct bchannel *bch, struct mISDN_ctrl_req *cq) | |||
3576 | case MISDN_CTRL_GETOP: | 3576 | case MISDN_CTRL_GETOP: |
3577 | ret = mISDN_ctrl_bchannel(bch, cq); | 3577 | ret = mISDN_ctrl_bchannel(bch, cq); |
3578 | cq->op |= MISDN_CTRL_HFC_OP | MISDN_CTRL_HW_FEATURES_OP | | 3578 | cq->op |= MISDN_CTRL_HFC_OP | MISDN_CTRL_HW_FEATURES_OP | |
3579 | MISDN_CTRL_RX_OFF | MISDN_CTRL_FILL_EMPTY; | 3579 | MISDN_CTRL_RX_OFF; |
3580 | break; | 3580 | break; |
3581 | case MISDN_CTRL_RX_OFF: /* turn off / on rx stream */ | 3581 | case MISDN_CTRL_RX_OFF: /* turn off / on rx stream */ |
3582 | hc->chan[bch->slot].rx_off = !!cq->p1; | 3582 | hc->chan[bch->slot].rx_off = !!cq->p1; |
@@ -3591,11 +3591,10 @@ channel_bctrl(struct bchannel *bch, struct mISDN_ctrl_req *cq) | |||
3591 | printk(KERN_DEBUG "%s: RX_OFF request (nr=%d off=%d)\n", | 3591 | printk(KERN_DEBUG "%s: RX_OFF request (nr=%d off=%d)\n", |
3592 | __func__, bch->nr, hc->chan[bch->slot].rx_off); | 3592 | __func__, bch->nr, hc->chan[bch->slot].rx_off); |
3593 | break; | 3593 | break; |
3594 | case MISDN_CTRL_FILL_EMPTY: /* fill fifo, if empty */ | 3594 | case MISDN_CTRL_FILL_EMPTY: |
3595 | test_and_set_bit(FLG_FILLEMPTY, &bch->Flags); | 3595 | ret = mISDN_ctrl_bchannel(bch, cq); |
3596 | if (debug & DEBUG_HFCMULTI_MSG) | 3596 | hc->silence = bch->fill[0]; |
3597 | printk(KERN_DEBUG "%s: FILL_EMPTY request (nr=%d " | 3597 | memset(hc->silence_data, hc->silence, sizeof(hc->silence_data)); |
3598 | "off=%d)\n", __func__, bch->nr, !!cq->p1); | ||
3599 | break; | 3598 | break; |
3600 | case MISDN_CTRL_HW_FEATURES: /* fill features structure */ | 3599 | case MISDN_CTRL_HW_FEATURES: /* fill features structure */ |
3601 | if (debug & DEBUG_HFCMULTI_MSG) | 3600 | if (debug & DEBUG_HFCMULTI_MSG) |
@@ -4118,7 +4117,6 @@ open_bchannel(struct hfc_multi *hc, struct dchannel *dch, | |||
4118 | } | 4117 | } |
4119 | if (test_and_set_bit(FLG_OPEN, &bch->Flags)) | 4118 | if (test_and_set_bit(FLG_OPEN, &bch->Flags)) |
4120 | return -EBUSY; /* b-channel can be only open once */ | 4119 | return -EBUSY; /* b-channel can be only open once */ |
4121 | test_and_clear_bit(FLG_FILLEMPTY, &bch->Flags); | ||
4122 | bch->ch.protocol = rq->protocol; | 4120 | bch->ch.protocol = rq->protocol; |
4123 | hc->chan[ch].rx_off = 0; | 4121 | hc->chan[ch].rx_off = 0; |
4124 | rq->ch = &bch->ch; | 4122 | rq->ch = &bch->ch; |