Lines Matching refs:adapter

60 static int mwifiex_usb_recv(struct mwifiex_adapter *adapter,  in mwifiex_usb_recv()  argument
63 struct device *dev = adapter->dev; in mwifiex_usb_recv()
68 if (adapter->hs_activated) in mwifiex_usb_recv()
69 mwifiex_process_hs_config(adapter); in mwifiex_usb_recv()
89 } else if (!adapter->curr_cmd) { in mwifiex_usb_recv()
91 if (adapter->ps_state == PS_STATE_SLEEP_CFM) { in mwifiex_usb_recv()
93 adapter, skb->data, in mwifiex_usb_recv()
102 adapter->curr_cmd->resp_skb = skb; in mwifiex_usb_recv()
103 adapter->cmd_resp_received = true; in mwifiex_usb_recv()
112 adapter->event_cause = le32_to_cpu(tmp); in mwifiex_usb_recv()
113 dev_dbg(dev, "event_cause %#x\n", adapter->event_cause); in mwifiex_usb_recv()
121 memcpy(adapter->event_body, skb->data + in mwifiex_usb_recv()
124 adapter->event_received = true; in mwifiex_usb_recv()
125 adapter->event_skb = skb; in mwifiex_usb_recv()
139 skb_queue_tail(&adapter->rx_data_q, skb); in mwifiex_usb_recv()
140 adapter->data_received = true; in mwifiex_usb_recv()
141 atomic_inc(&adapter->rx_pending); in mwifiex_usb_recv()
160 struct mwifiex_adapter *adapter = context->adapter; 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()
178 if (urb->status || (adapter->surprise_removed)) { in mwifiex_usb_rx_complete()
179 dev_err(adapter->dev, in mwifiex_usb_rx_complete()
191 status = mwifiex_usb_recv(adapter, skb, context->ep); in mwifiex_usb_rx_complete()
193 dev_dbg(adapter->dev, "info: recv_length=%d, status=%d\n", in mwifiex_usb_rx_complete()
196 mwifiex_queue_main_work(adapter); in mwifiex_usb_rx_complete()
206 dev_err(adapter->dev, in mwifiex_usb_rx_complete()
214 if (!adapter->is_suspended) { in mwifiex_usb_rx_complete()
215 dev_warn(adapter->dev, in mwifiex_usb_rx_complete()
217 adapter->surprise_removed = true; in mwifiex_usb_rx_complete()
239 if (atomic_read(&adapter->rx_pending) <= HIGH_RX_PENDING) in mwifiex_usb_rx_complete()
249 struct mwifiex_adapter *adapter = context->adapter; in mwifiex_usb_tx_complete() local
250 struct usb_card_rec *card = adapter->card; in mwifiex_usb_tx_complete()
252 dev_dbg(adapter->dev, "%s: status: %d\n", __func__, urb->status); in mwifiex_usb_tx_complete()
255 dev_dbg(adapter->dev, "%s: CMD\n", __func__); in mwifiex_usb_tx_complete()
257 adapter->cmd_sent = false; in mwifiex_usb_tx_complete()
259 dev_dbg(adapter->dev, "%s: DATA\n", __func__); in mwifiex_usb_tx_complete()
261 mwifiex_write_data_complete(adapter, context->skb, 0, in mwifiex_usb_tx_complete()
265 mwifiex_queue_main_work(adapter); in mwifiex_usb_tx_complete()
272 struct mwifiex_adapter *adapter = ctx->adapter; in mwifiex_usb_submit_rx_urb() local
273 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_usb_submit_rx_urb()
278 dev_err(adapter->dev, in mwifiex_usb_submit_rx_urb()
294 dev_err(adapter->dev, "usb_submit_urb failed\n"); in mwifiex_usb_submit_rx_urb()
461 struct mwifiex_adapter *adapter; in mwifiex_usb_suspend() local
464 if (!card || !card->adapter) { in mwifiex_usb_suspend()
468 adapter = card->adapter; in mwifiex_usb_suspend()
470 if (unlikely(adapter->is_suspended)) in mwifiex_usb_suspend()
471 dev_warn(adapter->dev, "Device already suspended\n"); in mwifiex_usb_suspend()
473 mwifiex_enable_hs(adapter); in mwifiex_usb_suspend()
481 adapter->is_suspended = true; in mwifiex_usb_suspend()
482 adapter->hs_enabling = false; in mwifiex_usb_suspend()
512 struct mwifiex_adapter *adapter; in mwifiex_usb_resume() local
515 if (!card || !card->adapter) { in mwifiex_usb_resume()
519 adapter = card->adapter; in mwifiex_usb_resume()
521 if (unlikely(!adapter->is_suspended)) { in mwifiex_usb_resume()
522 dev_warn(adapter->dev, "Device already resumed\n"); in mwifiex_usb_resume()
529 adapter->is_suspended = false; in mwifiex_usb_resume()
544 if (adapter->hs_activated) in mwifiex_usb_resume()
545 mwifiex_cancel_hs(mwifiex_get_priv(adapter, in mwifiex_usb_resume()
555 struct mwifiex_adapter *adapter; in mwifiex_usb_disconnect() local
557 if (!card || !card->adapter) { in mwifiex_usb_disconnect()
562 adapter = card->adapter; in mwifiex_usb_disconnect()
563 if (!adapter->priv_num) in mwifiex_usb_disconnect()
568 if (adapter->is_suspended) in mwifiex_usb_disconnect()
572 mwifiex_deauthenticate_all(adapter); in mwifiex_usb_disconnect()
574 mwifiex_init_shutdown_fw(mwifiex_get_priv(adapter, in mwifiex_usb_disconnect()
581 dev_dbg(adapter->dev, "%s: removing card\n", __func__); in mwifiex_usb_disconnect()
582 mwifiex_remove_card(adapter, &add_remove_card_sem); in mwifiex_usb_disconnect()
601 static int mwifiex_usb_tx_init(struct mwifiex_adapter *adapter) in mwifiex_usb_tx_init() argument
603 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_usb_tx_init()
606 card->tx_cmd.adapter = adapter; in mwifiex_usb_tx_init()
611 dev_err(adapter->dev, "tx_cmd.urb allocation failed\n"); in mwifiex_usb_tx_init()
618 card->tx_data_list[i].adapter = adapter; in mwifiex_usb_tx_init()
623 dev_err(adapter->dev, in mwifiex_usb_tx_init()
632 static int mwifiex_usb_rx_init(struct mwifiex_adapter *adapter) in mwifiex_usb_rx_init() argument
634 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_usb_rx_init()
637 card->rx_cmd.adapter = adapter; in mwifiex_usb_rx_init()
642 dev_err(adapter->dev, "rx_cmd.urb allocation failed\n"); in mwifiex_usb_rx_init()
648 dev_err(adapter->dev, "rx_cmd.skb allocation failed\n"); in mwifiex_usb_rx_init()
656 card->rx_data_list[i].adapter = adapter; in mwifiex_usb_rx_init()
661 dev_err(adapter->dev, in mwifiex_usb_rx_init()
673 static int mwifiex_write_data_sync(struct mwifiex_adapter *adapter, u8 *pbuf, in mwifiex_write_data_sync() argument
676 struct usb_card_rec *card = adapter->card; in mwifiex_write_data_sync()
686 dev_err(adapter->dev, "usb_bulk_msg for tx failed: %d\n", ret); in mwifiex_write_data_sync()
695 static int mwifiex_read_data_sync(struct mwifiex_adapter *adapter, u8 *pbuf, in mwifiex_read_data_sync() argument
698 struct usb_card_rec *card = adapter->card; in mwifiex_read_data_sync()
705 dev_err(adapter->dev, "usb_bulk_msg for rx failed: %d\n", ret); in mwifiex_read_data_sync()
715 static int mwifiex_usb_host_to_card(struct mwifiex_adapter *adapter, u8 ep, in mwifiex_usb_host_to_card() argument
719 struct usb_card_rec *card = adapter->card; in mwifiex_usb_host_to_card()
724 if (adapter->is_suspended) { in mwifiex_usb_host_to_card()
725 dev_err(adapter->dev, in mwifiex_usb_host_to_card()
730 if (adapter->surprise_removed) { in mwifiex_usb_host_to_card()
731 dev_err(adapter->dev, "%s: device removed\n", __func__); in mwifiex_usb_host_to_card()
740 dev_dbg(adapter->dev, "%s: ep=%d\n", __func__, ep); in mwifiex_usb_host_to_card()
750 context->adapter = adapter; in mwifiex_usb_host_to_card()
767 dev_err(adapter->dev, "%s: usb_submit_urb failed\n", __func__); in mwifiex_usb_host_to_card()
790 static int mwifiex_register_dev(struct mwifiex_adapter *adapter) in mwifiex_register_dev() argument
792 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_register_dev()
794 card->adapter = adapter; in mwifiex_register_dev()
795 adapter->dev = &card->udev->dev; in mwifiex_register_dev()
800 adapter->tx_buf_size = MWIFIEX_TX_DATA_BUF_SIZE_4K; in mwifiex_register_dev()
801 strcpy(adapter->fw_name, USB8897_DEFAULT_FW_NAME); in mwifiex_register_dev()
802 adapter->ext_scan = true; in mwifiex_register_dev()
806 adapter->tx_buf_size = MWIFIEX_TX_DATA_BUF_SIZE_2K; in mwifiex_register_dev()
807 strcpy(adapter->fw_name, USB8766_DEFAULT_FW_NAME); in mwifiex_register_dev()
808 adapter->ext_scan = true; in mwifiex_register_dev()
812 adapter->tx_buf_size = MWIFIEX_TX_DATA_BUF_SIZE_2K; in mwifiex_register_dev()
813 strcpy(adapter->fw_name, USB8801_DEFAULT_FW_NAME); in mwifiex_register_dev()
814 adapter->ext_scan = false; in mwifiex_register_dev()
819 adapter->tx_buf_size = MWIFIEX_TX_DATA_BUF_SIZE_2K; in mwifiex_register_dev()
820 strcpy(adapter->fw_name, USB8797_DEFAULT_FW_NAME); in mwifiex_register_dev()
827 static void mwifiex_unregister_dev(struct mwifiex_adapter *adapter) in mwifiex_unregister_dev() argument
829 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_unregister_dev()
831 card->adapter = NULL; in mwifiex_unregister_dev()
834 static int mwifiex_prog_fw_w_helper(struct mwifiex_adapter *adapter, in mwifiex_prog_fw_w_helper() argument
846 dev_err(adapter->dev, in mwifiex_prog_fw_w_helper()
888 ret = mwifiex_write_data_sync(adapter, buf, &len, in mwifiex_prog_fw_w_helper()
892 dev_err(adapter->dev, in mwifiex_prog_fw_w_helper()
901 ret = mwifiex_read_data_sync(adapter, buf, &len, in mwifiex_prog_fw_w_helper()
905 dev_err(adapter->dev, in mwifiex_prog_fw_w_helper()
916 dev_warn(adapter->dev, in mwifiex_prog_fw_w_helper()
925 dev_dbg(adapter->dev, in mwifiex_prog_fw_w_helper()
934 dev_err(adapter->dev, in mwifiex_prog_fw_w_helper()
948 dev_notice(adapter->dev, in mwifiex_prog_fw_w_helper()
960 static int mwifiex_usb_dnld_fw(struct mwifiex_adapter *adapter, in mwifiex_usb_dnld_fw() argument
964 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_usb_dnld_fw()
967 ret = mwifiex_prog_fw_w_helper(adapter, fw); in mwifiex_usb_dnld_fw()
976 ret = mwifiex_usb_rx_init(adapter); in mwifiex_usb_dnld_fw()
978 ret = mwifiex_usb_tx_init(adapter); in mwifiex_usb_dnld_fw()
983 static void mwifiex_submit_rx_urb(struct mwifiex_adapter *adapter, u8 ep) in mwifiex_submit_rx_urb() argument
985 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_submit_rx_urb()
996 static int mwifiex_usb_cmd_event_complete(struct mwifiex_adapter *adapter, in mwifiex_usb_cmd_event_complete() argument
999 mwifiex_submit_rx_urb(adapter, MWIFIEX_USB_EP_CMD_EVENT); in mwifiex_usb_cmd_event_complete()
1005 static int mwifiex_pm_wakeup_card(struct mwifiex_adapter *adapter) in mwifiex_pm_wakeup_card() argument
1008 adapter->pm_wakeup_fw_try = false; in mwifiex_pm_wakeup_card()
1009 del_timer(&adapter->wakeup_timer); in mwifiex_pm_wakeup_card()
1010 adapter->pm_wakeup_card_req = false; in mwifiex_pm_wakeup_card()
1011 adapter->ps_state = PS_STATE_AWAKE; in mwifiex_pm_wakeup_card()
1016 static void mwifiex_usb_submit_rem_rx_urbs(struct mwifiex_adapter *adapter) in mwifiex_usb_submit_rem_rx_urbs() argument
1018 struct usb_card_rec *card = (struct usb_card_rec *)adapter->card; in mwifiex_usb_submit_rem_rx_urbs()
1032 mwifiex_pm_wakeup_card_complete(struct mwifiex_adapter *adapter) in mwifiex_pm_wakeup_card_complete() argument