Lines Matching refs:ar
26 static void ath10k_htc_control_tx_complete(struct ath10k *ar, in ath10k_htc_control_tx_complete() argument
32 static struct sk_buff *ath10k_htc_build_tx_ctrl_skb(void *ar) in ath10k_htc_build_tx_ctrl_skb() argument
47 ath10k_dbg(ar, ATH10K_DBG_HTC, "%s: skb %p\n", __func__, skb); in ath10k_htc_build_tx_ctrl_skb()
56 dma_unmap_single(htc->ar->dev, skb_cb->paddr, skb->len, DMA_TO_DEVICE); in ath10k_htc_restore_tx_skb()
63 struct ath10k *ar = ep->htc->ar; in ath10k_htc_notify_tx_completion() local
65 ath10k_dbg(ar, ATH10K_DBG_HTC, "%s: ep %d skb %p\n", __func__, in ath10k_htc_notify_tx_completion()
71 ath10k_warn(ar, "no tx handler for eid %d\n", ep->eid); in ath10k_htc_notify_tx_completion()
76 ep->ep_ops.ep_tx_complete(ep->htc->ar, skb); in ath10k_htc_notify_tx_completion()
100 struct ath10k *ar = htc->ar; in ath10k_htc_send() local
104 struct device *dev = htc->ar->dev; in ath10k_htc_send()
108 if (htc->ar->state == ATH10K_STATE_WEDGED) in ath10k_htc_send()
112 ath10k_warn(ar, "Invalid endpoint id: %d\n", eid); in ath10k_htc_send()
127 ath10k_dbg(ar, ATH10K_DBG_HTC, in ath10k_htc_send()
149 ret = ath10k_hif_tx_sg(htc->ar, ep->ul_pipe_id, &sg_item, 1); in ath10k_htc_send()
161 ath10k_dbg(ar, ATH10K_DBG_HTC, in ath10k_htc_send()
167 ep->ep_ops.ep_tx_credits(htc->ar); in ath10k_htc_send()
174 void ath10k_htc_tx_completion_handler(struct ath10k *ar, struct sk_buff *skb) in ath10k_htc_tx_completion_handler() argument
176 struct ath10k_htc *htc = &ar->htc; in ath10k_htc_tx_completion_handler()
201 struct ath10k *ar = htc->ar; in ath10k_htc_process_credit_report() local
206 ath10k_warn(ar, "Uneven credit report len %d", len); in ath10k_htc_process_credit_report()
218 ath10k_dbg(ar, ATH10K_DBG_HTC, "htc ep %d got %d credits (total %d)\n", in ath10k_htc_process_credit_report()
223 ep->ep_ops.ep_tx_credits(htc->ar); in ath10k_htc_process_credit_report()
235 struct ath10k *ar = htc->ar; in ath10k_htc_process_trailer() local
255 ath10k_warn(ar, "Invalid record length: %d\n", in ath10k_htc_process_trailer()
265 ath10k_warn(ar, "Credit report too long\n"); in ath10k_htc_process_trailer()
275 ath10k_warn(ar, "Unhandled record: id:%d length:%d\n", in ath10k_htc_process_trailer()
289 ath10k_dbg_dump(ar, ATH10K_DBG_HTC, "htc rx bad trailer", "", in ath10k_htc_process_trailer()
295 void ath10k_htc_rx_completion_handler(struct ath10k *ar, struct sk_buff *skb) in ath10k_htc_rx_completion_handler() argument
298 struct ath10k_htc *htc = &ar->htc; in ath10k_htc_rx_completion_handler()
313 ath10k_warn(ar, "HTC Rx: invalid eid %d\n", eid); in ath10k_htc_rx_completion_handler()
314 ath10k_dbg_dump(ar, ATH10K_DBG_HTC, "htc bad header", "", in ath10k_htc_rx_completion_handler()
324 ath10k_warn(ar, "HTC rx frame too long, len: %zu\n", in ath10k_htc_rx_completion_handler()
326 ath10k_dbg_dump(ar, ATH10K_DBG_HTC, "htc bad rx pkt len", "", in ath10k_htc_rx_completion_handler()
332 ath10k_dbg(ar, ATH10K_DBG_HTC, in ath10k_htc_rx_completion_handler()
335 ath10k_dbg_dump(ar, ATH10K_DBG_HTC, "htc bad rx pkt len", in ath10k_htc_rx_completion_handler()
350 ath10k_warn(ar, "Invalid trailer length: %d\n", in ath10k_htc_rx_completion_handler()
383 ath10k_warn(ar, "HTC rx ctrl still processing\n"); in ath10k_htc_rx_completion_handler()
398 htc->htc_ops.target_send_suspend_complete(ar); in ath10k_htc_rx_completion_handler()
401 ath10k_warn(ar, "ignoring unsolicited htc ep0 event\n"); in ath10k_htc_rx_completion_handler()
407 ath10k_dbg(ar, ATH10K_DBG_HTC, "htc rx completion ep %d skb %p\n", in ath10k_htc_rx_completion_handler()
409 ep->ep_ops.ep_rx_complete(ar, skb); in ath10k_htc_rx_completion_handler()
418 static void ath10k_htc_control_rx_complete(struct ath10k *ar, in ath10k_htc_control_rx_complete() argument
423 ath10k_warn(ar, "unexpected htc rx\n"); in ath10k_htc_control_rx_complete()
510 struct ath10k *ar = htc->ar; in ath10k_htc_wait_target() local
529 ath10k_warn(ar, "failed to receive control response completion, polling..\n"); in ath10k_htc_wait_target()
532 ath10k_hif_send_complete_check(htc->ar, i, 1); in ath10k_htc_wait_target()
543 ath10k_err(ar, "ctl_resp never came in (%d)\n", status); in ath10k_htc_wait_target()
548 ath10k_err(ar, "Invalid HTC ready msg len:%d\n", in ath10k_htc_wait_target()
559 ath10k_err(ar, "Invalid HTC ready msg: 0x%x\n", message_id); in ath10k_htc_wait_target()
566 ath10k_dbg(ar, ATH10K_DBG_HTC, in ath10k_htc_wait_target()
573 ath10k_err(ar, "Invalid credit size received\n"); in ath10k_htc_wait_target()
590 ath10k_err(ar, "could not connect to htc service (%d)\n", in ath10k_htc_wait_target()
602 struct ath10k *ar = htc->ar; in ath10k_htc_connect_service() local
629 ath10k_dbg(ar, ATH10K_DBG_BOOT, in ath10k_htc_connect_service()
633 skb = ath10k_htc_build_tx_ctrl_skb(htc->ar); in ath10k_htc_connect_service()
635 ath10k_err(ar, "Failed to allocate HTC packet\n"); in ath10k_htc_connect_service()
671 ath10k_err(ar, "Service connect timeout\n"); in ath10k_htc_connect_service()
684 ath10k_err(ar, "Invalid resp message ID 0x%x", message_id); in ath10k_htc_connect_service()
688 ath10k_dbg(ar, ATH10K_DBG_HTC, in ath10k_htc_connect_service()
697 ath10k_err(ar, "HTC Service %s connect request failed: 0x%x)\n", in ath10k_htc_connect_service()
739 status = ath10k_hif_map_service_to_pipe(htc->ar, in ath10k_htc_connect_service()
746 ath10k_dbg(ar, ATH10K_DBG_BOOT, in ath10k_htc_connect_service()
753 ath10k_dbg(ar, ATH10K_DBG_BOOT, in ath10k_htc_connect_service()
761 struct sk_buff *ath10k_htc_alloc_skb(struct ath10k *ar, int size) in ath10k_htc_alloc_skb() argument
773 ath10k_warn(ar, "Unaligned HTC tx skb\n"); in ath10k_htc_alloc_skb()
780 struct ath10k *ar = htc->ar; in ath10k_htc_start() local
785 skb = ath10k_htc_build_tx_ctrl_skb(htc->ar); in ath10k_htc_start()
796 ath10k_dbg(ar, ATH10K_DBG_HTC, "HTC is using TX credit flow control\n"); in ath10k_htc_start()
808 int ath10k_htc_init(struct ath10k *ar) in ath10k_htc_init() argument
811 struct ath10k_htc *htc = &ar->htc; in ath10k_htc_init()
817 htc->ar = ar; in ath10k_htc_init()
822 ath10k_hif_get_default_pipe(ar, &ep->ul_pipe_id, &ep->dl_pipe_id); in ath10k_htc_init()