• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/isdn/hardware/mISDN/

Lines Matching defs:bch

835 	struct bchannel *bch = hc->chan[ch].bch;
843 if (!bch)
850 recv_Bchannel_skb(bch, skb);
867 struct bchannel *bch = hc->chan[ch].bch;
876 if (!bch)
883 recv_Bchannel_skb(bch, skb);
1800 struct bchannel *bch = NULL;
1812 bch = hc->chan[ch].bch;
1813 if (!bch)
1817 if (!test_bit(FLG_TRANSPARENT, &bch->Flags))
1886 recv_Bchannel_skb(bch, skb);
1909 struct bchannel *bch;
1914 bch = hc->chan[ch].bch;
1916 if ((!dch) && (!bch))
1927 if (!test_bit(FLG_ACTIVE, &bch->Flags))
1929 sp = &bch->tx_skb;
1930 idxp = &bch->tx_idx;
1955 if (dch || test_bit(FLG_HDLC, &bch->Flags)) {
2005 if (bch && test_bit(FLG_TRANSPARENT, &bch->Flags))
2014 if (bch && (!test_bit(FLG_HDLC, &bch->Flags)) &&
2048 if (bch && test_bit(FLG_FILLEMPTY, &bch->Flags)
2049 && !test_bit(FLG_HDLC, &bch->Flags) && z2 == z1) {
2059 if (bch && (!test_bit(FLG_HDLC, &bch->Flags)) && (!*txpending)
2092 if (dch || test_bit(FLG_HDLC, &bch->Flags))
2118 if (dch || test_bit(FLG_HDLC, &bch->Flags)) {
2125 if (bch && test_bit(FLG_TRANSPARENT, &bch->Flags))
2126 confirm_Bsend(bch);
2130 if (bch && get_next_bframe(bch)) { /* hdlc is confirmed here */
2144 if (bch && test_bit(FLG_TRANSPARENT, &bch->Flags))
2157 struct bchannel *bch;
2162 bch = hc->chan[ch].bch;
2164 if ((!dch) && (!bch))
2172 if (!test_bit(FLG_ACTIVE, &bch->Flags))
2174 sp = &bch->rx_skb;
2175 maxlen = bch->maxlen;
2193 if (dch || test_bit(FLG_HDLC, &bch->Flags)) {
2213 if ((dch || test_bit(FLG_HDLC, &bch->Flags)) && f1 != f2)
2234 if (dch || test_bit(FLG_HDLC, &bch->Flags)) {
2304 recv_Bchannel(bch, MISDN_ID_ANY);
2335 /* only bch is transparent */
2336 recv_Bchannel(bch, hc->chan[ch].Zfill);
2612 struct bchannel *bch;
2620 bch = hc->chan[ch].bch;
2621 if (((!dch) && (!bch)) || (!hc->created[hc->chan[ch].port])) {
2632 if (bch && (r_irq_fifo_bl & (1 << j)) &&
2633 test_bit(FLG_ACTIVE, &bch->Flags)) {
2644 if (bch && (r_irq_fifo_bl & (1 << j)) &&
2645 test_bit(FLG_ACTIVE, &bch->Flags)) {
2969 if (hc->chan[ch].bch && hc->ctype != HFC_TYPE_E1) {
2978 if (hc->chan[ch].bch) {
2979 test_and_clear_bit(FLG_HDLC, &hc->chan[ch].bch->Flags);
2981 &hc->chan[ch].bch->Flags);
3082 if (hc->chan[ch].bch)
3084 &hc->chan[ch].bch->Flags);
3094 if (hc->ctype == HFC_TYPE_E1 || hc->chan[ch].bch) {
3110 if (hc->ctype == HFC_TYPE_E1 || hc->chan[ch].bch)
3117 if (hc->chan[ch].bch) {
3118 test_and_set_bit(FLG_HDLC, &hc->chan[ch].bch->Flags);
3407 deactivate_bchannel(struct bchannel *bch)
3409 struct hfc_multi *hc = bch->hw;
3413 mISDN_clear_bchannel(bch);
3414 hc->chan[bch->slot].coeff_count = 0;
3415 hc->chan[bch->slot].rx_off = 0;
3416 hc->chan[bch->slot].conf = -1;
3417 mode_hfcmulti(hc, bch->slot, ISDN_P_NONE, -1, 0, -1, 0);
3424 struct bchannel *bch = container_of(ch, struct bchannel, ch);
3425 struct hfc_multi *hc = bch->hw;
3436 ret = bchannel_senddata(bch, skb);
3439 hfcmulti_tx(hc, bch->slot);
3444 if (!test_bit(FLG_TRANSPARENT, &bch->Flags)) {
3455 __func__, bch->slot);
3458 if (!test_and_set_bit(FLG_ACTIVE, &bch->Flags)) {
3459 hc->chan[bch->slot].txpending = 0;
3460 ret = mode_hfcmulti(hc, bch->slot,
3462 hc->chan[bch->slot].slot_tx,
3463 hc->chan[bch->slot].bank_tx,
3464 hc->chan[bch->slot].slot_rx,
3465 hc->chan[bch->slot].bank_rx);
3511 deactivate_bchannel(bch); /* locked there */
3526 channel_bctrl(struct bchannel *bch, struct mISDN_ctrl_req *cq)
3531 struct hfc_multi *hc = bch->hw;
3544 hc->chan[bch->slot].rx_off = !!cq->p1;
3545 if (!hc->chan[bch->slot].rx_off) {
3547 HFC_outb_nodebug(hc, R_FIFO, (bch->slot << 1) | 1);
3554 __func__, bch->nr, hc->chan[bch->slot].rx_off);
3557 test_and_set_bit(FLG_FILLEMPTY, &bch->Flags);
3560 "off=%d)\n", __func__, bch->nr, !!cq->p1);
3594 hfcmulti_pcm(hc, bch->slot,
3609 hfcmulti_pcm(hc, bch->slot, -1, 0, -1, 0);
3617 hfcmulti_conf(hc, bch->slot, num);
3628 hfcmulti_conf(hc, bch->slot, -1);
3634 vpm_echocan_on(hc, bch->slot, cq->p1);
3644 vpm_echocan_off(hc, bch->slot);
3660 struct bchannel *bch = container_of(ch, struct bchannel, ch);
3661 struct hfc_multi *hc = bch->hw;
3665 if (bch->debug & DEBUG_HW)
3670 test_and_clear_bit(FLG_OPEN, &bch->Flags);
3671 if (test_bit(FLG_ACTIVE, &bch->Flags))
3672 deactivate_bchannel(bch); /* locked there */
3680 err = channel_bctrl(bch, arg);
4067 struct bchannel *bch;
4078 bch = hc->chan[ch].bch;
4079 if (!bch) {
4080 printk(KERN_ERR "%s:internal error ch %d has no bch\n",
4084 if (test_and_set_bit(FLG_OPEN, &bch->Flags))
4086 test_and_clear_bit(FLG_FILLEMPTY, &bch->Flags);
4087 bch->ch.protocol = rq->protocol;
4089 rq->ch = &bch->ch;
4540 if (hc->chan[i].bch) {
4545 pb = hc->chan[i].bch;
4546 hc->chan[i].bch = NULL;
4562 if (hc->chan[ci - 2].bch) {
4568 pb = hc->chan[ci - 2].bch;
4569 hc->chan[ci - 2].bch = NULL;
4576 if (hc->chan[ci - 1].bch) {
4582 pb = hc->chan[ci - 1].bch;
4583 hc->chan[ci - 1].bch = NULL;
4666 struct bchannel *bch;
4689 bch = kzalloc(sizeof(struct bchannel), GFP_KERNEL);
4690 if (!bch) {
4701 kfree(bch);
4704 bch->nr = ch;
4705 bch->slot = ch;
4706 bch->debug = debug;
4707 mISDN_initbchannel(bch, MAX_DATA_MEM);
4708 bch->hw = hc;
4709 bch->ch.send = handle_bmsg;
4710 bch->ch.ctrl = hfcm_bctrl;
4711 bch->ch.nr = ch;
4712 list_add(&bch->ch.list, &dch->dev.bchannels);
4713 hc->chan[ch].bch = bch;
4715 set_channelmap(bch->nr, dch->dev.channelmap);
4836 struct bchannel *bch;
4858 bch = kzalloc(sizeof(struct bchannel), GFP_KERNEL);
4859 if (!bch) {
4870 kfree(bch);
4873 bch->nr = ch + 1;
4874 bch->slot = i + ch;
4875 bch->debug = debug;
4876 mISDN_initbchannel(bch, MAX_DATA_MEM);
4877 bch->hw = hc;
4878 bch->ch.send = handle_bmsg;
4879 bch->ch.ctrl = hfcm_bctrl;
4880 bch->ch.nr = ch + 1;
4881 list_add(&bch->ch.list, &dch->dev.bchannels);
4882 hc->chan[i + ch].bch = bch;
4884 set_channelmap(bch->nr, dch->dev.channelmap);