catc              179 drivers/net/usb/catc.c 		void (*callback)(struct catc *catc, struct ctrl_queue *q);
catc              193 drivers/net/usb/catc.c #define catc_get_mac(catc, mac)				catc_ctrl_msg(catc, USB_DIR_IN,  GetMac, 0, 0, mac,  6)
catc              194 drivers/net/usb/catc.c #define catc_reset(catc)				catc_ctrl_msg(catc, USB_DIR_OUT, Reset, 0, 0, NULL, 0)
catc              195 drivers/net/usb/catc.c #define catc_set_reg(catc, reg, val)			catc_ctrl_msg(catc, USB_DIR_OUT, SetReg, val, reg, NULL, 0)
catc              196 drivers/net/usb/catc.c #define catc_get_reg(catc, reg, buf)			catc_ctrl_msg(catc, USB_DIR_IN,  GetReg, 0, reg, buf, 1)
catc              197 drivers/net/usb/catc.c #define catc_write_mem(catc, addr, buf, size)		catc_ctrl_msg(catc, USB_DIR_OUT, WriteMem, 0, addr, buf, size)
catc              198 drivers/net/usb/catc.c #define catc_read_mem(catc, addr, buf, size)		catc_ctrl_msg(catc, USB_DIR_IN,  ReadMem, 0, addr, buf, size)
catc              200 drivers/net/usb/catc.c #define f5u011_rxmode(catc, rxmode)			catc_ctrl_msg(catc, USB_DIR_OUT, SetRxMode, 0, 1, rxmode, 2)
catc              201 drivers/net/usb/catc.c #define f5u011_rxmode_async(catc, rxmode)		catc_ctrl_async(catc, USB_DIR_OUT, SetRxMode, 0, 1, &rxmode, 2, NULL)
catc              202 drivers/net/usb/catc.c #define f5u011_mchash_async(catc, hash)			catc_ctrl_async(catc, USB_DIR_OUT, SetRxMode, 0, 2, &hash, 8, NULL)
catc              204 drivers/net/usb/catc.c #define catc_set_reg_async(catc, reg, val)		catc_ctrl_async(catc, USB_DIR_OUT, SetReg, val, reg, NULL, 0, NULL)
catc              205 drivers/net/usb/catc.c #define catc_get_reg_async(catc, reg, cb)		catc_ctrl_async(catc, USB_DIR_IN, GetReg, 0, reg, NULL, 1, cb)
catc              206 drivers/net/usb/catc.c #define catc_write_mem_async(catc, addr, buf, size)	catc_ctrl_async(catc, USB_DIR_OUT, WriteMem, 0, addr, buf, size, NULL)
catc              214 drivers/net/usb/catc.c 	struct catc *catc = urb->context;
catc              220 drivers/net/usb/catc.c 	if (!catc->is_f5u011) {
catc              221 drivers/net/usb/catc.c 		clear_bit(RX_RUNNING, &catc->flags);
catc              232 drivers/net/usb/catc.c 		if(!catc->is_f5u011) {
catc              235 drivers/net/usb/catc.c 				catc->netdev->stats.rx_length_errors++;
catc              236 drivers/net/usb/catc.c 				catc->netdev->stats.rx_errors++;
catc              249 drivers/net/usb/catc.c 		skb->protocol = eth_type_trans(skb, catc->netdev);
catc              252 drivers/net/usb/catc.c 		catc->netdev->stats.rx_packets++;
catc              253 drivers/net/usb/catc.c 		catc->netdev->stats.rx_bytes += pkt_len;
catc              256 drivers/net/usb/catc.c 		if (catc->is_f5u011)
catc              262 drivers/net/usb/catc.c 	if (catc->is_f5u011) {
catc              263 drivers/net/usb/catc.c 		if (atomic_read(&catc->recq_sz)) {
catc              265 drivers/net/usb/catc.c 			atomic_dec(&catc->recq_sz);
catc              266 drivers/net/usb/catc.c 			netdev_dbg(catc->netdev, "getting extra packet\n");
catc              267 drivers/net/usb/catc.c 			urb->dev = catc->usbdev;
catc              269 drivers/net/usb/catc.c 				netdev_dbg(catc->netdev,
catc              273 drivers/net/usb/catc.c 			clear_bit(RX_RUNNING, &catc->flags);
catc              280 drivers/net/usb/catc.c 	struct catc *catc = urb->context;
catc              286 drivers/net/usb/catc.c 	if (!catc->is_f5u011) {
catc              316 drivers/net/usb/catc.c 		netif_carrier_on(catc->netdev);
catc              317 drivers/net/usb/catc.c 		netdev_dbg(catc->netdev, "link ok\n");
catc              321 drivers/net/usb/catc.c 		netif_carrier_off(catc->netdev);
catc              322 drivers/net/usb/catc.c 		netdev_dbg(catc->netdev, "link bad\n");
catc              326 drivers/net/usb/catc.c 		if (test_and_set_bit(RX_RUNNING, &catc->flags)) {
catc              327 drivers/net/usb/catc.c 			if (catc->is_f5u011)
catc              328 drivers/net/usb/catc.c 				atomic_inc(&catc->recq_sz);
catc              330 drivers/net/usb/catc.c 			catc->rx_urb->dev = catc->usbdev;
catc              331 drivers/net/usb/catc.c 			if ((res = usb_submit_urb(catc->rx_urb, GFP_ATOMIC)) < 0) {
catc              332 drivers/net/usb/catc.c 				dev_err(&catc->usbdev->dev,
catc              340 drivers/net/usb/catc.c 		dev_err(&catc->usbdev->dev,
catc              342 drivers/net/usb/catc.c 			catc->usbdev->bus->bus_name,
catc              343 drivers/net/usb/catc.c 			catc->usbdev->devpath, res);
catc              350 drivers/net/usb/catc.c static int catc_tx_run(struct catc *catc)
catc              354 drivers/net/usb/catc.c 	if (catc->is_f5u011)
catc              355 drivers/net/usb/catc.c 		catc->tx_ptr = (catc->tx_ptr + 63) & ~63;
catc              357 drivers/net/usb/catc.c 	catc->tx_urb->transfer_buffer_length = catc->tx_ptr;
catc              358 drivers/net/usb/catc.c 	catc->tx_urb->transfer_buffer = catc->tx_buf[catc->tx_idx];
catc              359 drivers/net/usb/catc.c 	catc->tx_urb->dev = catc->usbdev;
catc              361 drivers/net/usb/catc.c 	if ((status = usb_submit_urb(catc->tx_urb, GFP_ATOMIC)) < 0)
catc              362 drivers/net/usb/catc.c 		dev_err(&catc->usbdev->dev, "submit(tx_urb), status %d\n",
catc              365 drivers/net/usb/catc.c 	catc->tx_idx = !catc->tx_idx;
catc              366 drivers/net/usb/catc.c 	catc->tx_ptr = 0;
catc              368 drivers/net/usb/catc.c 	netif_trans_update(catc->netdev);
catc              374 drivers/net/usb/catc.c 	struct catc *catc = urb->context;
catc              381 drivers/net/usb/catc.c 		netif_trans_update(catc->netdev);
catc              382 drivers/net/usb/catc.c 		catc->netdev->stats.tx_errors++;
catc              383 drivers/net/usb/catc.c 		clear_bit(TX_RUNNING, &catc->flags);
catc              384 drivers/net/usb/catc.c 		netif_wake_queue(catc->netdev);
catc              394 drivers/net/usb/catc.c 	spin_lock_irqsave(&catc->tx_lock, flags);
catc              396 drivers/net/usb/catc.c 	if (catc->tx_ptr) {
catc              397 drivers/net/usb/catc.c 		r = catc_tx_run(catc);
catc              399 drivers/net/usb/catc.c 			clear_bit(TX_RUNNING, &catc->flags);
catc              401 drivers/net/usb/catc.c 		clear_bit(TX_RUNNING, &catc->flags);
catc              404 drivers/net/usb/catc.c 	netif_wake_queue(catc->netdev);
catc              406 drivers/net/usb/catc.c 	spin_unlock_irqrestore(&catc->tx_lock, flags);
catc              412 drivers/net/usb/catc.c 	struct catc *catc = netdev_priv(netdev);
catc              417 drivers/net/usb/catc.c 	spin_lock_irqsave(&catc->tx_lock, flags);
catc              419 drivers/net/usb/catc.c 	catc->tx_ptr = (((catc->tx_ptr - 1) >> 6) + 1) << 6;
catc              420 drivers/net/usb/catc.c 	tx_buf = catc->tx_buf[catc->tx_idx] + catc->tx_ptr;
catc              421 drivers/net/usb/catc.c 	if (catc->is_f5u011)
catc              426 drivers/net/usb/catc.c 	catc->tx_ptr += skb->len + 2;
catc              428 drivers/net/usb/catc.c 	if (!test_and_set_bit(TX_RUNNING, &catc->flags)) {
catc              429 drivers/net/usb/catc.c 		r = catc_tx_run(catc);
catc              431 drivers/net/usb/catc.c 			clear_bit(TX_RUNNING, &catc->flags);
catc              434 drivers/net/usb/catc.c 	if ((catc->is_f5u011 && catc->tx_ptr) ||
catc              435 drivers/net/usb/catc.c 	    (catc->tx_ptr >= ((TX_MAX_BURST - 1) * (PKT_SZ + 2))))
catc              438 drivers/net/usb/catc.c 	spin_unlock_irqrestore(&catc->tx_lock, flags);
catc              441 drivers/net/usb/catc.c 		catc->netdev->stats.tx_bytes += skb->len;
catc              442 drivers/net/usb/catc.c 		catc->netdev->stats.tx_packets++;
catc              452 drivers/net/usb/catc.c 	struct catc *catc = netdev_priv(netdev);
catc              455 drivers/net/usb/catc.c 	usb_unlink_urb(catc->tx_urb);
catc              462 drivers/net/usb/catc.c static int catc_ctrl_msg(struct catc *catc, u8 dir, u8 request, u16 value, u16 index, void *buf, int len)
catc              464 drivers/net/usb/catc.c         int retval = usb_control_msg(catc->usbdev,
catc              465 drivers/net/usb/catc.c 		dir ? usb_rcvctrlpipe(catc->usbdev, 0) : usb_sndctrlpipe(catc->usbdev, 0),
catc              470 drivers/net/usb/catc.c static void catc_ctrl_run(struct catc *catc)
catc              472 drivers/net/usb/catc.c 	struct ctrl_queue *q = catc->ctrl_queue + catc->ctrl_tail;
catc              473 drivers/net/usb/catc.c 	struct usb_device *usbdev = catc->usbdev;
catc              474 drivers/net/usb/catc.c 	struct urb *urb = catc->ctrl_urb;
catc              475 drivers/net/usb/catc.c 	struct usb_ctrlrequest *dr = &catc->ctrl_dr;
catc              486 drivers/net/usb/catc.c 	urb->transfer_buffer = catc->ctrl_buf;
catc              491 drivers/net/usb/catc.c 		memcpy(catc->ctrl_buf, q->buf, q->len);
catc              493 drivers/net/usb/catc.c 	if ((status = usb_submit_urb(catc->ctrl_urb, GFP_ATOMIC)))
catc              494 drivers/net/usb/catc.c 		dev_err(&catc->usbdev->dev, "submit(ctrl_urb) status %d\n",
catc              500 drivers/net/usb/catc.c 	struct catc *catc = urb->context;
catc              509 drivers/net/usb/catc.c 	spin_lock_irqsave(&catc->ctrl_lock, flags);
catc              511 drivers/net/usb/catc.c 	q = catc->ctrl_queue + catc->ctrl_tail;
catc              515 drivers/net/usb/catc.c 			memcpy(q->buf, catc->ctrl_buf, q->len);
catc              517 drivers/net/usb/catc.c 			q->buf = catc->ctrl_buf;
catc              521 drivers/net/usb/catc.c 		q->callback(catc, q);
catc              523 drivers/net/usb/catc.c 	catc->ctrl_tail = (catc->ctrl_tail + 1) & (CTRL_QUEUE - 1);
catc              525 drivers/net/usb/catc.c 	if (catc->ctrl_head != catc->ctrl_tail)
catc              526 drivers/net/usb/catc.c 		catc_ctrl_run(catc);
catc              528 drivers/net/usb/catc.c 		clear_bit(CTRL_RUNNING, &catc->flags);
catc              530 drivers/net/usb/catc.c 	spin_unlock_irqrestore(&catc->ctrl_lock, flags);
catc              533 drivers/net/usb/catc.c static int catc_ctrl_async(struct catc *catc, u8 dir, u8 request, u16 value,
catc              534 drivers/net/usb/catc.c 	u16 index, void *buf, int len, void (*callback)(struct catc *catc, struct ctrl_queue *q))
catc              540 drivers/net/usb/catc.c 	spin_lock_irqsave(&catc->ctrl_lock, flags);
catc              542 drivers/net/usb/catc.c 	q = catc->ctrl_queue + catc->ctrl_head;
catc              552 drivers/net/usb/catc.c 	catc->ctrl_head = (catc->ctrl_head + 1) & (CTRL_QUEUE - 1);
catc              554 drivers/net/usb/catc.c 	if (catc->ctrl_head == catc->ctrl_tail) {
catc              555 drivers/net/usb/catc.c 		dev_err(&catc->usbdev->dev, "ctrl queue full\n");
catc              556 drivers/net/usb/catc.c 		catc->ctrl_tail = (catc->ctrl_tail + 1) & (CTRL_QUEUE - 1);
catc              560 drivers/net/usb/catc.c 	if (!test_and_set_bit(CTRL_RUNNING, &catc->flags))
catc              561 drivers/net/usb/catc.c 		catc_ctrl_run(catc);
catc              563 drivers/net/usb/catc.c 	spin_unlock_irqrestore(&catc->ctrl_lock, flags);
catc              572 drivers/net/usb/catc.c static void catc_stats_done(struct catc *catc, struct ctrl_queue *q)
catc              577 drivers/net/usb/catc.c 	catc->stats_buf[index] = *((char *)q->buf);
catc              582 drivers/net/usb/catc.c 	data = ((u16)catc->stats_buf[index] << 8) | catc->stats_buf[index + 1];
catc              583 drivers/net/usb/catc.c 	last = catc->stats_vals[index >> 1];
catc              588 drivers/net/usb/catc.c 			catc->netdev->stats.collisions += data - last;
catc              591 drivers/net/usb/catc.c 			catc->netdev->stats.tx_aborted_errors += data - last;
catc              592 drivers/net/usb/catc.c 			catc->netdev->stats.tx_errors += data - last;
catc              595 drivers/net/usb/catc.c 			catc->netdev->stats.rx_frame_errors += data - last;
catc              596 drivers/net/usb/catc.c 			catc->netdev->stats.rx_errors += data - last;
catc              600 drivers/net/usb/catc.c 	catc->stats_vals[index >> 1] = data;
catc              605 drivers/net/usb/catc.c 	struct catc *catc = from_timer(catc, t, timer);
catc              609 drivers/net/usb/catc.c 		catc_get_reg_async(catc, EthStats + 7 - i, catc_stats_done);
catc              611 drivers/net/usb/catc.c 	mod_timer(&catc->timer, jiffies + STATS_UPDATE);
catc              628 drivers/net/usb/catc.c 	struct catc *catc = netdev_priv(netdev);
catc              634 drivers/net/usb/catc.c 	memset(catc->multicast, 0, 64);
catc              636 drivers/net/usb/catc.c 	catc_multicast(broadcast, catc->multicast);
catc              637 drivers/net/usb/catc.c 	catc_multicast(netdev->dev_addr, catc->multicast);
catc              640 drivers/net/usb/catc.c 		memset(catc->multicast, 0xff, 64);
catc              641 drivers/net/usb/catc.c 		rx |= (!catc->is_f5u011) ? RxPromisc : AltRxPromisc;
catc              645 drivers/net/usb/catc.c 		memset(catc->multicast, 0xff, 64);
catc              649 drivers/net/usb/catc.c 			if (!catc->is_f5u011) {
catc              650 drivers/net/usb/catc.c 				catc->multicast[(crc >> 3) & 0x3f] |= 1 << (crc & 7);
catc              652 drivers/net/usb/catc.c 				catc->multicast[7-(crc >> 29)] |= 1 << ((crc >> 26) & 7);
catc              656 drivers/net/usb/catc.c 	if (!catc->is_f5u011) {
catc              657 drivers/net/usb/catc.c 		catc_set_reg_async(catc, RxUnit, rx);
catc              658 drivers/net/usb/catc.c 		catc_write_mem_async(catc, 0xfa80, catc->multicast, 64);
catc              660 drivers/net/usb/catc.c 		f5u011_mchash_async(catc, catc->multicast);
catc              661 drivers/net/usb/catc.c 		if (catc->rxmode[0] != rx) {
catc              662 drivers/net/usb/catc.c 			catc->rxmode[0] = rx;
catc              663 drivers/net/usb/catc.c 			netdev_dbg(catc->netdev,
catc              665 drivers/net/usb/catc.c 				   catc->rxmode[0], catc->rxmode[1]);
catc              666 drivers/net/usb/catc.c 			f5u011_rxmode_async(catc, catc->rxmode);
catc              674 drivers/net/usb/catc.c 	struct catc *catc = netdev_priv(dev);
catc              677 drivers/net/usb/catc.c 	usb_make_path(catc->usbdev, info->bus_info, sizeof(info->bus_info));
catc              683 drivers/net/usb/catc.c 	struct catc *catc = netdev_priv(dev);
catc              684 drivers/net/usb/catc.c 	if (!catc->is_f5u011)
catc              716 drivers/net/usb/catc.c 	struct catc *catc = netdev_priv(netdev);
catc              719 drivers/net/usb/catc.c 	catc->irq_urb->dev = catc->usbdev;
catc              720 drivers/net/usb/catc.c 	if ((status = usb_submit_urb(catc->irq_urb, GFP_KERNEL)) < 0) {
catc              721 drivers/net/usb/catc.c 		dev_err(&catc->usbdev->dev, "submit(irq_urb) status %d\n",
catc              728 drivers/net/usb/catc.c 	if (!catc->is_f5u011)
catc              729 drivers/net/usb/catc.c 		mod_timer(&catc->timer, jiffies + STATS_UPDATE);
catc              736 drivers/net/usb/catc.c 	struct catc *catc = netdev_priv(netdev);
catc              740 drivers/net/usb/catc.c 	if (!catc->is_f5u011)
catc              741 drivers/net/usb/catc.c 		del_timer_sync(&catc->timer);
catc              743 drivers/net/usb/catc.c 	usb_kill_urb(catc->rx_urb);
catc              744 drivers/net/usb/catc.c 	usb_kill_urb(catc->tx_urb);
catc              745 drivers/net/usb/catc.c 	usb_kill_urb(catc->irq_urb);
catc              746 drivers/net/usb/catc.c 	usb_kill_urb(catc->ctrl_urb);
catc              771 drivers/net/usb/catc.c 	struct catc *catc;
catc              781 drivers/net/usb/catc.c 	netdev = alloc_etherdev(sizeof(struct catc));
catc              785 drivers/net/usb/catc.c 	catc = netdev_priv(netdev);
catc              791 drivers/net/usb/catc.c 	catc->usbdev = usbdev;
catc              792 drivers/net/usb/catc.c 	catc->netdev = netdev;
catc              794 drivers/net/usb/catc.c 	spin_lock_init(&catc->tx_lock);
catc              795 drivers/net/usb/catc.c 	spin_lock_init(&catc->ctrl_lock);
catc              797 drivers/net/usb/catc.c 	timer_setup(&catc->timer, catc_stats_timer, 0);
catc              799 drivers/net/usb/catc.c 	catc->ctrl_urb = usb_alloc_urb(0, GFP_KERNEL);
catc              800 drivers/net/usb/catc.c 	catc->tx_urb = usb_alloc_urb(0, GFP_KERNEL);
catc              801 drivers/net/usb/catc.c 	catc->rx_urb = usb_alloc_urb(0, GFP_KERNEL);
catc              802 drivers/net/usb/catc.c 	catc->irq_urb = usb_alloc_urb(0, GFP_KERNEL);
catc              803 drivers/net/usb/catc.c 	if ((!catc->ctrl_urb) || (!catc->tx_urb) || 
catc              804 drivers/net/usb/catc.c 	    (!catc->rx_urb) || (!catc->irq_urb)) {
catc              813 drivers/net/usb/catc.c 	    le16_to_cpu(catc->usbdev->descriptor.bcdDevice) == 0x0130) {
catc              815 drivers/net/usb/catc.c 		catc->is_f5u011 = 1;		
catc              816 drivers/net/usb/catc.c 		atomic_set(&catc->recq_sz, 0);
catc              822 drivers/net/usb/catc.c 	usb_fill_control_urb(catc->ctrl_urb, usbdev, usb_sndctrlpipe(usbdev, 0),
catc              823 drivers/net/usb/catc.c 		NULL, NULL, 0, catc_ctrl_done, catc);
catc              825 drivers/net/usb/catc.c 	usb_fill_bulk_urb(catc->tx_urb, usbdev, usb_sndbulkpipe(usbdev, 1),
catc              826 drivers/net/usb/catc.c 		NULL, 0, catc_tx_done, catc);
catc              828 drivers/net/usb/catc.c 	usb_fill_bulk_urb(catc->rx_urb, usbdev, usb_rcvbulkpipe(usbdev, 1),
catc              829 drivers/net/usb/catc.c 		catc->rx_buf, pktsz, catc_rx_done, catc);
catc              831 drivers/net/usb/catc.c 	usb_fill_int_urb(catc->irq_urb, usbdev, usb_rcvintpipe(usbdev, 2),
catc              832 drivers/net/usb/catc.c                 catc->irq_buf, 2, catc_irq_done, catc, 1);
catc              834 drivers/net/usb/catc.c 	if (!catc->is_f5u011) {
catc              847 drivers/net/usb/catc.c 		catc_write_mem(catc, 0x7a80, buf, 4);
catc              849 drivers/net/usb/catc.c 		catc_write_mem(catc, 0xfa80, buf, 4);
catc              850 drivers/net/usb/catc.c 		catc_read_mem(catc, 0x7a80, buf, 4);
catc              854 drivers/net/usb/catc.c 			catc_set_reg(catc, TxBufCount, 8);
catc              855 drivers/net/usb/catc.c 			catc_set_reg(catc, RxBufCount, 32);
catc              863 drivers/net/usb/catc.c 			catc_set_reg(catc, TxBufCount, 4);
catc              864 drivers/net/usb/catc.c 			catc_set_reg(catc, RxBufCount, 16);
catc              873 drivers/net/usb/catc.c 		catc_get_mac(catc, netdev->dev_addr);
catc              878 drivers/net/usb/catc.c 			catc_set_reg(catc, StationAddr0 - i, netdev->dev_addr[i]);
catc              883 drivers/net/usb/catc.c 		catc_multicast(broadcast, catc->multicast);
catc              884 drivers/net/usb/catc.c 		catc_multicast(netdev->dev_addr, catc->multicast);
catc              885 drivers/net/usb/catc.c 		catc_write_mem(catc, 0xfa80, catc->multicast, 64);
catc              890 drivers/net/usb/catc.c 			catc_set_reg(catc, EthStats + i, 0);
catc              891 drivers/net/usb/catc.c 		catc->last_stats = jiffies;
catc              895 drivers/net/usb/catc.c 		catc_set_reg(catc, MaxBurst, RX_MAX_BURST);
catc              896 drivers/net/usb/catc.c 		catc_set_reg(catc, OpModes, OpTxMerge | OpRxMerge | OpLenInclude | Op3MemWaits);
catc              897 drivers/net/usb/catc.c 		catc_set_reg(catc, LEDCtrl, LEDLink);
catc              898 drivers/net/usb/catc.c 		catc_set_reg(catc, RxUnit, RxEnable | RxPolarity | RxMultiCast);
catc              901 drivers/net/usb/catc.c 		catc_reset(catc);
catc              902 drivers/net/usb/catc.c 		catc_get_mac(catc, netdev->dev_addr);
catc              905 drivers/net/usb/catc.c 		catc->rxmode[0] = RxEnable | RxPolarity | RxMultiCast;
catc              906 drivers/net/usb/catc.c 		catc->rxmode[1] = 0;
catc              907 drivers/net/usb/catc.c 		f5u011_rxmode(catc, catc->rxmode);
catc              911 drivers/net/usb/catc.c 	       netdev->name, (catc->is_f5u011) ? "Belkin F5U011" : "CATC EL1210A NetMate",
catc              913 drivers/net/usb/catc.c 	usb_set_intfdata(intf, catc);
catc              925 drivers/net/usb/catc.c 	usb_free_urb(catc->ctrl_urb);
catc              926 drivers/net/usb/catc.c 	usb_free_urb(catc->tx_urb);
catc              927 drivers/net/usb/catc.c 	usb_free_urb(catc->rx_urb);
catc              928 drivers/net/usb/catc.c 	usb_free_urb(catc->irq_urb);
catc              935 drivers/net/usb/catc.c 	struct catc *catc = usb_get_intfdata(intf);
catc              938 drivers/net/usb/catc.c 	if (catc) {
catc              939 drivers/net/usb/catc.c 		unregister_netdev(catc->netdev);
catc              940 drivers/net/usb/catc.c 		usb_free_urb(catc->ctrl_urb);
catc              941 drivers/net/usb/catc.c 		usb_free_urb(catc->tx_urb);
catc              942 drivers/net/usb/catc.c 		usb_free_urb(catc->rx_urb);
catc              943 drivers/net/usb/catc.c 		usb_free_urb(catc->irq_urb);
catc              944 drivers/net/usb/catc.c 		free_netdev(catc->netdev);