Lines Matching refs:ieee80211_hw
3019 struct ieee80211_hw { struct
3058 static inline bool _ieee80211_hw_check(struct ieee80211_hw *hw, in _ieee80211_hw_check() argument
3065 static inline void _ieee80211_hw_set(struct ieee80211_hw *hw, in _ieee80211_hw_set()
3123 struct ieee80211_hw *wiphy_to_ieee80211_hw(struct wiphy *wiphy);
3131 static inline void SET_IEEE80211_DEV(struct ieee80211_hw *hw, struct device *dev) in SET_IEEE80211_DEV()
3142 static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, const u8 *addr) in SET_IEEE80211_PERM_ADDR()
3148 ieee80211_get_tx_rate(const struct ieee80211_hw *hw, in ieee80211_get_tx_rate()
3157 ieee80211_get_rts_cts_rate(const struct ieee80211_hw *hw, in ieee80211_get_rts_cts_rate()
3166 ieee80211_get_alt_retry_rate(const struct ieee80211_hw *hw, in ieee80211_get_alt_retry_rate()
3182 void ieee80211_free_txskb(struct ieee80211_hw *hw, struct sk_buff *skb);
3194 void ieee80211_purge_tx_queue(struct ieee80211_hw *hw,
4449 void (*tx)(struct ieee80211_hw *hw,
4452 int (*start)(struct ieee80211_hw *hw);
4453 void (*stop)(struct ieee80211_hw *hw, bool suspend);
4455 int (*suspend)(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan);
4456 int (*resume)(struct ieee80211_hw *hw);
4457 void (*set_wakeup)(struct ieee80211_hw *hw, bool enabled);
4459 int (*add_interface)(struct ieee80211_hw *hw,
4461 int (*change_interface)(struct ieee80211_hw *hw,
4464 void (*remove_interface)(struct ieee80211_hw *hw,
4466 int (*config)(struct ieee80211_hw *hw, u32 changed);
4467 void (*bss_info_changed)(struct ieee80211_hw *hw,
4471 void (*vif_cfg_changed)(struct ieee80211_hw *hw,
4474 void (*link_info_changed)(struct ieee80211_hw *hw,
4479 int (*start_ap)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4481 void (*stop_ap)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4484 u64 (*prepare_multicast)(struct ieee80211_hw *hw,
4486 void (*configure_filter)(struct ieee80211_hw *hw,
4490 void (*config_iface_filter)(struct ieee80211_hw *hw,
4494 int (*set_tim)(struct ieee80211_hw *hw, struct ieee80211_sta *sta,
4496 int (*set_key)(struct ieee80211_hw *hw, enum set_key_cmd cmd,
4499 void (*update_tkip_key)(struct ieee80211_hw *hw,
4504 void (*set_rekey_data)(struct ieee80211_hw *hw,
4507 void (*set_default_unicast_key)(struct ieee80211_hw *hw,
4509 int (*hw_scan)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4511 void (*cancel_hw_scan)(struct ieee80211_hw *hw,
4513 int (*sched_scan_start)(struct ieee80211_hw *hw,
4517 int (*sched_scan_stop)(struct ieee80211_hw *hw,
4519 void (*sw_scan_start)(struct ieee80211_hw *hw,
4522 void (*sw_scan_complete)(struct ieee80211_hw *hw,
4524 int (*get_stats)(struct ieee80211_hw *hw,
4526 void (*get_key_seq)(struct ieee80211_hw *hw,
4529 int (*set_frag_threshold)(struct ieee80211_hw *hw, u32 value);
4530 int (*set_rts_threshold)(struct ieee80211_hw *hw, u32 value);
4531 int (*sta_add)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4533 int (*sta_remove)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4536 void (*vif_add_debugfs)(struct ieee80211_hw *hw,
4538 void (*link_add_debugfs)(struct ieee80211_hw *hw,
4542 void (*sta_add_debugfs)(struct ieee80211_hw *hw,
4546 void (*link_sta_add_debugfs)(struct ieee80211_hw *hw,
4551 void (*sta_notify)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4553 int (*sta_set_txpwr)(struct ieee80211_hw *hw,
4556 int (*sta_state)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4560 void (*sta_pre_rcu_remove)(struct ieee80211_hw *hw,
4563 void (*sta_rc_update)(struct ieee80211_hw *hw,
4567 void (*sta_rate_tbl_update)(struct ieee80211_hw *hw,
4570 void (*sta_statistics)(struct ieee80211_hw *hw,
4574 int (*conf_tx)(struct ieee80211_hw *hw,
4578 u64 (*get_tsf)(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
4579 void (*set_tsf)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4581 void (*offset_tsf)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4583 void (*reset_tsf)(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
4584 int (*tx_last_beacon)(struct ieee80211_hw *hw);
4617 int (*ampdu_action)(struct ieee80211_hw *hw,
4620 int (*get_survey)(struct ieee80211_hw *hw, int idx,
4622 void (*rfkill_poll)(struct ieee80211_hw *hw);
4623 void (*set_coverage_class)(struct ieee80211_hw *hw, s16 coverage_class);
4625 int (*testmode_cmd)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4627 int (*testmode_dump)(struct ieee80211_hw *hw, struct sk_buff *skb,
4631 void (*flush)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4633 void (*flush_sta)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4635 void (*channel_switch)(struct ieee80211_hw *hw,
4638 int (*set_antenna)(struct ieee80211_hw *hw, u32 tx_ant, u32 rx_ant);
4639 int (*get_antenna)(struct ieee80211_hw *hw, u32 *tx_ant, u32 *rx_ant);
4641 int (*remain_on_channel)(struct ieee80211_hw *hw,
4646 int (*cancel_remain_on_channel)(struct ieee80211_hw *hw,
4648 int (*set_ringparam)(struct ieee80211_hw *hw, u32 tx, u32 rx);
4649 void (*get_ringparam)(struct ieee80211_hw *hw,
4651 bool (*tx_frames_pending)(struct ieee80211_hw *hw);
4652 int (*set_bitrate_mask)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4654 void (*event_callback)(struct ieee80211_hw *hw,
4658 void (*allow_buffered_frames)(struct ieee80211_hw *hw,
4663 void (*release_buffered_frames)(struct ieee80211_hw *hw,
4669 int (*get_et_sset_count)(struct ieee80211_hw *hw,
4671 void (*get_et_stats)(struct ieee80211_hw *hw,
4674 void (*get_et_strings)(struct ieee80211_hw *hw,
4678 void (*mgd_prepare_tx)(struct ieee80211_hw *hw,
4681 void (*mgd_complete_tx)(struct ieee80211_hw *hw,
4685 void (*mgd_protect_tdls_discover)(struct ieee80211_hw *hw,
4689 int (*add_chanctx)(struct ieee80211_hw *hw,
4691 void (*remove_chanctx)(struct ieee80211_hw *hw,
4693 void (*change_chanctx)(struct ieee80211_hw *hw,
4696 int (*assign_vif_chanctx)(struct ieee80211_hw *hw,
4700 void (*unassign_vif_chanctx)(struct ieee80211_hw *hw,
4704 int (*switch_vif_chanctx)(struct ieee80211_hw *hw,
4709 void (*reconfig_complete)(struct ieee80211_hw *hw,
4713 void (*ipv6_addr_change)(struct ieee80211_hw *hw,
4717 void (*channel_switch_beacon)(struct ieee80211_hw *hw,
4720 int (*pre_channel_switch)(struct ieee80211_hw *hw,
4724 int (*post_channel_switch)(struct ieee80211_hw *hw,
4727 void (*abort_channel_switch)(struct ieee80211_hw *hw,
4730 void (*channel_switch_rx_beacon)(struct ieee80211_hw *hw,
4734 int (*join_ibss)(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
4735 void (*leave_ibss)(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
4736 u32 (*get_expected_throughput)(struct ieee80211_hw *hw,
4738 int (*get_txpower)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4741 int (*tdls_channel_switch)(struct ieee80211_hw *hw,
4746 void (*tdls_cancel_channel_switch)(struct ieee80211_hw *hw,
4749 void (*tdls_recv_channel_switch)(struct ieee80211_hw *hw,
4753 void (*wake_tx_queue)(struct ieee80211_hw *hw,
4755 void (*sync_rx_queues)(struct ieee80211_hw *hw);
4757 int (*start_nan)(struct ieee80211_hw *hw,
4760 int (*stop_nan)(struct ieee80211_hw *hw,
4762 int (*nan_change_conf)(struct ieee80211_hw *hw,
4765 int (*add_nan_func)(struct ieee80211_hw *hw,
4768 void (*del_nan_func)(struct ieee80211_hw *hw,
4771 bool (*can_aggregate_in_amsdu)(struct ieee80211_hw *hw,
4774 int (*get_ftm_responder_stats)(struct ieee80211_hw *hw,
4777 int (*start_pmsr)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4779 void (*abort_pmsr)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4781 int (*set_tid_config)(struct ieee80211_hw *hw,
4785 int (*reset_tid_config)(struct ieee80211_hw *hw,
4788 void (*update_vif_offload)(struct ieee80211_hw *hw,
4790 void (*sta_set_4addr)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4792 int (*set_sar_specs)(struct ieee80211_hw *hw,
4794 void (*sta_set_decap_offload)(struct ieee80211_hw *hw,
4797 void (*add_twt_setup)(struct ieee80211_hw *hw,
4800 void (*twt_teardown_request)(struct ieee80211_hw *hw,
4802 int (*set_radar_background)(struct ieee80211_hw *hw,
4804 int (*net_fill_forward_path)(struct ieee80211_hw *hw,
4809 bool (*can_activate_links)(struct ieee80211_hw *hw,
4812 int (*change_vif_links)(struct ieee80211_hw *hw,
4816 int (*change_sta_links)(struct ieee80211_hw *hw,
4820 int (*set_hw_timestamp)(struct ieee80211_hw *hw,
4823 int (*net_setup_tc)(struct ieee80211_hw *hw,
4829 (*can_neg_ttlm)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4849 struct ieee80211_hw *ieee80211_alloc_hw_nm(size_t priv_data_len,
4868 struct ieee80211_hw *ieee80211_alloc_hw(size_t priv_data_len, in ieee80211_alloc_hw()
4885 int ieee80211_register_hw(struct ieee80211_hw *hw);
4912 const char *__ieee80211_get_tx_led_name(struct ieee80211_hw *hw);
4913 const char *__ieee80211_get_rx_led_name(struct ieee80211_hw *hw);
4914 const char *__ieee80211_get_assoc_led_name(struct ieee80211_hw *hw);
4915 const char *__ieee80211_get_radio_led_name(struct ieee80211_hw *hw);
4917 __ieee80211_create_tpt_led_trigger(struct ieee80211_hw *hw,
4934 static inline const char *ieee80211_get_tx_led_name(struct ieee80211_hw *hw) in ieee80211_get_tx_led_name()
4955 static inline const char *ieee80211_get_rx_led_name(struct ieee80211_hw *hw) in ieee80211_get_rx_led_name()
4976 static inline const char *ieee80211_get_assoc_led_name(struct ieee80211_hw *hw) in ieee80211_get_assoc_led_name()
4997 static inline const char *ieee80211_get_radio_led_name(struct ieee80211_hw *hw) in ieee80211_get_radio_led_name()
5019 ieee80211_create_tpt_led_trigger(struct ieee80211_hw *hw, unsigned int flags, in ieee80211_create_tpt_led_trigger()
5039 void ieee80211_unregister_hw(struct ieee80211_hw *hw);
5050 void ieee80211_free_hw(struct ieee80211_hw *hw);
5064 void ieee80211_restart_hw(struct ieee80211_hw *hw);
5088 void ieee80211_rx_list(struct ieee80211_hw *hw, struct ieee80211_sta *sta,
5113 void ieee80211_rx_napi(struct ieee80211_hw *hw, struct ieee80211_sta *sta,
5136 static inline void ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb) in ieee80211_rx()
5154 void ieee80211_rx_irqsafe(struct ieee80211_hw *hw, struct sk_buff *skb);
5169 static inline void ieee80211_rx_ni(struct ieee80211_hw *hw, in ieee80211_rx_ni()
5335 void ieee80211_tx_rate_update(struct ieee80211_hw *hw,
5355 void ieee80211_tx_status_skb(struct ieee80211_hw *hw,
5372 void ieee80211_tx_status_ext(struct ieee80211_hw *hw,
5391 static inline void ieee80211_tx_status_noskb(struct ieee80211_hw *hw, in ieee80211_tx_status_noskb()
5415 static inline void ieee80211_tx_status_ni(struct ieee80211_hw *hw, in ieee80211_tx_status_ni()
5435 void ieee80211_tx_status_irqsafe(struct ieee80211_hw *hw,
5490 ieee80211_beacon_get_template(struct ieee80211_hw *hw,
5511 ieee80211_beacon_get_template_ema_index(struct ieee80211_hw *hw,
5550 ieee80211_beacon_get_template_ema_list(struct ieee80211_hw *hw,
5587 struct sk_buff *ieee80211_beacon_get_tim(struct ieee80211_hw *hw,
5603 static inline struct sk_buff *ieee80211_beacon_get(struct ieee80211_hw *hw, in ieee80211_beacon_get()
5683 struct sk_buff *ieee80211_proberesp_get(struct ieee80211_hw *hw,
5700 struct sk_buff *ieee80211_pspoll_get(struct ieee80211_hw *hw,
5725 struct sk_buff *ieee80211_nullfunc_get(struct ieee80211_hw *hw,
5742 struct sk_buff *ieee80211_probereq_get(struct ieee80211_hw *hw,
5761 void ieee80211_rts_get(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
5779 __le16 ieee80211_rts_duration(struct ieee80211_hw *hw,
5797 void ieee80211_ctstoself_get(struct ieee80211_hw *hw,
5816 __le16 ieee80211_ctstoself_duration(struct ieee80211_hw *hw,
5834 __le16 ieee80211_generic_frame_duration(struct ieee80211_hw *hw,
5862 ieee80211_get_buffered_bc(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
6063 void ieee80211_wake_queue(struct ieee80211_hw *hw, int queue);
6072 void ieee80211_stop_queue(struct ieee80211_hw *hw, int queue);
6084 int ieee80211_queue_stopped(struct ieee80211_hw *hw, int queue);
6092 void ieee80211_stop_queues(struct ieee80211_hw *hw);
6100 void ieee80211_wake_queues(struct ieee80211_hw *hw);
6113 void ieee80211_scan_completed(struct ieee80211_hw *hw,
6124 void ieee80211_sched_scan_results(struct ieee80211_hw *hw);
6136 void ieee80211_sched_scan_stopped(struct ieee80211_hw *hw);
6172 void ieee80211_iterate_interfaces(struct ieee80211_hw *hw, u32 iter_flags,
6193 ieee80211_iterate_active_interfaces(struct ieee80211_hw *hw, u32 iter_flags, in ieee80211_iterate_active_interfaces()
6217 void ieee80211_iterate_active_interfaces_atomic(struct ieee80211_hw *hw,
6236 void ieee80211_iterate_active_interfaces_mtx(struct ieee80211_hw *hw,
6255 void ieee80211_iterate_stations_atomic(struct ieee80211_hw *hw,
6272 void ieee80211_iterate_stations_mtx(struct ieee80211_hw *hw,
6286 void ieee80211_queue_work(struct ieee80211_hw *hw, struct work_struct *work);
6298 void ieee80211_queue_delayed_work(struct ieee80211_hw *hw,
6406 struct ieee80211_sta *ieee80211_find_sta_by_ifaddr(struct ieee80211_hw *hw,
6423 ieee80211_find_sta_by_link_addrs(struct ieee80211_hw *hw,
6457 void ieee80211_sta_block_awake(struct ieee80211_hw *hw,
6554 ieee80211_txq_airtime_check(struct ieee80211_hw *hw, struct ieee80211_txq *txq);
6574 void ieee80211_iter_keys(struct ieee80211_hw *hw,
6576 void (*iter)(struct ieee80211_hw *hw,
6598 void ieee80211_iter_keys_rcu(struct ieee80211_hw *hw,
6600 void (*iter)(struct ieee80211_hw *hw,
6627 struct ieee80211_hw *hw,
6628 void (*iter)(struct ieee80211_hw *hw,
6647 struct sk_buff *ieee80211_ap_probereq_get(struct ieee80211_hw *hw,
6754 void ieee80211_radar_detected(struct ieee80211_hw *hw,
6799 void ieee80211_ready_on_channel(struct ieee80211_hw *hw);
6805 void ieee80211_remain_on_channel_expired(struct ieee80211_hw *hw);
6946 struct ieee80211_hw *hw;
6979 void *(*alloc)(struct ieee80211_hw *hw);
6980 void (*add_debugfs)(struct ieee80211_hw *hw, void *priv,
7060 int rate_control_set_rates(struct ieee80211_hw *hw,
7223 bool ieee80211_tx_prepare_skb(struct ieee80211_hw *hw,
7361 struct sk_buff *ieee80211_tx_dequeue(struct ieee80211_hw *hw,
7377 static inline struct sk_buff *ieee80211_tx_dequeue_ni(struct ieee80211_hw *hw, in ieee80211_tx_dequeue_ni()
7398 void ieee80211_handle_wake_tx_queue(struct ieee80211_hw *hw,
7411 struct ieee80211_txq *ieee80211_next_txq(struct ieee80211_hw *hw, u8 ac);
7422 void ieee80211_txq_schedule_start(struct ieee80211_hw *hw, u8 ac);
7425 static inline void ieee80211_txq_schedule_end(struct ieee80211_hw *hw, u8 ac) in ieee80211_txq_schedule_end()
7429 void __ieee80211_schedule_txq(struct ieee80211_hw *hw,
7445 ieee80211_schedule_txq(struct ieee80211_hw *hw, struct ieee80211_txq *txq) in ieee80211_schedule_txq()
7461 ieee80211_return_txq(struct ieee80211_hw *hw, struct ieee80211_txq *txq, in ieee80211_return_txq()
7493 bool ieee80211_txq_may_transmit(struct ieee80211_hw *hw,
7555 u32 ieee80211_calc_rx_airtime(struct ieee80211_hw *hw,
7571 u32 ieee80211_calc_tx_airtime(struct ieee80211_hw *hw,
7583 struct sk_buff *ieee80211_get_fils_discovery_tmpl(struct ieee80211_hw *hw,
7597 ieee80211_get_unsol_bcast_probe_resp_tmpl(struct ieee80211_hw *hw,
7685 int ieee80211_emulate_add_chanctx(struct ieee80211_hw *hw,
7687 void ieee80211_emulate_remove_chanctx(struct ieee80211_hw *hw,
7689 void ieee80211_emulate_change_chanctx(struct ieee80211_hw *hw,
7692 int ieee80211_emulate_switch_vif_chanctx(struct ieee80211_hw *hw,