Lines Matching refs:session
125 void ipc_mux_netif_tx_flowctrl(struct mux_session *session, int idx, bool on) in ipc_mux_netif_tx_flowctrl() argument
128 ipc_wwan_tx_flowctrl(session->wwan, idx, on); in ipc_mux_netif_tx_flowctrl()
169 struct mux_session *session; in ipc_mux_dl_dlcmds_decode_process() local
184 session = &ipc_mux->session[cmdh->if_id]; in ipc_mux_dl_dlcmds_decode_process()
191 session->flow_ctl_mask = in ipc_mux_dl_dlcmds_decode_process()
194 session->flow_ctl_mask = ~0; in ipc_mux_dl_dlcmds_decode_process()
199 session->net_tx_stop = true; in ipc_mux_dl_dlcmds_decode_process()
201 session->flow_ctl_en_cnt++; in ipc_mux_dl_dlcmds_decode_process()
210 session->flow_ctl_mask = in ipc_mux_dl_dlcmds_decode_process()
213 session->flow_ctl_mask = 0; in ipc_mux_dl_dlcmds_decode_process()
215 session->flow_ctl_dis_cnt++; in ipc_mux_dl_dlcmds_decode_process()
317 wwan = ipc_mux->session[if_id].wwan; in ipc_mux_dl_fcth_decode()
326 if_id, ipc_mux->session[if_id].ul_flow_credits, ul_credits); in ipc_mux_dl_fcth_decode()
329 ipc_mux->session[if_id].ul_flow_credits += ul_credits; in ipc_mux_dl_fcth_decode()
332 if (ipc_mux->session[if_id].ul_flow_credits > 0) { in ipc_mux_dl_fcth_decode()
333 ipc_mux->session[if_id].net_tx_stop = false; in ipc_mux_dl_fcth_decode()
334 ipc_mux_netif_tx_flowctrl(&ipc_mux->session[if_id], in ipc_mux_dl_fcth_decode()
335 ipc_mux->session[if_id].if_id, false); in ipc_mux_dl_fcth_decode()
365 wwan = ipc_mux->session[if_id].wwan; in ipc_mux_dl_adgh_decode()
380 ipc_mux->session[if_id].dl_head_pad_len - IPC_MEM_DL_ETH_OFFSET; in ipc_mux_dl_adgh_decode()
392 ipc_mux->session[if_id].flush = 1; in ipc_mux_dl_adgh_decode()
491 struct mux_session *session; in ipc_mux_ul_adgh_finish() local
493 session = &ipc_mux->session[ul_adb->adgh->if_id]; in ipc_mux_ul_adgh_finish()
495 bytes = (long long)session->ul_flow_credits; in ipc_mux_ul_adgh_finish()
538 struct mux_session *session; in ipc_mux_stop_tx_for_all_sessions() local
542 session = &ipc_mux->session[idx]; in ipc_mux_stop_tx_for_all_sessions()
544 if (!session->wwan) in ipc_mux_stop_tx_for_all_sessions()
547 session->net_tx_stop = true; in ipc_mux_stop_tx_for_all_sessions()
555 struct mux_session *session; in ipc_mux_lite_send_qlt() local
567 session = &ipc_mux->session[i]; in ipc_mux_lite_send_qlt()
569 if (!session->wwan || session->flow_ctl_mask) in ipc_mux_lite_send_qlt()
589 qlt->vfl.nr_of_bytes = cpu_to_le32(session->ul_list.qlen); in ipc_mux_lite_send_qlt()
610 struct mux_session *session, in ipc_mux_ul_bytes_credits_check() argument
619 credits = session->ul_flow_credits; in ipc_mux_ul_bytes_credits_check()
623 session->if_id, session->ul_flow_credits, in ipc_mux_ul_bytes_credits_check()
624 session->ul_list.qlen); /* nr_of_bytes */ in ipc_mux_ul_bytes_credits_check()
635 session->if_id, ipc_mux->ul_data_pend_bytes, in ipc_mux_ul_bytes_credits_check()
658 struct mux_session *session, in ipc_mux_ul_adgh_encode() argument
672 nr_of_pkts = ipc_mux_ul_bytes_credits_check(ipc_mux, session, ul_list, in ipc_mux_ul_adgh_encode()
682 if (session->ul_head_pad_len > IPC_MEM_DL_ETH_OFFSET) in ipc_mux_ul_adgh_encode()
683 pad_len = session->ul_head_pad_len - IPC_MEM_DL_ETH_OFFSET; in ipc_mux_ul_adgh_encode()
737 session->ul_flow_credits -= src_skb->len; in ipc_mux_ul_adgh_encode()
768 struct mux_session *session; in ipc_mux_ul_data_encode() local
782 session = &ipc_mux->session[session_id]; in ipc_mux_ul_data_encode()
789 if (!session->wwan || session->flow_ctl_mask || in ipc_mux_ul_data_encode()
790 session->net_tx_stop) in ipc_mux_ul_data_encode()
793 ul_list = &session->ul_list; in ipc_mux_ul_data_encode()
806 updated = ipc_mux_ul_adgh_encode(ipc_mux, session_id, session, in ipc_mux_ul_data_encode()
862 struct mux_session *session = &ipc_mux->session[if_id]; in ipc_mux_ul_trigger_encode() local
872 if (!session->wwan) { in ipc_mux_ul_trigger_encode()
882 if (skb_queue_len(&session->ul_list) >= in ipc_mux_ul_trigger_encode()
883 (session->net_tx_stop ? in ipc_mux_ul_trigger_encode()
887 ipc_mux_netif_tx_flowctrl(session, session->if_id, true); in ipc_mux_ul_trigger_encode()
893 skb_queue_tail(&session->ul_list, skb); in ipc_mux_ul_trigger_encode()
905 if_id, skb_queue_len(&session->ul_list), session->ul_list.qlen, in ipc_mux_ul_trigger_encode()