Lines Matching refs:card
162 struct usb_card_rec *card; in mwifiex_usb_rx_complete() local
166 if (!adapter || !adapter->card) { in mwifiex_usb_rx_complete()
171 card = (struct usb_card_rec *)adapter->card; in mwifiex_usb_rx_complete()
172 if (card->rx_cmd_ep == context->ep) in mwifiex_usb_rx_complete()
173 atomic_dec(&card->rx_cmd_urb_pending); in mwifiex_usb_rx_complete()
175 atomic_dec(&card->rx_data_urb_pending); in mwifiex_usb_rx_complete()
182 if (card->rx_cmd_ep != context->ep) in mwifiex_usb_rx_complete()
202 if (card->rx_cmd_ep == context->ep) in mwifiex_usb_rx_complete()
210 if (card->rx_cmd_ep != context->ep) in mwifiex_usb_rx_complete()
223 if (card->rx_cmd_ep != context->ep) in mwifiex_usb_rx_complete()
230 if (card->rx_cmd_ep == context->ep) in mwifiex_usb_rx_complete()
235 if (card->rx_cmd_ep == context->ep) { in mwifiex_usb_rx_complete()
250 struct usb_card_rec *card = adapter->card; in mwifiex_usb_tx_complete() local
254 if (context->ep == card->tx_cmd_ep) { in mwifiex_usb_tx_complete()
256 atomic_dec(&card->tx_cmd_urb_pending); in mwifiex_usb_tx_complete()
260 atomic_dec(&card->tx_data_urb_pending); in mwifiex_usb_tx_complete()
273 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_usb_submit_rx_urb() local
275 if (card->rx_cmd_ep != ctx->ep) { in mwifiex_usb_submit_rx_urb()
284 usb_fill_bulk_urb(ctx->urb, card->udev, in mwifiex_usb_submit_rx_urb()
285 usb_rcvbulkpipe(card->udev, ctx->ep), ctx->skb->data, in mwifiex_usb_submit_rx_urb()
288 if (card->rx_cmd_ep == ctx->ep) in mwifiex_usb_submit_rx_urb()
289 atomic_inc(&card->rx_cmd_urb_pending); in mwifiex_usb_submit_rx_urb()
291 atomic_inc(&card->rx_data_urb_pending); in mwifiex_usb_submit_rx_urb()
298 if (card->rx_cmd_ep == ctx->ep) in mwifiex_usb_submit_rx_urb()
299 atomic_dec(&card->rx_cmd_urb_pending); in mwifiex_usb_submit_rx_urb()
301 atomic_dec(&card->rx_data_urb_pending); in mwifiex_usb_submit_rx_urb()
309 static void mwifiex_usb_free(struct usb_card_rec *card) in mwifiex_usb_free() argument
313 if (atomic_read(&card->rx_cmd_urb_pending) && card->rx_cmd.urb) in mwifiex_usb_free()
314 usb_kill_urb(card->rx_cmd.urb); in mwifiex_usb_free()
316 usb_free_urb(card->rx_cmd.urb); in mwifiex_usb_free()
317 card->rx_cmd.urb = NULL; in mwifiex_usb_free()
319 if (atomic_read(&card->rx_data_urb_pending)) in mwifiex_usb_free()
321 if (card->rx_data_list[i].urb) in mwifiex_usb_free()
322 usb_kill_urb(card->rx_data_list[i].urb); in mwifiex_usb_free()
325 usb_free_urb(card->rx_data_list[i].urb); in mwifiex_usb_free()
326 card->rx_data_list[i].urb = NULL; in mwifiex_usb_free()
330 usb_free_urb(card->tx_data_list[i].urb); in mwifiex_usb_free()
331 card->tx_data_list[i].urb = NULL; in mwifiex_usb_free()
334 usb_free_urb(card->tx_cmd.urb); in mwifiex_usb_free()
335 card->tx_cmd.urb = NULL; in mwifiex_usb_free()
351 struct usb_card_rec *card; in mwifiex_usb_probe() local
354 card = kzalloc(sizeof(struct usb_card_rec), GFP_KERNEL); in mwifiex_usb_probe()
355 if (!card) in mwifiex_usb_probe()
371 card->usb_boot_state = USB8XXX_FW_DNLD; in mwifiex_usb_probe()
377 card->usb_boot_state = USB8XXX_FW_READY; in mwifiex_usb_probe()
381 card->usb_boot_state = USB8XXX_FW_DNLD; in mwifiex_usb_probe()
385 card->udev = udev; in mwifiex_usb_probe()
386 card->intf = intf; in mwifiex_usb_probe()
401 card->rx_cmd_ep = usb_endpoint_num(epd); in mwifiex_usb_probe()
402 atomic_set(&card->rx_cmd_urb_pending, 0); in mwifiex_usb_probe()
410 card->rx_data_ep = usb_endpoint_num(epd); in mwifiex_usb_probe()
411 atomic_set(&card->rx_data_urb_pending, 0); in mwifiex_usb_probe()
419 card->tx_data_ep = usb_endpoint_num(epd); in mwifiex_usb_probe()
420 atomic_set(&card->tx_data_urb_pending, 0); in mwifiex_usb_probe()
428 card->tx_cmd_ep = usb_endpoint_num(epd); in mwifiex_usb_probe()
429 atomic_set(&card->tx_cmd_urb_pending, 0); in mwifiex_usb_probe()
430 card->bulk_out_maxpktsize = in mwifiex_usb_probe()
435 usb_set_intfdata(intf, card); in mwifiex_usb_probe()
437 ret = mwifiex_add_card(card, &add_remove_card_sem, &usb_ops, in mwifiex_usb_probe()
442 kfree(card); in mwifiex_usb_probe()
460 struct usb_card_rec *card = usb_get_intfdata(intf); in mwifiex_usb_suspend() local
464 if (!card || !card->adapter) { in mwifiex_usb_suspend()
468 adapter = card->adapter; in mwifiex_usb_suspend()
484 if (atomic_read(&card->rx_cmd_urb_pending) && card->rx_cmd.urb) in mwifiex_usb_suspend()
485 usb_kill_urb(card->rx_cmd.urb); in mwifiex_usb_suspend()
487 if (atomic_read(&card->rx_data_urb_pending)) in mwifiex_usb_suspend()
489 if (card->rx_data_list[i].urb) in mwifiex_usb_suspend()
490 usb_kill_urb(card->rx_data_list[i].urb); in mwifiex_usb_suspend()
493 if (card->tx_data_list[i].urb) in mwifiex_usb_suspend()
494 usb_kill_urb(card->tx_data_list[i].urb); in mwifiex_usb_suspend()
496 if (card->tx_cmd.urb) in mwifiex_usb_suspend()
497 usb_kill_urb(card->tx_cmd.urb); in mwifiex_usb_suspend()
511 struct usb_card_rec *card = usb_get_intfdata(intf); in mwifiex_usb_resume() local
515 if (!card || !card->adapter) { in mwifiex_usb_resume()
519 adapter = card->adapter; in mwifiex_usb_resume()
531 if (!atomic_read(&card->rx_data_urb_pending)) in mwifiex_usb_resume()
533 mwifiex_usb_submit_rx_urb(&card->rx_data_list[i], in mwifiex_usb_resume()
536 if (!atomic_read(&card->rx_cmd_urb_pending)) { in mwifiex_usb_resume()
537 card->rx_cmd.skb = dev_alloc_skb(MWIFIEX_RX_CMD_BUF_SIZE); in mwifiex_usb_resume()
538 if (card->rx_cmd.skb) in mwifiex_usb_resume()
539 mwifiex_usb_submit_rx_urb(&card->rx_cmd, in mwifiex_usb_resume()
554 struct usb_card_rec *card = usb_get_intfdata(intf); in mwifiex_usb_disconnect() local
557 if (!card || !card->adapter) { in mwifiex_usb_disconnect()
562 adapter = card->adapter; in mwifiex_usb_disconnect()
579 mwifiex_usb_free(card); in mwifiex_usb_disconnect()
586 kfree(card); in mwifiex_usb_disconnect()
603 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_usb_tx_init() local
606 card->tx_cmd.adapter = adapter; in mwifiex_usb_tx_init()
607 card->tx_cmd.ep = card->tx_cmd_ep; in mwifiex_usb_tx_init()
609 card->tx_cmd.urb = usb_alloc_urb(0, GFP_KERNEL); in mwifiex_usb_tx_init()
610 if (!card->tx_cmd.urb) { in mwifiex_usb_tx_init()
615 card->tx_data_ix = 0; in mwifiex_usb_tx_init()
618 card->tx_data_list[i].adapter = adapter; in mwifiex_usb_tx_init()
619 card->tx_data_list[i].ep = card->tx_data_ep; in mwifiex_usb_tx_init()
621 card->tx_data_list[i].urb = usb_alloc_urb(0, GFP_KERNEL); in mwifiex_usb_tx_init()
622 if (!card->tx_data_list[i].urb) { in mwifiex_usb_tx_init()
634 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_usb_rx_init() local
637 card->rx_cmd.adapter = adapter; in mwifiex_usb_rx_init()
638 card->rx_cmd.ep = card->rx_cmd_ep; in mwifiex_usb_rx_init()
640 card->rx_cmd.urb = usb_alloc_urb(0, GFP_KERNEL); in mwifiex_usb_rx_init()
641 if (!card->rx_cmd.urb) { in mwifiex_usb_rx_init()
646 card->rx_cmd.skb = dev_alloc_skb(MWIFIEX_RX_CMD_BUF_SIZE); in mwifiex_usb_rx_init()
647 if (!card->rx_cmd.skb) { in mwifiex_usb_rx_init()
652 if (mwifiex_usb_submit_rx_urb(&card->rx_cmd, MWIFIEX_RX_CMD_BUF_SIZE)) in mwifiex_usb_rx_init()
656 card->rx_data_list[i].adapter = adapter; in mwifiex_usb_rx_init()
657 card->rx_data_list[i].ep = card->rx_data_ep; in mwifiex_usb_rx_init()
659 card->rx_data_list[i].urb = usb_alloc_urb(0, GFP_KERNEL); in mwifiex_usb_rx_init()
660 if (!card->rx_data_list[i].urb) { in mwifiex_usb_rx_init()
665 if (mwifiex_usb_submit_rx_urb(&card->rx_data_list[i], in mwifiex_usb_rx_init()
676 struct usb_card_rec *card = adapter->card; in mwifiex_write_data_sync() local
679 if (!(*len % card->bulk_out_maxpktsize)) in mwifiex_write_data_sync()
683 ret = usb_bulk_msg(card->udev, usb_sndbulkpipe(card->udev, ep), pbuf, in mwifiex_write_data_sync()
698 struct usb_card_rec *card = adapter->card; in mwifiex_read_data_sync() local
702 ret = usb_bulk_msg(card->udev, usb_rcvbulkpipe(card->udev, ep), pbuf, in mwifiex_read_data_sync()
719 struct usb_card_rec *card = adapter->card; in mwifiex_usb_host_to_card() local
735 if (ep == card->tx_data_ep && in mwifiex_usb_host_to_card()
736 atomic_read(&card->tx_data_urb_pending) >= MWIFIEX_TX_DATA_URB) { in mwifiex_usb_host_to_card()
742 if (ep == card->tx_cmd_ep) { in mwifiex_usb_host_to_card()
743 context = &card->tx_cmd; in mwifiex_usb_host_to_card()
745 if (card->tx_data_ix >= MWIFIEX_TX_DATA_URB) in mwifiex_usb_host_to_card()
746 card->tx_data_ix = 0; in mwifiex_usb_host_to_card()
747 context = &card->tx_data_list[card->tx_data_ix++]; in mwifiex_usb_host_to_card()
755 usb_fill_bulk_urb(tx_urb, card->udev, usb_sndbulkpipe(card->udev, ep), in mwifiex_usb_host_to_card()
761 if (ep == card->tx_cmd_ep) in mwifiex_usb_host_to_card()
762 atomic_inc(&card->tx_cmd_urb_pending); in mwifiex_usb_host_to_card()
764 atomic_inc(&card->tx_data_urb_pending); in mwifiex_usb_host_to_card()
768 if (ep == card->tx_cmd_ep) { in mwifiex_usb_host_to_card()
769 atomic_dec(&card->tx_cmd_urb_pending); in mwifiex_usb_host_to_card()
771 atomic_dec(&card->tx_data_urb_pending); in mwifiex_usb_host_to_card()
772 if (card->tx_data_ix) in mwifiex_usb_host_to_card()
773 card->tx_data_ix--; in mwifiex_usb_host_to_card()
775 card->tx_data_ix = MWIFIEX_TX_DATA_URB; in mwifiex_usb_host_to_card()
780 if (ep == card->tx_data_ep && in mwifiex_usb_host_to_card()
781 atomic_read(&card->tx_data_urb_pending) == in mwifiex_usb_host_to_card()
792 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_register_dev() local
794 card->adapter = adapter; in mwifiex_register_dev()
795 adapter->dev = &card->udev->dev; in mwifiex_register_dev()
797 switch (le16_to_cpu(card->udev->descriptor.idProduct)) { in mwifiex_register_dev()
829 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_unregister_dev() local
831 card->adapter = NULL; in mwifiex_unregister_dev()
964 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_usb_dnld_fw() local
966 if (card->usb_boot_state == USB8XXX_FW_DNLD) { in mwifiex_usb_dnld_fw()
972 if (card->usb_boot_state == USB8XXX_FW_DNLD) in mwifiex_usb_dnld_fw()
985 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_submit_rx_urb() local
987 skb_push(card->rx_cmd.skb, INTF_HEADER_LEN); in mwifiex_submit_rx_urb()
988 if ((ep == card->rx_cmd_ep) && in mwifiex_submit_rx_urb()
989 (!atomic_read(&card->rx_cmd_urb_pending))) in mwifiex_submit_rx_urb()
990 mwifiex_usb_submit_rx_urb(&card->rx_cmd, in mwifiex_submit_rx_urb()
1018 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_usb_submit_rem_rx_urbs() local
1023 if (card->rx_data_list[i].skb) in mwifiex_usb_submit_rem_rx_urbs()
1025 ctx = &card->rx_data_list[i]; in mwifiex_usb_submit_rem_rx_urbs()