Lines Matching refs:ch
54 isdnloop_bchan_send(isdnloop_card *card, int ch) in isdnloop_bchan_send() argument
56 isdnloop_card *rcard = card->rcard[ch]; in isdnloop_bchan_send()
57 int rch = card->rch[ch], len, ack; in isdnloop_bchan_send()
61 while (card->sndcount[ch]) { in isdnloop_bchan_send()
62 skb = skb_dequeue(&card->bqueue[ch]); in isdnloop_bchan_send()
65 card->sndcount[ch] -= len; in isdnloop_bchan_send()
68 cmd.arg = ch; in isdnloop_bchan_send()
80 card->sndcount[ch] = 0; in isdnloop_bchan_send()
315 int ch; in isdnloop_polldchan() local
339 ch = (card->imsg[1] - '0') - 1; in isdnloop_polldchan()
341 isdnloop_parse_status(p, ch, card); in isdnloop_polldchan()
471 isdnloop_fake(isdnloop_card *card, char *s, int ch) in isdnloop_fake() argument
474 int len = strlen(s) + ((ch >= 0) ? 3 : 0); in isdnloop_fake()
480 if (ch >= 0) in isdnloop_fake()
481 sprintf(skb_put(skb, 3), "%02d;", ch); in isdnloop_fake()
569 isdnloop_atimeout(isdnloop_card *card, int ch) in isdnloop_atimeout() argument
576 isdnloop_fake(card->rcard[ch], "DDIS_I", card->rch[ch] + 1); in isdnloop_atimeout()
577 card->rcard[ch]->rcard[card->rch[ch]] = NULL; in isdnloop_atimeout()
578 card->rcard[ch] = NULL; in isdnloop_atimeout()
580 isdnloop_fake(card, "DDIS_I", ch + 1); in isdnloop_atimeout()
583 isdnloop_fake(card, buf, ch + 1); in isdnloop_atimeout()
615 isdnloop_start_ctimer(isdnloop_card *card, int ch) in isdnloop_start_ctimer() argument
620 init_timer(&card->c_timer[ch]); in isdnloop_start_ctimer()
621 card->c_timer[ch].expires = jiffies + ISDNLOOP_TIMER_ALERTWAIT; in isdnloop_start_ctimer()
622 if (ch) in isdnloop_start_ctimer()
623 card->c_timer[ch].function = isdnloop_atimeout1; in isdnloop_start_ctimer()
625 card->c_timer[ch].function = isdnloop_atimeout0; in isdnloop_start_ctimer()
626 card->c_timer[ch].data = (unsigned long) card; in isdnloop_start_ctimer()
627 add_timer(&card->c_timer[ch]); in isdnloop_start_ctimer()
639 isdnloop_kill_ctimer(isdnloop_card *card, int ch) in isdnloop_kill_ctimer() argument
644 del_timer(&card->c_timer[ch]); in isdnloop_kill_ctimer()
670 int ch; in isdnloop_try_call() local
678 for (ch = 0; ch < 2; ch++) { in isdnloop_try_call()
680 if ((cc == card) && (ch == lch)) in isdnloop_try_call()
690 e = cc->eazlist[ch]; in isdnloop_try_call()
701 if (!(cc->rcard[ch])) { in isdnloop_try_call()
703 if (!(si2bit[cmd->parm.setup.si1] & cc->sil[ch])) { in isdnloop_try_call()
708 cc->rcard[ch] = card; in isdnloop_try_call()
709 cc->rch[ch] = lch; in isdnloop_try_call()
711 card->rch[lch] = ch; in isdnloop_try_call()
717 if (ch == 1) in isdnloop_try_call()
785 int ch; in isdnloop_parse_cmd() local
791 ch = card->omsg[1] - '0'; in isdnloop_parse_cmd()
792 if ((ch < 0) || (ch > 2)) { in isdnloop_parse_cmd()
800 if (s->command && (ch != 0)) { in isdnloop_parse_cmd()
813 if (card->rcard[ch - 1]) { in isdnloop_parse_cmd()
814 isdnloop_fake(card->rcard[ch - 1], "BCON_I", in isdnloop_parse_cmd()
815 card->rch[ch - 1] + 1); in isdnloop_parse_cmd()
816 isdnloop_fake(card, "BCON_C", ch); in isdnloop_parse_cmd()
821 if (card->rcard[ch - 1]) { in isdnloop_parse_cmd()
822 isdnloop_fake(card->rcard[ch - 1], "BCON_C", in isdnloop_parse_cmd()
823 card->rch[ch - 1] + 1); in isdnloop_parse_cmd()
828 isdnloop_fake(card, "BDIS_C", ch); in isdnloop_parse_cmd()
829 if (card->rcard[ch - 1]) { in isdnloop_parse_cmd()
830 isdnloop_fake(card->rcard[ch - 1], "BDIS_I", in isdnloop_parse_cmd()
831 card->rch[ch - 1] + 1); in isdnloop_parse_cmd()
836 isdnloop_kill_ctimer(card, ch - 1); in isdnloop_parse_cmd()
837 if (card->rcard[ch - 1]) { in isdnloop_parse_cmd()
838 isdnloop_kill_ctimer(card->rcard[ch - 1], card->rch[ch - 1]); in isdnloop_parse_cmd()
839 isdnloop_fake(card->rcard[ch - 1], "DCON_C", in isdnloop_parse_cmd()
840 card->rch[ch - 1] + 1); in isdnloop_parse_cmd()
841 isdnloop_fake(card, "DCON_C", ch); in isdnloop_parse_cmd()
846 isdnloop_kill_ctimer(card, ch - 1); in isdnloop_parse_cmd()
847 if (card->rcard[ch - 1]) { in isdnloop_parse_cmd()
848 isdnloop_kill_ctimer(card->rcard[ch - 1], card->rch[ch - 1]); in isdnloop_parse_cmd()
849 isdnloop_fake(card->rcard[ch - 1], "DDIS_I", in isdnloop_parse_cmd()
850 card->rch[ch - 1] + 1); in isdnloop_parse_cmd()
851 card->rcard[ch - 1] = NULL; in isdnloop_parse_cmd()
853 isdnloop_fake(card, "DDIS_C", ch); in isdnloop_parse_cmd()
865 switch (isdnloop_try_call(card, p, ch - 1, &cmd)) { in isdnloop_parse_cmd()
873 isdnloop_vstphone(card->rcard[ch - 1], in isdnloop_parse_cmd()
875 isdnloop_fake(card->rcard[ch - 1], buf, card->rch[ch - 1] + 1); in isdnloop_parse_cmd()
879 isdnloop_start_ctimer(card, ch - 1); in isdnloop_parse_cmd()
883 isdnloop_fake(card, "DDIS_I", ch); in isdnloop_parse_cmd()
885 isdnloop_fake(card, buf, ch); in isdnloop_parse_cmd()
889 isdnloop_fake(card, "DDIS_I", ch); in isdnloop_parse_cmd()
891 isdnloop_fake(card, buf, ch); in isdnloop_parse_cmd()
897 card->eazlist[ch - 1][0] = '\0'; in isdnloop_parse_cmd()
904 strcpy(card->eazlist[ch - 1], p); in isdnloop_parse_cmd()
908 sprintf(buf, "EAZ-LIST: %s", card->eazlist[ch - 1]); in isdnloop_parse_cmd()
909 isdnloop_fake(card, buf, ch + 1); in isdnloop_parse_cmd()
923 card->sil[ch - 1] |= si2bit[*p - '0']; in isdnloop_parse_cmd()
934 if (card->sil[ch - 1] & (1 << i)) in isdnloop_parse_cmd()
936 isdnloop_fake(card, buf, ch + 1); in isdnloop_parse_cmd()
940 card->sil[ch - 1] = 0; in isdnloop_parse_cmd()