Lines Matching refs:ar
131 static void carl9170_usb_submit_data_urb(struct ar9170 *ar) in carl9170_usb_submit_data_urb() argument
136 if (atomic_inc_return(&ar->tx_anch_urbs) > AR9170_NUM_TX_URBS) in carl9170_usb_submit_data_urb()
139 urb = usb_get_from_anchor(&ar->tx_wait); in carl9170_usb_submit_data_urb()
143 usb_anchor_urb(urb, &ar->tx_anch); in carl9170_usb_submit_data_urb()
148 dev_err(&ar->udev->dev, "tx submit failed (%d)\n", in carl9170_usb_submit_data_urb()
153 usb_anchor_urb(urb, &ar->tx_err); in carl9170_usb_submit_data_urb()
162 atomic_dec(&ar->tx_anch_urbs); in carl9170_usb_submit_data_urb()
167 struct ar9170 *ar = usb_get_intfdata(usb_ifnum_to_if(urb->dev, 0)); in carl9170_usb_tx_data_complete() local
169 if (WARN_ON_ONCE(!ar)) { in carl9170_usb_tx_data_complete()
174 atomic_dec(&ar->tx_anch_urbs); in carl9170_usb_tx_data_complete()
179 carl9170_tx_callback(ar, (void *)urb->context); in carl9170_usb_tx_data_complete()
192 usb_anchor_urb(urb, &ar->tx_err); in carl9170_usb_tx_data_complete()
198 dev_err(&ar->udev->dev, "tx failed (%d)\n", in carl9170_usb_tx_data_complete()
202 usb_anchor_urb(urb, &ar->tx_err); in carl9170_usb_tx_data_complete()
206 if (likely(IS_STARTED(ar))) in carl9170_usb_tx_data_complete()
207 carl9170_usb_submit_data_urb(ar); in carl9170_usb_tx_data_complete()
210 static int carl9170_usb_submit_cmd_urb(struct ar9170 *ar) in carl9170_usb_submit_cmd_urb() argument
215 if (atomic_inc_return(&ar->tx_cmd_urbs) != 1) { in carl9170_usb_submit_cmd_urb()
216 atomic_dec(&ar->tx_cmd_urbs); in carl9170_usb_submit_cmd_urb()
220 urb = usb_get_from_anchor(&ar->tx_cmd); in carl9170_usb_submit_cmd_urb()
222 atomic_dec(&ar->tx_cmd_urbs); in carl9170_usb_submit_cmd_urb()
226 usb_anchor_urb(urb, &ar->tx_anch); in carl9170_usb_submit_cmd_urb()
230 atomic_dec(&ar->tx_cmd_urbs); in carl9170_usb_submit_cmd_urb()
239 struct ar9170 *ar = urb->context; in carl9170_usb_cmd_complete() local
242 if (WARN_ON_ONCE(!ar)) in carl9170_usb_cmd_complete()
245 atomic_dec(&ar->tx_cmd_urbs); in carl9170_usb_cmd_complete()
264 if (!IS_INITIALIZED(ar)) in carl9170_usb_cmd_complete()
268 dev_err(&ar->udev->dev, "submit cmd cb failed (%d).\n", err); in carl9170_usb_cmd_complete()
270 err = carl9170_usb_submit_cmd_urb(ar); in carl9170_usb_cmd_complete()
272 dev_err(&ar->udev->dev, "submit cmd failed (%d).\n", err); in carl9170_usb_cmd_complete()
277 struct ar9170 *ar = urb->context; in carl9170_usb_rx_irq_complete() local
279 if (WARN_ON_ONCE(!ar)) in carl9170_usb_rx_irq_complete()
298 carl9170_handle_command_response(ar, urb->transfer_buffer, in carl9170_usb_rx_irq_complete()
302 usb_anchor_urb(urb, &ar->rx_anch); in carl9170_usb_rx_irq_complete()
307 static int carl9170_usb_submit_rx_urb(struct ar9170 *ar, gfp_t gfp) in carl9170_usb_submit_rx_urb() argument
312 while ((atomic_read(&ar->rx_anch_urbs) < AR9170_NUM_RX_URBS) && in carl9170_usb_submit_rx_urb()
315 urb = usb_get_from_anchor(&ar->rx_pool); in carl9170_usb_submit_rx_urb()
317 usb_anchor_urb(urb, &ar->rx_anch); in carl9170_usb_submit_rx_urb()
321 usb_anchor_urb(urb, &ar->rx_pool); in carl9170_usb_submit_rx_urb()
323 atomic_dec(&ar->rx_pool_urbs); in carl9170_usb_submit_rx_urb()
324 atomic_inc(&ar->rx_anch_urbs); in carl9170_usb_submit_rx_urb()
333 static void carl9170_usb_rx_work(struct ar9170 *ar) in carl9170_usb_rx_work() argument
339 urb = usb_get_from_anchor(&ar->rx_work); in carl9170_usb_rx_work()
343 atomic_dec(&ar->rx_work_urbs); in carl9170_usb_rx_work()
344 if (IS_INITIALIZED(ar)) { in carl9170_usb_rx_work()
345 carl9170_rx(ar, urb->transfer_buffer, in carl9170_usb_rx_work()
349 usb_anchor_urb(urb, &ar->rx_pool); in carl9170_usb_rx_work()
350 atomic_inc(&ar->rx_pool_urbs); in carl9170_usb_rx_work()
354 carl9170_usb_submit_rx_urb(ar, GFP_ATOMIC); in carl9170_usb_rx_work()
358 void carl9170_usb_handle_tx_err(struct ar9170 *ar) in carl9170_usb_handle_tx_err() argument
362 while ((urb = usb_get_from_anchor(&ar->tx_err))) { in carl9170_usb_handle_tx_err()
365 carl9170_tx_drop(ar, skb); in carl9170_usb_handle_tx_err()
366 carl9170_tx_callback(ar, skb); in carl9170_usb_handle_tx_err()
373 struct ar9170 *ar = (struct ar9170 *) data; in carl9170_usb_tasklet() local
375 if (!IS_INITIALIZED(ar)) in carl9170_usb_tasklet()
378 carl9170_usb_rx_work(ar); in carl9170_usb_tasklet()
385 if (IS_STARTED(ar)) in carl9170_usb_tasklet()
386 carl9170_tx_scheduler(ar); in carl9170_usb_tasklet()
391 struct ar9170 *ar = (struct ar9170 *)urb->context; in carl9170_usb_rx_complete() local
394 if (WARN_ON_ONCE(!ar)) in carl9170_usb_rx_complete()
397 atomic_dec(&ar->rx_anch_urbs); in carl9170_usb_rx_complete()
402 usb_anchor_urb(urb, &ar->rx_work); in carl9170_usb_rx_complete()
403 atomic_inc(&ar->rx_work_urbs); in carl9170_usb_rx_complete()
415 usb_anchor_urb(urb, &ar->rx_pool); in carl9170_usb_rx_complete()
416 atomic_inc(&ar->rx_pool_urbs); in carl9170_usb_rx_complete()
420 err = carl9170_usb_submit_rx_urb(ar, GFP_ATOMIC); in carl9170_usb_rx_complete()
428 tasklet_hi_schedule(&ar->usb_tasklet); in carl9170_usb_rx_complete()
430 if (atomic_read(&ar->rx_anch_urbs) == 0) { in carl9170_usb_rx_complete()
439 ieee80211_queue_work(ar->hw, &ar->ping_work); in carl9170_usb_rx_complete()
446 tasklet_hi_schedule(&ar->usb_tasklet); in carl9170_usb_rx_complete()
450 static struct urb *carl9170_usb_alloc_rx_urb(struct ar9170 *ar, gfp_t gfp) in carl9170_usb_alloc_rx_urb() argument
455 buf = kmalloc(ar->fw.rx_size, gfp); in carl9170_usb_alloc_rx_urb()
465 usb_fill_bulk_urb(urb, ar->udev, usb_rcvbulkpipe(ar->udev, in carl9170_usb_alloc_rx_urb()
466 AR9170_USB_EP_RX), buf, ar->fw.rx_size, in carl9170_usb_alloc_rx_urb()
467 carl9170_usb_rx_complete, ar); in carl9170_usb_alloc_rx_urb()
474 static int carl9170_usb_send_rx_irq_urb(struct ar9170 *ar) in carl9170_usb_send_rx_irq_urb() argument
488 usb_fill_int_urb(urb, ar->udev, usb_rcvintpipe(ar->udev, in carl9170_usb_send_rx_irq_urb()
490 carl9170_usb_rx_irq_complete, ar, 1); in carl9170_usb_send_rx_irq_urb()
494 usb_anchor_urb(urb, &ar->rx_anch); in carl9170_usb_send_rx_irq_urb()
504 static int carl9170_usb_init_rx_bulk_urbs(struct ar9170 *ar) in carl9170_usb_init_rx_bulk_urbs() argument
520 urb = carl9170_usb_alloc_rx_urb(ar, GFP_KERNEL); in carl9170_usb_init_rx_bulk_urbs()
526 usb_anchor_urb(urb, &ar->rx_pool); in carl9170_usb_init_rx_bulk_urbs()
527 atomic_inc(&ar->rx_pool_urbs); in carl9170_usb_init_rx_bulk_urbs()
531 err = carl9170_usb_submit_rx_urb(ar, GFP_KERNEL); in carl9170_usb_init_rx_bulk_urbs()
536 carl9170_set_state_when(ar, CARL9170_STOPPED, CARL9170_IDLE); in carl9170_usb_init_rx_bulk_urbs()
541 usb_scuttle_anchored_urbs(&ar->rx_pool); in carl9170_usb_init_rx_bulk_urbs()
542 usb_scuttle_anchored_urbs(&ar->rx_work); in carl9170_usb_init_rx_bulk_urbs()
543 usb_kill_anchored_urbs(&ar->rx_anch); in carl9170_usb_init_rx_bulk_urbs()
547 static int carl9170_usb_flush(struct ar9170 *ar) in carl9170_usb_flush() argument
552 while ((urb = usb_get_from_anchor(&ar->tx_wait))) { in carl9170_usb_flush()
554 carl9170_tx_drop(ar, skb); in carl9170_usb_flush()
555 carl9170_tx_callback(ar, skb); in carl9170_usb_flush()
559 ret = usb_wait_anchor_empty_timeout(&ar->tx_cmd, 1000); in carl9170_usb_flush()
564 ret = usb_wait_anchor_empty_timeout(&ar->tx_anch, 1000); in carl9170_usb_flush()
568 usb_kill_anchored_urbs(&ar->tx_anch); in carl9170_usb_flush()
569 carl9170_usb_handle_tx_err(ar); in carl9170_usb_flush()
574 static void carl9170_usb_cancel_urbs(struct ar9170 *ar) in carl9170_usb_cancel_urbs() argument
578 carl9170_set_state(ar, CARL9170_UNKNOWN_STATE); in carl9170_usb_cancel_urbs()
580 err = carl9170_usb_flush(ar); in carl9170_usb_cancel_urbs()
582 dev_err(&ar->udev->dev, "stuck tx urbs!\n"); in carl9170_usb_cancel_urbs()
584 usb_poison_anchored_urbs(&ar->tx_anch); in carl9170_usb_cancel_urbs()
585 carl9170_usb_handle_tx_err(ar); in carl9170_usb_cancel_urbs()
586 usb_poison_anchored_urbs(&ar->rx_anch); in carl9170_usb_cancel_urbs()
588 tasklet_kill(&ar->usb_tasklet); in carl9170_usb_cancel_urbs()
590 usb_scuttle_anchored_urbs(&ar->rx_work); in carl9170_usb_cancel_urbs()
591 usb_scuttle_anchored_urbs(&ar->rx_pool); in carl9170_usb_cancel_urbs()
592 usb_scuttle_anchored_urbs(&ar->tx_cmd); in carl9170_usb_cancel_urbs()
595 int __carl9170_exec_cmd(struct ar9170 *ar, struct carl9170_cmd *cmd, in __carl9170_exec_cmd() argument
601 if (!IS_INITIALIZED(ar)) { in __carl9170_exec_cmd()
617 usb_fill_int_urb(urb, ar->udev, usb_sndintpipe(ar->udev, in __carl9170_exec_cmd()
619 carl9170_usb_cmd_complete, ar, 1); in __carl9170_exec_cmd()
624 usb_anchor_urb(urb, &ar->tx_cmd); in __carl9170_exec_cmd()
627 return carl9170_usb_submit_cmd_urb(ar); in __carl9170_exec_cmd()
636 int carl9170_exec_cmd(struct ar9170 *ar, const enum carl9170_cmd_oids cmd, in carl9170_exec_cmd() argument
641 if (!IS_ACCEPTING_CMD(ar)) in carl9170_exec_cmd()
647 ar->cmd.hdr.len = plen; in carl9170_exec_cmd()
648 ar->cmd.hdr.cmd = cmd; in carl9170_exec_cmd()
650 if (plen && payload != (u8 *)(ar->cmd.data)) in carl9170_exec_cmd()
651 memcpy(ar->cmd.data, payload, plen); in carl9170_exec_cmd()
653 spin_lock_bh(&ar->cmd_lock); in carl9170_exec_cmd()
654 ar->readbuf = (u8 *)out; in carl9170_exec_cmd()
655 ar->readlen = outlen; in carl9170_exec_cmd()
656 spin_unlock_bh(&ar->cmd_lock); in carl9170_exec_cmd()
658 err = __carl9170_exec_cmd(ar, &ar->cmd, false); in carl9170_exec_cmd()
661 err = wait_for_completion_timeout(&ar->cmd_wait, HZ); in carl9170_exec_cmd()
667 if (ar->readlen != outlen) { in carl9170_exec_cmd()
677 if (IS_STARTED(ar)) { in carl9170_exec_cmd()
678 dev_err(&ar->udev->dev, "no command feedback " in carl9170_exec_cmd()
683 &ar->cmd, plen + 4); in carl9170_exec_cmd()
685 carl9170_restart(ar, CARL9170_RR_COMMAND_TIMEOUT); in carl9170_exec_cmd()
689 spin_lock_bh(&ar->cmd_lock); in carl9170_exec_cmd()
690 ar->readbuf = NULL; in carl9170_exec_cmd()
691 ar->readlen = 0; in carl9170_exec_cmd()
692 spin_unlock_bh(&ar->cmd_lock); in carl9170_exec_cmd()
697 void carl9170_usb_tx(struct ar9170 *ar, struct sk_buff *skb) in carl9170_usb_tx() argument
704 if (!IS_STARTED(ar)) in carl9170_usb_tx()
711 if (ar->fw.tx_stream) { in carl9170_usb_tx()
723 usb_fill_bulk_urb(urb, ar->udev, usb_sndbulkpipe(ar->udev, in carl9170_usb_tx()
729 usb_anchor_urb(urb, &ar->tx_wait); in carl9170_usb_tx()
733 carl9170_usb_submit_data_urb(ar); in carl9170_usb_tx()
737 carl9170_tx_drop(ar, skb); in carl9170_usb_tx()
738 carl9170_tx_callback(ar, skb); in carl9170_usb_tx()
741 static void carl9170_release_firmware(struct ar9170 *ar) in carl9170_release_firmware() argument
743 if (ar->fw.fw) { in carl9170_release_firmware()
744 release_firmware(ar->fw.fw); in carl9170_release_firmware()
745 memset(&ar->fw, 0, sizeof(ar->fw)); in carl9170_release_firmware()
749 void carl9170_usb_stop(struct ar9170 *ar) in carl9170_usb_stop() argument
753 carl9170_set_state_when(ar, CARL9170_IDLE, CARL9170_STOPPED); in carl9170_usb_stop()
755 ret = carl9170_usb_flush(ar); in carl9170_usb_stop()
757 dev_err(&ar->udev->dev, "kill pending tx urbs.\n"); in carl9170_usb_stop()
759 usb_poison_anchored_urbs(&ar->tx_anch); in carl9170_usb_stop()
760 carl9170_usb_handle_tx_err(ar); in carl9170_usb_stop()
763 spin_lock_bh(&ar->cmd_lock); in carl9170_usb_stop()
764 ar->readlen = 0; in carl9170_usb_stop()
765 spin_unlock_bh(&ar->cmd_lock); in carl9170_usb_stop()
766 complete_all(&ar->cmd_wait); in carl9170_usb_stop()
769 INIT_COMPLETION(ar->cmd_wait); in carl9170_usb_stop()
778 int carl9170_usb_open(struct ar9170 *ar) in carl9170_usb_open() argument
780 usb_unpoison_anchored_urbs(&ar->tx_anch); in carl9170_usb_open()
782 carl9170_set_state_when(ar, CARL9170_STOPPED, CARL9170_IDLE); in carl9170_usb_open()
786 static int carl9170_usb_load_firmware(struct ar9170 *ar) in carl9170_usb_load_firmware() argument
801 data = ar->fw.fw->data; in carl9170_usb_load_firmware()
802 len = ar->fw.fw->size; in carl9170_usb_load_firmware()
803 addr = ar->fw.address; in carl9170_usb_load_firmware()
806 data += ar->fw.offset; in carl9170_usb_load_firmware()
807 len -= ar->fw.offset; in carl9170_usb_load_firmware()
813 err = usb_control_msg(ar->udev, usb_sndctrlpipe(ar->udev, 0), in carl9170_usb_load_firmware()
828 err = usb_control_msg(ar->udev, usb_sndctrlpipe(ar->udev, 0), in carl9170_usb_load_firmware()
832 if (wait_for_completion_timeout(&ar->fw_boot_wait, HZ) == 0) { in carl9170_usb_load_firmware()
837 err = carl9170_echo_test(ar, 0x4a110123); in carl9170_usb_load_firmware()
842 ar->cmd_seq = -1; in carl9170_usb_load_firmware()
847 dev_err(&ar->udev->dev, "firmware upload failed (%d).\n", err); in carl9170_usb_load_firmware()
851 int carl9170_usb_restart(struct ar9170 *ar) in carl9170_usb_restart() argument
855 if (ar->intf->condition != USB_INTERFACE_BOUND) in carl9170_usb_restart()
864 ar->cmd_seq = -2; in carl9170_usb_restart()
866 err = carl9170_reboot(ar); in carl9170_usb_restart()
868 carl9170_usb_stop(ar); in carl9170_usb_restart()
873 tasklet_schedule(&ar->usb_tasklet); in carl9170_usb_restart()
878 err = carl9170_usb_open(ar); in carl9170_usb_restart()
882 err = carl9170_usb_load_firmware(ar); in carl9170_usb_restart()
889 carl9170_usb_cancel_urbs(ar); in carl9170_usb_restart()
893 void carl9170_usb_reset(struct ar9170 *ar) in carl9170_usb_reset() argument
904 carl9170_usb_cancel_urbs(ar); in carl9170_usb_reset()
906 carl9170_usb_stop(ar); in carl9170_usb_reset()
908 usb_queue_reset_device(ar->intf); in carl9170_usb_reset()
911 static int carl9170_usb_init_device(struct ar9170 *ar) in carl9170_usb_init_device() argument
922 ar->cmd_seq = -2; in carl9170_usb_init_device()
924 err = carl9170_usb_send_rx_irq_urb(ar); in carl9170_usb_init_device()
928 err = carl9170_usb_init_rx_bulk_urbs(ar); in carl9170_usb_init_device()
932 err = carl9170_usb_open(ar); in carl9170_usb_init_device()
936 mutex_lock(&ar->mutex); in carl9170_usb_init_device()
937 err = carl9170_usb_load_firmware(ar); in carl9170_usb_init_device()
938 mutex_unlock(&ar->mutex); in carl9170_usb_init_device()
945 carl9170_usb_stop(ar); in carl9170_usb_init_device()
948 carl9170_usb_cancel_urbs(ar); in carl9170_usb_init_device()
954 static void carl9170_usb_firmware_failed(struct ar9170 *ar) in carl9170_usb_firmware_failed() argument
956 struct device *parent = ar->udev->dev.parent; in carl9170_usb_firmware_failed()
965 udev = ar->udev; in carl9170_usb_firmware_failed()
967 complete(&ar->fw_load_wait); in carl9170_usb_firmware_failed()
980 static void carl9170_usb_firmware_finish(struct ar9170 *ar) in carl9170_usb_firmware_finish() argument
984 err = carl9170_parse_firmware(ar); in carl9170_usb_firmware_finish()
988 err = carl9170_usb_init_device(ar); in carl9170_usb_firmware_finish()
992 err = carl9170_register(ar); in carl9170_usb_firmware_finish()
994 carl9170_usb_stop(ar); in carl9170_usb_firmware_finish()
998 complete(&ar->fw_load_wait); in carl9170_usb_firmware_finish()
999 usb_put_dev(ar->udev); in carl9170_usb_firmware_finish()
1003 carl9170_usb_cancel_urbs(ar); in carl9170_usb_firmware_finish()
1006 carl9170_release_firmware(ar); in carl9170_usb_firmware_finish()
1007 carl9170_usb_firmware_failed(ar); in carl9170_usb_firmware_finish()
1013 struct ar9170 *ar = context; in carl9170_usb_firmware_step2() local
1016 ar->fw.fw = fw; in carl9170_usb_firmware_step2()
1017 carl9170_usb_firmware_finish(ar); in carl9170_usb_firmware_step2()
1021 dev_err(&ar->udev->dev, "firmware not found.\n"); in carl9170_usb_firmware_step2()
1022 carl9170_usb_firmware_failed(ar); in carl9170_usb_firmware_step2()
1028 struct ar9170 *ar; in carl9170_usb_probe() local
1036 ar = carl9170_alloc(sizeof(*ar)); in carl9170_usb_probe()
1037 if (IS_ERR(ar)) in carl9170_usb_probe()
1038 return PTR_ERR(ar); in carl9170_usb_probe()
1042 ar->udev = udev; in carl9170_usb_probe()
1043 ar->intf = intf; in carl9170_usb_probe()
1044 ar->features = id->driver_info; in carl9170_usb_probe()
1046 usb_set_intfdata(intf, ar); in carl9170_usb_probe()
1047 SET_IEEE80211_DEV(ar->hw, &intf->dev); in carl9170_usb_probe()
1049 init_usb_anchor(&ar->rx_anch); in carl9170_usb_probe()
1050 init_usb_anchor(&ar->rx_pool); in carl9170_usb_probe()
1051 init_usb_anchor(&ar->rx_work); in carl9170_usb_probe()
1052 init_usb_anchor(&ar->tx_wait); in carl9170_usb_probe()
1053 init_usb_anchor(&ar->tx_anch); in carl9170_usb_probe()
1054 init_usb_anchor(&ar->tx_cmd); in carl9170_usb_probe()
1055 init_usb_anchor(&ar->tx_err); in carl9170_usb_probe()
1056 init_completion(&ar->cmd_wait); in carl9170_usb_probe()
1057 init_completion(&ar->fw_boot_wait); in carl9170_usb_probe()
1058 init_completion(&ar->fw_load_wait); in carl9170_usb_probe()
1059 tasklet_init(&ar->usb_tasklet, carl9170_usb_tasklet, in carl9170_usb_probe()
1060 (unsigned long)ar); in carl9170_usb_probe()
1062 atomic_set(&ar->tx_cmd_urbs, 0); in carl9170_usb_probe()
1063 atomic_set(&ar->tx_anch_urbs, 0); in carl9170_usb_probe()
1064 atomic_set(&ar->rx_work_urbs, 0); in carl9170_usb_probe()
1065 atomic_set(&ar->rx_anch_urbs, 0); in carl9170_usb_probe()
1066 atomic_set(&ar->rx_pool_urbs, 0); in carl9170_usb_probe()
1068 usb_get_dev(ar->udev); in carl9170_usb_probe()
1070 carl9170_set_state(ar, CARL9170_STOPPED); in carl9170_usb_probe()
1073 &ar->udev->dev, GFP_KERNEL, ar, carl9170_usb_firmware_step2); in carl9170_usb_probe()
1078 struct ar9170 *ar = usb_get_intfdata(intf); in carl9170_usb_disconnect() local
1081 if (WARN_ON(!ar)) in carl9170_usb_disconnect()
1084 udev = ar->udev; in carl9170_usb_disconnect()
1085 wait_for_completion(&ar->fw_load_wait); in carl9170_usb_disconnect()
1087 if (IS_INITIALIZED(ar)) { in carl9170_usb_disconnect()
1088 carl9170_reboot(ar); in carl9170_usb_disconnect()
1089 carl9170_usb_stop(ar); in carl9170_usb_disconnect()
1092 carl9170_usb_cancel_urbs(ar); in carl9170_usb_disconnect()
1093 carl9170_unregister(ar); in carl9170_usb_disconnect()
1097 carl9170_release_firmware(ar); in carl9170_usb_disconnect()
1098 carl9170_free(ar); in carl9170_usb_disconnect()
1106 struct ar9170 *ar = usb_get_intfdata(intf); in carl9170_usb_suspend() local
1108 if (!ar) in carl9170_usb_suspend()
1111 carl9170_usb_cancel_urbs(ar); in carl9170_usb_suspend()
1118 struct ar9170 *ar = usb_get_intfdata(intf); in carl9170_usb_resume() local
1121 if (!ar) in carl9170_usb_resume()
1124 usb_unpoison_anchored_urbs(&ar->rx_anch); in carl9170_usb_resume()
1125 carl9170_set_state(ar, CARL9170_STOPPED); in carl9170_usb_resume()
1138 err = carl9170_usb_init_device(ar); in carl9170_usb_resume()
1145 carl9170_usb_cancel_urbs(ar); in carl9170_usb_resume()