• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/drivers/isdn/gigaset/

Lines Matching defs:ubc

764 	struct bas_bc_state *ubc;
780 ubc = bcs->hw.bas;
782 spin_lock_irqsave(&ubc->isoinlock, flags);
783 if (likely(ubc->isoindone == NULL)) {
785 ubc->isoindone = urb;
786 tasklet_schedule(&ubc->rcvd_tasklet);
789 ubc->loststatus = urb->status;
791 ubc->isoinlost += urb->iso_frame_desc[i].actual_length;
795 ubc->loststatus = urb->iso_frame_desc[i].status;
799 if (likely(atomic_read(&ubc->running))) {
816 spin_unlock_irqrestore(&ubc->isoinlock, flags);
829 struct bas_bc_state *ubc;
845 ubc = ucx->bcs->hw.bas;
847 spin_lock_irqsave(&ubc->isooutlock, flags);
848 ubc->isooutovfl = ubc->isooutdone;
849 ubc->isooutdone = ucx;
850 spin_unlock_irqrestore(&ubc->isooutlock, flags);
851 tasklet_schedule(&ubc->sent_tasklet);
864 struct bas_bc_state *ubc = bcs->hw.bas;
874 atomic_set(&ubc->running, 1);
876 urb = ubc->isoinurbs[k];
885 urb->transfer_buffer = ubc->isoinbuf + k * BAS_INBUFSIZE;
904 gigaset_isowbuf_init(ubc->isooutbuf, PPP_FLAG);
908 urb = ubc->isoouturbs[k].urb;
916 urb->transfer_buffer = ubc->isooutbuf->data;
917 urb->transfer_buffer_length = sizeof(ubc->isooutbuf->data);
921 urb->context = &ubc->isoouturbs[k];
928 ubc->isoouturbs[k].limit = -1;
934 rc = usb_submit_urb(ubc->isoouturbs[k].urb, GFP_ATOMIC);
939 ubc->isooutfree = &ubc->isoouturbs[2];
940 ubc->isooutdone = ubc->isooutovfl = NULL;
943 stopurbs(ubc);
953 static void stopurbs(struct bas_bc_state *ubc)
957 atomic_set(&ubc->running, 0);
960 rc = usb_unlink_urb(ubc->isoinurbs[k]);
967 rc = usb_unlink_urb(ubc->isoouturbs[k].urb);
989 struct bas_bc_state *ubc = ucx->bcs->hw.bas;
996 urb->transfer_buffer = ubc->isooutbuf->data;
997 urb->transfer_buffer_length = sizeof(ubc->isooutbuf->data);
1004 if ((corrbytes = atomic_read(&ubc->corrbytes)) != 0) {
1012 atomic_add(-corrbytes, &ubc->corrbytes);
1016 ifd->offset = gigaset_isowbuf_getbytes(ubc->isooutbuf,
1033 ucx->limit = atomic_read(&ubc->isooutbuf->nextread);
1052 ++ubc->numsub;
1065 struct bas_bc_state *ubc = bcs->hw.bas;
1079 if (unlikely(!(atomic_read(&ubc->running)))) {
1085 spin_lock_irqsave(&ubc->isooutlock, flags);
1086 done = ubc->isooutdone;
1087 ubc->isooutdone = NULL;
1088 ovfl = ubc->isooutovfl;
1089 ubc->isooutovfl = NULL;
1090 spin_unlock_irqrestore(&ubc->isooutlock, flags);
1100 spin_lock_irqsave(&ubc->isooutlock, flags);
1101 next = ubc->isooutfree;
1102 ubc->isooutfree = NULL;
1103 spin_unlock_irqrestore(&ubc->isooutlock, flags);
1108 spin_lock_irqsave(&ubc->isooutlock, flags);
1109 if (ubc->isooutfree == NULL) {
1110 ubc->isooutfree = next;
1113 spin_unlock_irqrestore(&ubc->isooutlock, flags);
1183 atomic_set(&ubc->isooutbuf->read, done->limit);
1186 spin_lock_irqsave(&ubc->isooutlock, flags);
1187 next = ubc->isooutfree;
1188 ubc->isooutfree = done;
1189 spin_unlock_irqrestore(&ubc->isooutlock, flags);
1229 struct bas_bc_state *ubc = bcs->hw.bas;
1239 spin_lock_irqsave(&ubc->isoinlock, flags);
1240 if (!(urb = ubc->isoindone)) {
1241 spin_unlock_irqrestore(&ubc->isoinlock, flags);
1244 ubc->isoindone = NULL;
1245 if (unlikely(ubc->loststatus != -EINPROGRESS)) {
1249 get_usb_statmsg(ubc->loststatus),
1250 ubc->isoinlost);
1251 ubc->loststatus = -EINPROGRESS;
1253 spin_unlock_irqrestore(&ubc->isoinlock, flags);
1255 if (unlikely(!(atomic_read(&ubc->running)))) {
1969 struct bas_bc_state *ubc = bcs->hw.bas;
1972 if (!ubc)
1976 atomic_set(&ubc->running, 0);
1979 usb_kill_urb(ubc->isoouturbs[i].urb);
1980 usb_free_urb(ubc->isoouturbs[i].urb);
1983 usb_kill_urb(ubc->isoinurbs[i]);
1984 usb_free_urb(ubc->isoinurbs[i]);
1986 tasklet_kill(&ubc->sent_tasklet);
1987 tasklet_kill(&ubc->rcvd_tasklet);
1988 kfree(ubc->isooutbuf);
1989 kfree(ubc);
2003 struct bas_bc_state *ubc;
2005 bcs->hw.bas = ubc = kmalloc(sizeof(struct bas_bc_state), GFP_KERNEL);
2006 if (!ubc) {
2011 atomic_set(&ubc->running, 0);
2012 atomic_set(&ubc->corrbytes, 0);
2013 spin_lock_init(&ubc->isooutlock);
2015 ubc->isoouturbs[i].urb = NULL;
2016 ubc->isoouturbs[i].bcs = bcs;
2018 ubc->isooutdone = ubc->isooutfree = ubc->isooutovfl = NULL;
2019 ubc->numsub = 0;
2020 if (!(ubc->isooutbuf = kmalloc(sizeof(struct isowbuf_t), GFP_KERNEL))) {
2022 kfree(ubc);
2026 tasklet_init(&ubc->sent_tasklet,
2029 spin_lock_init(&ubc->isoinlock);
2031 ubc->isoinurbs[i] = NULL;
2032 ubc->isoindone = NULL;
2033 ubc->loststatus = -EINPROGRESS;
2034 ubc->isoinlost = 0;
2035 ubc->seqlen = 0;
2036 ubc->inbyte = 0;
2037 ubc->inbits = 0;
2038 ubc->goodbytes = 0;
2039 ubc->alignerrs = 0;
2040 ubc->fcserrs = 0;
2041 ubc->frameerrs = 0;
2042 ubc->giants = 0;
2043 ubc->runts = 0;
2044 ubc->aborts = 0;
2045 ubc->shared0s = 0;
2046 ubc->stolen0s = 0;
2047 tasklet_init(&ubc->rcvd_tasklet,
2054 struct bas_bc_state *ubc = bcs->hw.bas;
2059 spin_lock_init(&ubc->isooutlock);
2060 spin_lock_init(&ubc->isoinlock);
2061 ubc->loststatus = -EINPROGRESS;
2104 struct bas_bc_state *ubc;
2109 ubc = cs->bcs[j].hw.bas;
2111 usb_kill_urb(ubc->isoouturbs[i].urb);
2112 usb_free_urb(ubc->isoouturbs[i].urb);
2113 ubc->isoouturbs[i].urb = NULL;
2116 usb_kill_urb(ubc->isoinurbs[i]);
2117 usb_free_urb(ubc->isoinurbs[i]);
2118 ubc->isoinurbs[i] = NULL;
2146 struct bas_bc_state *ubc;
2210 ubc = cs->bcs[j].hw.bas;
2212 if (!(ubc->isoouturbs[i].urb =
2216 if (!(ubc->isoinurbs[i] =