• Home
  • Raw
  • Download

Lines Matching refs:hw

84 	sband = local->hw.wiphy->bands[info->band];  in ieee80211_duration()
219 if (!ieee80211_hw_check(&local->hw, SUPPORTS_PS)) in ieee80211_tx_h_dynamic_ps()
223 if (ieee80211_hw_check(&local->hw, SUPPORTS_DYNAMIC_PS)) in ieee80211_tx_h_dynamic_ps()
227 if (local->hw.conf.dynamic_ps_timeout <= 0) in ieee80211_tx_h_dynamic_ps()
265 if (local->hw.conf.flags & IEEE80211_CONF_PS) { in ieee80211_tx_h_dynamic_ps()
266 ieee80211_stop_queues_by_reason(&local->hw, in ieee80211_tx_h_dynamic_ps()
271 ieee80211_queue_work(&local->hw, in ieee80211_tx_h_dynamic_ps()
280 msecs_to_jiffies(local->hw.conf.dynamic_ps_timeout)); in ieee80211_tx_h_dynamic_ps()
372 ieee80211_free_txskb(&local->hw, skb); in purge_old_ps_buffers()
389 ieee80211_free_txskb(&local->hw, skb); in purge_old_ps_buffers()
396 ps_dbg_hw(&local->hw, "PS buffers full - purged %d frames\n", purged); in purge_old_ps_buffers()
435 if (ieee80211_hw_check(&tx->local->hw, QUEUE_CONTROL)) in ieee80211_tx_h_multicast_ps_buf()
445 if (!ieee80211_hw_check(&tx->local->hw, HOST_BROADCAST_PS_BUFFERING)) in ieee80211_tx_h_multicast_ps_buf()
455 ieee80211_free_txskb(&tx->local->hw, skb_dequeue(&ps->bc_buf)); in ieee80211_tx_h_multicast_ps_buf()
526 ieee80211_free_txskb(&local->hw, old); in ieee80211_tx_h_unicast_ps_buf()
674 sband = tx->local->hw.wiphy->bands[info->band]; in ieee80211_tx_h_rate_ctrl()
677 tx->local->hw.wiphy->frag_threshold); in ieee80211_tx_h_rate_ctrl()
680 txrc.hw = &tx->local->hw; in ieee80211_tx_h_rate_ctrl()
697 if (len > tx->local->hw.wiphy->rts_threshold) { in ieee80211_tx_h_rate_ctrl()
924 int frag_threshold = tx->local->hw.wiphy->frag_threshold; in ieee80211_tx_h_fragment()
935 if (ieee80211_hw_check(&tx->local->hw, SUPPORTS_TX_FRAG)) in ieee80211_tx_h_fragment()
1138 ieee80211_free_txskb(&tx->local->hw, purge_skb); in ieee80211_tx_prep_agg()
1198 ieee80211_hw_check(&local->hw, AMPDU_AGGREGATION) && in ieee80211_tx_prepare()
1199 !ieee80211_hw_check(&local->hw, TX_AMPDU_SETUP_IN_HW)) { in ieee80211_tx_prepare()
1225 skb->len + FCS_LEN <= local->hw.wiphy->frag_threshold || in ieee80211_tx_prepare()
1317 struct ieee80211_hw *hw; in codel_drop_func() local
1322 hw = &local->hw; in codel_drop_func()
1324 ieee80211_free_txskb(hw, skb); in codel_drop_func()
1373 ieee80211_free_txskb(&local->hw, skb); in fq_skb_free_func()
1431 ieee80211_purge_tx_queue(&local->hw, &txqi->frags); in ieee80211_txq_purge()
1456 sband = local->hw.wiphy->bands[band]; in ieee80211_txq_setup_flows()
1548 if (WARN_ON_ONCE(q >= local->hw.queues)) { in ieee80211_tx_frags()
1550 ieee80211_free_txskb(&local->hw, skb); in ieee80211_tx_frags()
1571 ieee80211_purge_tx_queue(&local->hw, in ieee80211_tx_frags()
1647 } else if (ieee80211_hw_check(&local->hw, QUEUE_CONTROL)) { in __ieee80211_tx()
1648 ieee80211_purge_tx_queue(&local->hw, skbs); in __ieee80211_tx()
1696 if (!ieee80211_hw_check(&tx->local->hw, HAS_RATE_CONTROL)) in invoke_tx_handlers_early()
1703 ieee80211_free_txskb(&tx->local->hw, tx->skb); in invoke_tx_handlers_early()
1705 ieee80211_purge_tx_queue(&tx->local->hw, &tx->skbs); in invoke_tx_handlers_early()
1736 if (!ieee80211_hw_check(&tx->local->hw, HAS_RATE_CONTROL)) in invoke_tx_handlers_late()
1744 ieee80211_free_txskb(&tx->local->hw, tx->skb); in invoke_tx_handlers_late()
1746 ieee80211_purge_tx_queue(&tx->local->hw, &tx->skbs); in invoke_tx_handlers_late()
1765 bool ieee80211_tx_prepare_skb(struct ieee80211_hw *hw, in ieee80211_tx_prepare_skb() argument
1794 ieee80211_free_txskb(hw, skb2); in ieee80211_tx_prepare_skb()
1795 ieee80211_purge_tx_queue(hw, &tx.skbs); in ieee80211_tx_prepare_skb()
1827 ieee80211_free_txskb(&local->hw, skb); in ieee80211_tx()
1835 !ieee80211_hw_check(&local->hw, QUEUE_CONTROL)) in ieee80211_tx()
1875 (!ieee80211_hw_check(&local->hw, SUPPORTS_CLONED_SKBS) || in ieee80211_skb_resize()
1884 wiphy_debug(local->hw.wiphy, in ieee80211_skb_resize()
1910 ieee80211_free_txskb(&local->hw, skb); in ieee80211_xmit()
1939 local->hw.wiphy->bands[info->band]; in ieee80211_parse_tx_radiotap()
2100 local->hw.max_rate_tries); in ieee80211_parse_tx_radiotap()
2239 if (!cfg80211_reg_can_beacon(local->hw.wiphy, chandef, in ieee80211_monitor_start_xmit()
2439 band = local->hw.conf.chandef.chan->band; in ieee80211_build_hdr()
2696 ieee80211_free_txskb(&local->hw, skb); in ieee80211_build_hdr()
2768 if (!ieee80211_hw_check(&local->hw, SUPPORT_FAST_XMIT)) in ieee80211_check_fast_xmit()
2784 if (ieee80211_hw_check(&local->hw, SUPPORTS_PS) && in ieee80211_check_fast_xmit()
2785 !ieee80211_hw_check(&local->hw, SUPPORTS_DYNAMIC_PS) && in ieee80211_check_fast_xmit()
2802 if (local->hw.wiphy->frag_threshold != (u32)-1 && in ieee80211_check_fast_xmit()
2803 !ieee80211_hw_check(&local->hw, SUPPORTS_TX_FRAG)) in ieee80211_check_fast_xmit()
3037 wiphy_debug(local->hw.wiphy, in ieee80211_amsdu_realloc_pad()
3126 int max_frags = local->hw.max_tx_fragments; in ieee80211_amsdu_aggregate()
3136 if (!ieee80211_hw_check(&local->hw, TX_AMSDU)) in ieee80211_amsdu_aggregate()
3300 int hw_headroom = sdata->local->hw.extra_tx_headroom; in ieee80211_xmit_fast()
3388 if (!ieee80211_hw_check(&local->hw, HAS_RATE_CONTROL)) { in ieee80211_xmit_fast()
3416 struct sk_buff *ieee80211_tx_dequeue(struct ieee80211_hw *hw, in ieee80211_tx_dequeue() argument
3419 struct ieee80211_local *local = hw_to_local(hw); in ieee80211_tx_dequeue()
3470 ieee80211_free_txskb(&local->hw, skb); in ieee80211_tx_dequeue()
3481 ieee80211_free_txskb(&local->hw, skb); in ieee80211_tx_dequeue()
3512 !ieee80211_hw_check(&local->hw, TX_FRAG_LIST)) { in ieee80211_tx_dequeue()
3514 ieee80211_free_txskb(&local->hw, skb); in ieee80211_tx_dequeue()
3530 } else if (ieee80211_hw_check(&local->hw, QUEUE_CONTROL)) { in ieee80211_tx_dequeue()
3531 ieee80211_free_txskb(&local->hw, skb); in ieee80211_tx_dequeue()
3814 for (i = 0; i < local->hw.queues; i++) { in ieee80211_clear_tx_pending()
3816 ieee80211_free_txskb(&local->hw, skb); in ieee80211_clear_tx_pending()
3873 for (i = 0; i < local->hw.queues; i++) { in ieee80211_tx_pending()
3887 ieee80211_free_txskb(&local->hw, skb); in ieee80211_tx_pending()
4141 __ieee80211_beacon_get(struct ieee80211_hw *hw, in __ieee80211_beacon_get() argument
4146 struct ieee80211_local *local = hw_to_local(hw); in __ieee80211_beacon_get()
4186 local->hw.extra_beacon_tailroom); in __ieee80211_beacon_get()
4225 local->hw.extra_beacon_tailroom); in __ieee80211_beacon_get()
4260 local->hw.extra_beacon_tailroom); in __ieee80211_beacon_get()
4301 txrc.hw = hw; in __ieee80211_beacon_get()
4302 txrc.sband = local->hw.wiphy->bands[band]; in __ieee80211_beacon_get()
4322 ieee80211_beacon_get_template(struct ieee80211_hw *hw, in ieee80211_beacon_get_template() argument
4326 return __ieee80211_beacon_get(hw, vif, offs, true); in ieee80211_beacon_get_template()
4330 struct sk_buff *ieee80211_beacon_get_tim(struct ieee80211_hw *hw, in ieee80211_beacon_get_tim() argument
4335 struct sk_buff *bcn = __ieee80211_beacon_get(hw, vif, &offs, false); in ieee80211_beacon_get_tim()
4349 if (ieee80211_hw_check(hw, BEACON_TX_STATUS) || in ieee80211_beacon_get_tim()
4350 !hw_to_local(hw)->monitors) in ieee80211_beacon_get_tim()
4363 ieee80211_tx_monitor(hw_to_local(hw), copy, sband, 1, shift, false); in ieee80211_beacon_get_tim()
4369 struct sk_buff *ieee80211_proberesp_get(struct ieee80211_hw *hw, in ieee80211_proberesp_get() argument
4403 struct sk_buff *ieee80211_pspoll_get(struct ieee80211_hw *hw, in ieee80211_pspoll_get() argument
4419 skb = dev_alloc_skb(local->hw.extra_tx_headroom + sizeof(*pspoll)); in ieee80211_pspoll_get()
4423 skb_reserve(skb, local->hw.extra_tx_headroom); in ieee80211_pspoll_get()
4440 struct sk_buff *ieee80211_nullfunc_get(struct ieee80211_hw *hw, in ieee80211_nullfunc_get() argument
4467 skb = dev_alloc_skb(local->hw.extra_tx_headroom + in ieee80211_nullfunc_get()
4472 skb_reserve(skb, local->hw.extra_tx_headroom); in ieee80211_nullfunc_get()
4499 struct sk_buff *ieee80211_probereq_get(struct ieee80211_hw *hw, in ieee80211_probereq_get() argument
4504 struct ieee80211_local *local = hw_to_local(hw); in ieee80211_probereq_get()
4512 skb = dev_alloc_skb(local->hw.extra_tx_headroom + sizeof(*hdr) + in ieee80211_probereq_get()
4517 skb_reserve(skb, local->hw.extra_tx_headroom); in ieee80211_probereq_get()
4537 void ieee80211_rts_get(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in ieee80211_rts_get() argument
4546 rts->duration = ieee80211_rts_duration(hw, vif, frame_len, in ieee80211_rts_get()
4553 void ieee80211_ctstoself_get(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in ieee80211_ctstoself_get() argument
4562 cts->duration = ieee80211_ctstoself_duration(hw, vif, in ieee80211_ctstoself_get()
4569 ieee80211_get_buffered_bc(struct ieee80211_hw *hw, in ieee80211_get_buffered_bc() argument
4572 struct ieee80211_local *local = hw_to_local(hw); in ieee80211_get_buffered_bc()
4625 ieee80211_free_txskb(hw, skb); in ieee80211_get_buffered_bc()
4683 if (ieee80211_hw_check(&local->hw, AMPDU_AGGREGATION)) { in ieee80211_reserve_tid()
4697 if (ieee80211_hw_check(&local->hw, AMPDU_AGGREGATION)) in ieee80211_reserve_tid()