Lines Matching refs:local
41 static struct sk_buff *remove_monitor_info(struct ieee80211_local *local, in remove_monitor_info() argument
45 if (local->hw.flags & IEEE80211_HW_RX_INCLUDES_FCS) { in remove_monitor_info()
86 ieee80211_rx_radiotap_hdrlen(struct ieee80211_local *local, in ieee80211_rx_radiotap_hdrlen() argument
103 if (local->hw.flags & IEEE80211_HW_SIGNAL_DBM) in ieee80211_rx_radiotap_hdrlen()
155 ieee80211_add_rx_radiotap_header(struct ieee80211_local *local, in ieee80211_add_rx_radiotap_header() argument
178 if (!(has_fcs && (local->hw.flags & IEEE80211_HW_RX_INCLUDES_FCS))) in ieee80211_add_rx_radiotap_header()
224 ieee80211_calculate_rx_timestamp(local, status, in ieee80211_add_rx_radiotap_header()
232 if (has_fcs && (local->hw.flags & IEEE80211_HW_RX_INCLUDES_FCS)) in ieee80211_add_rx_radiotap_header()
282 if (local->hw.flags & IEEE80211_HW_SIGNAL_DBM && in ieee80211_add_rx_radiotap_header()
313 *pos++ = local->hw.radiotap_mcs_details; in ieee80211_add_rx_radiotap_header()
361 u16 known = local->hw.radiotap_vht_details; in ieee80211_add_rx_radiotap_header()
425 ieee80211_rx_monitor(struct ieee80211_local *local, struct sk_buff *origskb, in ieee80211_rx_monitor() argument
451 if (local->hw.flags & IEEE80211_HW_RX_INCLUDES_FCS) in ieee80211_rx_monitor()
460 if (!local->monitors) { in ieee80211_rx_monitor()
467 return remove_monitor_info(local, origskb, rtap_vendor_space); in ieee80211_rx_monitor()
471 rt_hdrlen = ieee80211_rx_radiotap_hdrlen(local, status, origskb); in ieee80211_rx_monitor()
498 origskb = remove_monitor_info(local, origskb, in ieee80211_rx_monitor()
506 ieee80211_add_rx_radiotap_header(local, skb, rate, rt_hdrlen, true); in ieee80211_rx_monitor()
513 list_for_each_entry_rcu(sdata, &local->interfaces, list) { in ieee80211_rx_monitor()
982 struct ieee80211_local *local = rx->local; in ieee80211_rx_reorder_ampdu() local
1034 ieee80211_queue_work(&local->hw, &rx->sdata->work); in ieee80211_rx_reorder_ampdu()
1077 rx->local->dot11FrameDuplicateCount++; in ieee80211_rx_h_check_dup()
1095 I802_DEBUG_INC(rx->local->rx_handlers_drop_short); in ieee80211_rx_h_check()
1153 struct ieee80211_local *local; in ieee80211_rx_h_check_more_data() local
1157 local = rx->local; in ieee80211_rx_h_check_more_data()
1161 if (!local->pspolling) in ieee80211_rx_h_check_more_data()
1173 local->pspolling = false; in ieee80211_rx_h_check_more_data()
1178 ieee80211_send_pspoll(local, rx->sdata); in ieee80211_rx_h_check_more_data()
1186 struct ieee80211_local *local = sdata->local; in sta_ps_start() local
1198 if (!(local->hw.flags & IEEE80211_HW_AP_LINK_PS)) in sta_ps_start()
1199 drv_sta_notify(local, sdata, STA_NOTIFY_SLEEP, &sta->sta); in sta_ps_start()
1244 WARN_ON(!(sta_inf->local->hw.flags & IEEE80211_HW_AP_LINK_PS)); in ieee80211_sta_ps_transition()
1280 if (sdata->local->hw.flags & IEEE80211_HW_AP_LINK_PS) in ieee80211_rx_h_uapsd_and_pspoll()
1419 if (!(sta->local->hw.flags & IEEE80211_HW_AP_LINK_PS) && in ieee80211_rx_h_sta_process()
1449 I802_DEBUG_INC(rx->local->rx_handlers_drop_nullfunc); in ieee80211_rx_h_sta_process()
1798 rx->local->dot11MulticastReceivedFrameCount++; in ieee80211_rx_h_defragment()
1805 I802_DEBUG_INC(rx->local->rx_handlers_fragments); in ieee80211_rx_h_defragment()
1855 I802_DEBUG_INC(rx->local->rx_handlers_drop_defrag); in ieee80211_rx_h_defragment()
1899 I802_DEBUG_INC(rx->local->rx_expand_skb_head2); in ieee80211_rx_h_defragment()
1902 I802_DEBUG_INC(rx->local->rx_handlers_drop_defrag); in ieee80211_rx_h_defragment()
1917 ieee80211_led_rx(rx->local); in ieee80211_rx_h_defragment()
2143 rx->local->napi) in ieee80211_deliver_skb()
2144 napi_gro_receive(rx->local->napi, skb); in ieee80211_deliver_skb()
2202 rx->local->hw.extra_tx_headroom, true); in ieee80211_rx_h_amsdu()
2226 struct ieee80211_local *local = rx->local; in ieee80211_rx_h_mesh_fwding() local
2301 if (ieee80211_queue_stopped(&local->hw, q)) { in ieee80211_rx_h_mesh_fwding()
2349 ieee80211_add_pending_skb(local, fwd_skb); in ieee80211_rx_h_mesh_fwding()
2363 struct ieee80211_local *local = rx->local; in ieee80211_rx_h_data() local
2418 ieee80211_queue_work(&rx->local->hw, &sdata->work); in ieee80211_rx_h_data()
2436 if (local->ps_sdata && local->hw.conf.dynamic_ps_timeout > 0 && in ieee80211_rx_h_data()
2439 (!local->scanning && in ieee80211_rx_h_data()
2441 mod_timer(&local->dynamic_ps_timer, jiffies + in ieee80211_rx_h_data()
2442 msecs_to_jiffies(local->hw.conf.dynamic_ps_timeout)); in ieee80211_rx_h_data()
2509 struct ieee80211_local *local = sdata->local; in ieee80211_process_sa_query_req() local
2529 skb = dev_alloc_skb(sizeof(*resp) + local->hw.extra_tx_headroom); in ieee80211_process_sa_query_req()
2533 skb_reserve(skb, local->hw.extra_tx_headroom); in ieee80211_process_sa_query_req()
2573 if (rx->local->hw.flags & IEEE80211_HW_SIGNAL_DBM) in ieee80211_rx_h_mgmt_check()
2576 cfg80211_report_obss_beacon(rx->local->hw.wiphy, in ieee80211_rx_h_mgmt_check()
2594 struct ieee80211_local *local = rx->local; in ieee80211_rx_h_action() local
2657 sband = rx->local->hw.wiphy->bands[status->band]; in ieee80211_rx_h_action()
2659 rate_control_rate_update(local, sband, rx->sta, in ieee80211_rx_h_action()
2686 sband = rx->local->hw.wiphy->bands[status->band]; in ieee80211_rx_h_action()
2688 rate_control_rate_update(local, sband, rx->sta, in ieee80211_rx_h_action()
2887 ieee80211_queue_work(&local->hw, &sdata->work); in ieee80211_rx_h_action()
2910 if (rx->local->hw.flags & IEEE80211_HW_SIGNAL_DBM) in ieee80211_rx_h_userspace_mgmt()
2927 struct ieee80211_local *local = rx->local; in ieee80211_rx_h_action_return() local
2958 nskb = skb_copy_expand(rx->skb, local->hw.extra_tx_headroom, 0, in ieee80211_rx_h_action_return()
2975 if (local->hw.flags & IEEE80211_HW_QUEUE_CONTROL) in ieee80211_rx_h_action_return()
2977 local->hw.offchannel_tx_hw_queue; in ieee80211_rx_h_action_return()
3033 ieee80211_queue_work(&rx->local->hw, &sdata->work); in ieee80211_rx_h_mgmt()
3045 struct ieee80211_local *local = rx->local; in ieee80211_rx_cooked_monitor() local
3060 if (!local->cooked_mntrs) in ieee80211_rx_cooked_monitor()
3066 needed_headroom = ieee80211_rx_radiotap_hdrlen(local, status, skb); in ieee80211_rx_cooked_monitor()
3073 ieee80211_add_rx_radiotap_header(local, skb, rate, needed_headroom, in ieee80211_rx_cooked_monitor()
3081 list_for_each_entry_rcu(sdata, &local->interfaces, list) { in ieee80211_rx_cooked_monitor()
3117 I802_DEBUG_INC(rx->sdata->local->rx_handlers_drop); in ieee80211_rx_handlers_result()
3128 sband = rx->local->hw.wiphy->bands[status->band]; in ieee80211_rx_handlers_result()
3137 I802_DEBUG_INC(rx->sdata->local->rx_handlers_drop); in ieee80211_rx_handlers_result()
3143 I802_DEBUG_INC(rx->sdata->local->rx_handlers_queued); in ieee80211_rx_handlers_result()
3167 spin_lock_bh(&rx->local->rx_path_lock); in ieee80211_rx_handlers()
3208 spin_unlock_bh(&rx->local->rx_path_lock); in ieee80211_rx_handlers()
3249 .local = sta->local, in ieee80211_release_reorder_timeout()
3419 struct ieee80211_local *local = rx->local; in ieee80211_prepare_and_rx_handle() local
3434 wiphy_debug(local->hw.wiphy, in ieee80211_prepare_and_rx_handle()
3454 struct ieee80211_local *local = hw_to_local(hw); in __ieee80211_rx_handle_packet() local
3467 rx.local = local; in __ieee80211_rx_handle_packet()
3470 local->dot11ReceivedFragmentCount++; in __ieee80211_rx_handle_packet()
3493 ieee80211_scan_rx(local, skb); in __ieee80211_rx_handle_packet()
3500 tbl = rht_dereference_rcu(local->sta_hash.tbl, &local->sta_hash); in __ieee80211_rx_handle_packet()
3502 for_each_sta_info(local, tbl, hdr->addr2, sta, tmp) { in __ieee80211_rx_handle_packet()
3527 list_for_each_entry_rcu(sdata, &local->interfaces, list) { in __ieee80211_rx_handle_packet()
3571 struct ieee80211_local *local = hw_to_local(hw); in ieee80211_rx() local
3581 sband = local->hw.wiphy->bands[status->band]; in ieee80211_rx()
3592 if (unlikely(local->quiescing || local->suspended)) in ieee80211_rx()
3596 if (unlikely(local->in_reconfig)) in ieee80211_rx()
3603 if (WARN_ON(!local->started)) in ieee80211_rx()
3659 skb = ieee80211_rx_monitor(local, skb, rate); in ieee80211_rx()
3665 ieee80211_tpt_led_trig_rx(local, in ieee80211_rx()
3682 struct ieee80211_local *local = hw_to_local(hw); in ieee80211_rx_irqsafe() local
3687 skb_queue_tail(&local->skb_queue, skb); in ieee80211_rx_irqsafe()
3688 tasklet_schedule(&local->tasklet); in ieee80211_rx_irqsafe()