Lines Matching refs:di
220 isdn_dc2minor(int di, int ch) in isdn_dc2minor() argument
224 if (dev->chanmap[i] == ch && dev->drvmap[i] == di) in isdn_dc2minor()
294 isdn_receive_skb_callback(int di, int channel, struct sk_buff *skb) in isdn_receive_skb_callback() argument
298 if ((i = isdn_dc2minor(di, channel)) == -1) { in isdn_receive_skb_callback()
323 if (isdn_tty_rcv_skb(i, di, channel, skb)) in isdn_receive_skb_callback()
325 wake_up_interruptible(&dev->drv[di]->rcv_waitq[channel]); in isdn_receive_skb_callback()
381 isdn_all_eaz(int di, int ch) in isdn_all_eaz() argument
385 if (di < 0) in isdn_all_eaz()
387 cmd.driver = di; in isdn_all_eaz()
415 int di; in isdn_status_callback() local
423 di = c->driver; in isdn_status_callback()
424 i = isdn_dc2minor(di, c->arg); in isdn_status_callback()
437 wake_up_interruptible(&dev->drv[di]->snd_waitq[c->arg]); in isdn_status_callback()
440 dev->drv[di]->stavail += c->arg; in isdn_status_callback()
441 wake_up_interruptible(&dev->drv[di]->st_waitq); in isdn_status_callback()
444 dev->drv[di]->flags |= DRV_FLAG_RUNNING; in isdn_status_callback()
446 if (dev->drvmap[i] == di) in isdn_status_callback()
447 isdn_all_eaz(di, dev->chanmap[i]); in isdn_status_callback()
451 dev->drv[di]->flags &= ~DRV_FLAG_RUNNING; in isdn_status_callback()
457 printk(KERN_DEBUG "ICALL (net): %d %ld %s\n", di, c->arg, c->parm.num); in isdn_status_callback()
460 cmd.driver = di; in isdn_status_callback()
467 r = ((c->command == ISDN_STAT_ICALLW) ? 0 : isdn_net_find_icall(di, c->arg, i, &c->parm.setup)); in isdn_status_callback()
476 if ((retval = isdn_tty_find_icall(di, c->arg, &c->parm.setup))) return (retval); in isdn_status_callback()
482 if ((!retval) && (dev->drv[di]->flags & DRV_FLAG_REJBUS)) { in isdn_status_callback()
484 cmd.driver = di; in isdn_status_callback()
494 cmd.driver = di; in isdn_status_callback()
511 cmd.driver = di; in isdn_status_callback()
549 dev->drvid[di], c->arg, c->parm.num); in isdn_status_callback()
580 cmd.driver = di; in isdn_status_callback()
595 dev->drv[di]->online &= ~(1 << (c->arg)); in isdn_status_callback()
618 dev->drv[di]->online |= (1 << (c->arg)); in isdn_status_callback()
634 dev->drv[di]->online &= ~(1 << (c->arg)); in isdn_status_callback()
660 if (isdn_add_channels(dev->drv[di], di, c->arg, 1)) { in isdn_status_callback()
670 if ((dev->drvmap[i] == di) && in isdn_status_callback()
686 while (dev->drv[di]->locks > 0) { in isdn_status_callback()
687 isdn_unlock_driver(dev->drv[di]); in isdn_status_callback()
692 if (dev->drvmap[i] == di) { in isdn_status_callback()
698 dev->channels -= dev->drv[di]->channels; in isdn_status_callback()
699 kfree(dev->drv[di]->rcverr); in isdn_status_callback()
700 kfree(dev->drv[di]->rcvcount); in isdn_status_callback()
701 for (i = 0; i < dev->drv[di]->channels; i++) in isdn_status_callback()
702 skb_queue_purge(&dev->drv[di]->rpqueue[i]); in isdn_status_callback()
703 kfree(dev->drv[di]->rpqueue); in isdn_status_callback()
704 kfree(dev->drv[di]->rcv_waitq); in isdn_status_callback()
705 kfree(dev->drv[di]); in isdn_status_callback()
706 dev->drv[di] = NULL; in isdn_status_callback()
707 dev->drvid[di][0] = '\0'; in isdn_status_callback()
767 isdn_readbchan(int di, int channel, u_char *buf, u_char *fp, int len, wait_queue_head_t *sleep) in isdn_readbchan() argument
776 if (!dev->drv[di]) in isdn_readbchan()
778 if (skb_queue_empty(&dev->drv[di]->rpqueue[channel])) { in isdn_readbchan()
781 !skb_queue_empty(&dev->drv[di]->rpqueue[channel])); in isdn_readbchan()
785 if (len > dev->drv[di]->rcvcount[channel]) in isdn_readbchan()
786 len = dev->drv[di]->rcvcount[channel]; in isdn_readbchan()
790 if (!(skb = skb_peek(&dev->drv[di]->rpqueue[channel]))) in isdn_readbchan()
796 if ((ISDN_AUDIO_SKB_DLECOUNT(skb)) || (dev->drv[di]->DLEflag & (1 << channel))) { in isdn_readbchan()
804 if (dev->drv[di]->DLEflag & DLEmask) { in isdn_readbchan()
806 dev->drv[di]->DLEflag &= ~DLEmask; in isdn_readbchan()
810 dev->drv[di]->DLEflag |= DLEmask; in isdn_readbchan()
849 skb = skb_dequeue(&dev->drv[di]->rpqueue[channel]); in isdn_readbchan()
861 dev->drv[di]->rcvcount[channel] -= count_put; in isdn_readbchan()
880 isdn_readbchan_tty(int di, int channel, struct tty_port *port, int cisco_hack) in isdn_readbchan_tty() argument
890 if (!dev->drv[di]) in isdn_readbchan_tty()
892 if (skb_queue_empty(&dev->drv[di]->rpqueue[channel])) in isdn_readbchan_tty()
895 len = tty_buffer_request_room(port, dev->drv[di]->rcvcount[channel]); in isdn_readbchan_tty()
901 if (!(skb = skb_peek(&dev->drv[di]->rpqueue[channel]))) in isdn_readbchan_tty()
907 if ((ISDN_AUDIO_SKB_DLECOUNT(skb)) || (dev->drv[di]->DLEflag & (1 << channel))) { in isdn_readbchan_tty()
918 if (dev->drv[di]->DLEflag & DLEmask) { in isdn_readbchan_tty()
920 dev->drv[di]->DLEflag &= ~DLEmask; in isdn_readbchan_tty()
924 dev->drv[di]->DLEflag |= DLEmask; in isdn_readbchan_tty()
962 skb = skb_dequeue(&dev->drv[di]->rpqueue[channel]); in isdn_readbchan_tty()
975 dev->drv[di]->rcvcount[channel] -= count_put; in isdn_readbchan_tty()
1851 isdn_map_eaz2msn(char *msn, int di) in isdn_map_eaz2msn() argument
1853 isdn_driver_t *this = dev->drv[di]; in isdn_map_eaz2msn()
1927 isdn_free_channel(int di, int ch, int usage) in isdn_free_channel() argument
1931 if ((di < 0) || (ch < 0)) { in isdn_free_channel()
1933 __func__, di, ch); in isdn_free_channel()
1938 (dev->drvmap[i] == di) && in isdn_free_channel()
1951 if (dev->drv[di]) in isdn_free_channel()
1952 skb_queue_purge(&dev->drv[di]->rpqueue[ch]); in isdn_free_channel()
1960 isdn_unexclusive_channel(int di, int ch) in isdn_unexclusive_channel() argument
1965 if ((dev->drvmap[i] == di) && in isdn_unexclusive_channel()
2171 static char *map_drvname(int di) in map_drvname() argument
2173 if ((di < 0) || (di >= ISDN_MAX_DRIVERS)) in map_drvname()
2175 return (dev->drvid[di]); /* driver name */ in map_drvname()