Lines Matching refs:ab
11 struct sk_buff *ath11k_htc_alloc_skb(struct ath11k_base *ab, int size) in ath11k_htc_alloc_skb() argument
23 ath11k_warn(ab, "Unaligned HTC tx skb\n"); in ath11k_htc_alloc_skb()
28 static void ath11k_htc_control_tx_complete(struct ath11k_base *ab, in ath11k_htc_control_tx_complete() argument
34 static struct sk_buff *ath11k_htc_build_tx_ctrl_skb(void *ab) in ath11k_htc_build_tx_ctrl_skb() argument
49 ath11k_dbg(ab, ATH11K_DBG_HTC, "%s: skb %pK\n", __func__, skb); in ath11k_htc_build_tx_ctrl_skb()
78 struct device *dev = htc->ab->dev; in ath11k_htc_send()
79 struct ath11k_base *ab = htc->ab; in ath11k_htc_send() local
84 ath11k_warn(ab, "Invalid endpoint id: %d\n", eid); in ath11k_htc_send()
94 ath11k_dbg(ab, ATH11K_DBG_HTC, in ath11k_htc_send()
102 ath11k_dbg(ab, ATH11K_DBG_HTC, in ath11k_htc_send()
118 ret = ath11k_ce_send(htc->ab, skb, ep->ul_pipe_id, ep->eid); in ath11k_htc_send()
130 ath11k_dbg(ab, ATH11K_DBG_HTC, in ath11k_htc_send()
136 ep->ep_ops.ep_tx_credits(htc->ab); in ath11k_htc_send()
149 struct ath11k_base *ab = htc->ab; in ath11k_htc_process_credit_report() local
154 ath11k_warn(ab, "Uneven credit report len %d", len); in ath11k_htc_process_credit_report()
166 ath11k_dbg(ab, ATH11K_DBG_HTC, "htc ep %d got %d credits (total %d)\n", in ath11k_htc_process_credit_report()
171 ep->ep_ops.ep_tx_credits(htc->ab); in ath11k_htc_process_credit_report()
183 struct ath11k_base *ab = htc->ab; in ath11k_htc_process_trailer() local
198 ath11k_warn(ab, "Invalid record length: %d\n", in ath11k_htc_process_trailer()
208 ath11k_warn(ab, "Credit report too long\n"); in ath11k_htc_process_trailer()
218 ath11k_warn(ab, "Unhandled record: id:%d length:%d\n", in ath11k_htc_process_trailer()
234 void ath11k_htc_rx_completion_handler(struct ath11k_base *ab, in ath11k_htc_rx_completion_handler() argument
238 struct ath11k_htc *htc = &ab->htc; in ath11k_htc_rx_completion_handler()
253 ath11k_warn(ab, "HTC Rx: invalid eid %d\n", eid); in ath11k_htc_rx_completion_handler()
262 ath11k_warn(ab, "HTC rx frame too long, len: %zu\n", in ath11k_htc_rx_completion_handler()
268 ath11k_warn(ab, "HTC Rx: insufficient length, got %d, expected %d\n", in ath11k_htc_rx_completion_handler()
285 ath11k_warn(ab, "Invalid trailer length: %d\n", in ath11k_htc_rx_completion_handler()
317 ath11k_warn(ab, "HTC rx ctrl still processing\n"); in ath11k_htc_rx_completion_handler()
332 ath11k_warn(ab, "ignoring unsolicited htc ep0 event\n"); in ath11k_htc_rx_completion_handler()
338 ath11k_dbg(ab, ATH11K_DBG_HTC, "htc rx completion ep %d skb %pK\n", in ath11k_htc_rx_completion_handler()
340 ep->ep_ops.ep_rx_complete(ab, skb); in ath11k_htc_rx_completion_handler()
343 ath11k_ce_poll_send_completed(ab, ep->ul_pipe_id); in ath11k_htc_rx_completion_handler()
351 static void ath11k_htc_control_rx_complete(struct ath11k_base *ab, in ath11k_htc_control_rx_complete() argument
357 ath11k_warn(ab, "unexpected htc rx\n"); in ath11k_htc_control_rx_complete()
460 struct ath11k_base *ab = htc->ab; in ath11k_htc_wait_target() local
470 ath11k_warn(ab, "failed to receive control response completion, polling..\n"); in ath11k_htc_wait_target()
472 for (i = 0; i < ab->hw_params.ce_count; i++) in ath11k_htc_wait_target()
473 ath11k_ce_per_engine_service(htc->ab, i); in ath11k_htc_wait_target()
484 ath11k_warn(ab, "ctl_resp never came in (%d)\n", status); in ath11k_htc_wait_target()
489 ath11k_warn(ab, "Invalid HTC ready msg len:%d\n", in ath11k_htc_wait_target()
501 ath11k_warn(ab, "Invalid HTC ready msg: 0x%x\n", message_id); in ath11k_htc_wait_target()
508 ath11k_dbg(ab, ATH11K_DBG_HTC, in ath11k_htc_wait_target()
514 ath11k_warn(ab, "Invalid credit size received\n"); in ath11k_htc_wait_target()
521 if (ab->hw_params.supports_shadow_regs) in ath11k_htc_wait_target()
533 struct ath11k_base *ab = htc->ab; in ath11k_htc_connect_service() local
559 ath11k_dbg(ab, ATH11K_DBG_BOOT, in ath11k_htc_connect_service()
563 skb = ath11k_htc_build_tx_ctrl_skb(htc->ab); in ath11k_htc_connect_service()
565 ath11k_warn(ab, "Failed to allocate HTC packet\n"); in ath11k_htc_connect_service()
603 ath11k_err(ab, "Service connect timeout\n"); in ath11k_htc_connect_service()
615 ath11k_err(ab, "Invalid resp message ID 0x%x", message_id); in ath11k_htc_connect_service()
619 ath11k_dbg(ab, ATH11K_DBG_HTC, in ath11k_htc_connect_service()
630 ath11k_err(ab, "HTC Service %s connect request failed: 0x%x)\n", in ath11k_htc_connect_service()
672 status = ath11k_hif_map_service_to_pipe(htc->ab, in ath11k_htc_connect_service()
679 ath11k_dbg(ab, ATH11K_DBG_BOOT, in ath11k_htc_connect_service()
686 ath11k_dbg(ab, ATH11K_DBG_BOOT, in ath11k_htc_connect_service()
698 struct ath11k_base *ab = htc->ab; in ath11k_htc_start() local
701 skb = ath11k_htc_build_tx_ctrl_skb(htc->ab); in ath11k_htc_start()
712 ath11k_dbg(ab, ATH11K_DBG_HTC, "HTC is using TX credit flow control\n"); in ath11k_htc_start()
723 int ath11k_htc_init(struct ath11k_base *ab) in ath11k_htc_init() argument
725 struct ath11k_htc *htc = &ab->htc; in ath11k_htc_init()
734 htc->ab = ab; in ath11k_htc_init()
736 switch (ab->wmi_ab.preferred_hw_mode) { in ath11k_htc_init()
748 htc->wmi_ep_count = ab->hw_params.max_radios; in ath11k_htc_init()
763 ath11k_err(ab, "could not connect to htc service (%d)\n", ret); in ath11k_htc_init()